Skip to content

Commit

Permalink
Move to v0.5.1 && Update documents
Browse files Browse the repository at this point in the history
  • Loading branch information
renyuneyun committed Dec 26, 2017
2 parents 59a32d3 + bce6571 commit 4ad4296
Show file tree
Hide file tree
Showing 182 changed files with 1,223 additions and 486 deletions.
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
CHANGELOG
======

* v0.5.1: Change a bit of plugins' definition (mainly generify and remove unneeded methods) && Add `HeadsetEventPlugin` && Code clean up
* Add `DataFactory` (and subclasses) to be used as a wrapper of `StorageData` (and subclasses)
* Generify `PluginDef`, `PluginViewFragment`, `DataFactory` (and subclasses) to use their related `StorageData` as the type parameter (so that there is no need to do lots of manual type casting and checking)
* Fix classes using them to satisfy generics
* Add `HeadsetEventPlugin` to listen to headset plug in and plug out
* Remove redundant wrapper (`OperationLoader.load()`)
* Add `ValidData` annotation to describe that the data is "valid"

* v0.5: Add Timer and NFC Event & Set alarm Operation && Fix leaked BroadcastListener && Fix "unsatisfied" not triggered && Better UI for settings page
* Add `TimerEventPlugin` to set a timer which allows delaying for a few time
* Add `NfcTagEventPlugin` to listen to NFC tag being scanned
Expand Down
4 changes: 2 additions & 2 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ android {
applicationId 'ryey.easer'
minSdkVersion 15
targetSdkVersion 23
versionCode 49
versionName "0.5"
versionCode 50
versionName "0.5.1"

vectorDrawables.useSupportLibrary = true

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class BatteryEventDataTest {

@Test
public void testParcel() {
BatteryEventData dummyData = (BatteryEventData) new BatteryEventDataFactory().dummyData();
BatteryEventData dummyData = new BatteryEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
BatteryEventData parceledData = BatteryEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class BTDeviceEventDataTest {

@Test
public void testParcel() {
BTDeviceEventData dummyData = (BTDeviceEventData) new BTDeviceEventDataFactory().dummyData();
BTDeviceEventData dummyData = new BTDeviceEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
BTDeviceEventData parceledData = BTDeviceEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class BroadcastEventDataTest {

@Test
public void testParcel() {
BroadcastEventData dummyData = (BroadcastEventData) new BroadcastEventDataFactory().dummyData();
BroadcastEventData dummyData = new BroadcastEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
BroadcastEventData parceledData = BroadcastEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class CalendarEventDataTest {

@Test
public void testParcel() {
CalendarEventData dummyData = (CalendarEventData) new CalendarEventDataFactory().dummyData();
CalendarEventData dummyData = new CalendarEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
CalendarEventData parceledData = CalendarEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class CellLocationEventDataTest {

@Test
public void testParcel() {
CellLocationEventData dummyData = (CellLocationEventData) new CellLocationEventDataFactory().dummyData();
CellLocationEventData dummyData = new CellLocationEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
CellLocationEventData parceledData = CellLocationEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class ConnectivityEventDataTest {

@Test
public void testParcel() {
ConnectivityEventData dummyData = (ConnectivityEventData) new ConnectivityEventDataFactory().dummyData();
ConnectivityEventData dummyData = new ConnectivityEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
ConnectivityEventData parceledData = ConnectivityEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class DateEventDataTest {

@Test
public void testParcel() {
DateEventData dummyData = (DateEventData) new DateEventDataFactory().dummyData();
DateEventData dummyData = new DateEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
DateEventData parceledData = DateEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class DayOfWeekEventDataTest {

@Test
public void testParcel() {
DayOfWeekEventData dummyData = (DayOfWeekEventData) new DayOfWeekEventDataFactory().dummyData();
DayOfWeekEventData dummyData = new DayOfWeekEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
DayOfWeekEventData parceledData = DayOfWeekEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package ryey.easer.plugins.event.headset;

import android.os.Parcel;

import org.junit.Test;

import ryey.easer.plugins.operation.TestHelper;

import static org.junit.Assert.assertEquals;

public class HeadsetEventDataTest {

@Test
public void testParcel() {
HeadsetEventData dummyData = new HeadsetEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
HeadsetEventData parceledData = HeadsetEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class NfcTagEventDataTest {

@Test
public void testParcel() {
NfcTagEventData dummyData = (NfcTagEventData) new NfcTagEventDataFactory().dummyData();
NfcTagEventData dummyData = new NfcTagEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
NfcTagEventData parceledData = NfcTagEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class NotificationEventDataTest {

@Test
public void testParcel() {
NotificationEventData dummyData = (NotificationEventData) new NotificationEventDataFactory().dummyData();
NotificationEventData dummyData = new NotificationEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
NotificationEventData parceledData = NotificationEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class SmsEventDataTest {

@Test
public void testParcel() {
SmsEventData dummyData = (SmsEventData) new SmsEventDataFactory().dummyData();
SmsEventData dummyData = new SmsEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
SmsEventData parceledData = SmsEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class TimeEventDataTest {

@Test
public void testParcel() {
TimeEventData dummyData = (TimeEventData) new TimeEventDataFactory().dummyData();
TimeEventData dummyData = new TimeEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
TimeEventData parceledData = TimeEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class TimerEventDataTest {

@Test
public void testParcel() {
TimerEventData dummyData = (TimerEventData) new TimerEventDataFactory().dummyData();
TimerEventData dummyData = new TimerEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
TimerEventData parceledData = TimerEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class WifiEventDataTest {

@Test
public void testParcel() {
WifiEventData dummyData = (WifiEventData) new WifiEventDataFactory().dummyData();
WifiEventData dummyData = new WifiEventDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
WifiEventData parceledData = WifiEventData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class AirplaneModeOperationDataTest {

@Test
public void testParcel() {
AirplaneModeOperationData dummyData = (AirplaneModeOperationData) new AirplaneModeOperationDataFactory().dummyData();
AirplaneModeOperationData dummyData = new AirplaneModeOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
AirplaneModeOperationData parceledData = AirplaneModeOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class AlarmOperationDataTest {

@Test
public void testParcel() {
AlarmOperationData dummyData = (AlarmOperationData) new AlarmOperationDataFactory().dummyData();
AlarmOperationData dummyData = new AlarmOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
AlarmOperationData parceledData = AlarmOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class BluetoothOperationDataTest {

@Test
public void testParcel() {
BluetoothOperationData dummyData = (BluetoothOperationData) new BluetoothOperationDataFactory().dummyData();
BluetoothOperationData dummyData = new BluetoothOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
BluetoothOperationData parceledData = BluetoothOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class BrightnessOperationDataTest {

@Test
public void testParcel() {
BrightnessOperationData dummyData = (BrightnessOperationData) new BrightnessOperationDataFactory().dummyData();
BrightnessOperationData dummyData = new BrightnessOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
BrightnessOperationData parceledData = BrightnessOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ public class BroadcastOperationDataTest {

@Test
public void testParcel() {
BroadcastOperationData dummyData = (BroadcastOperationData) new BroadcastOperationDataFactory().dummyData();
BroadcastOperationData dummyData = new BroadcastOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
BroadcastOperationData parceledData = BroadcastOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand All @@ -22,10 +22,10 @@ public void testParcel() {
@Test
public void testSerialize() throws Exception {
BroadcastOperationDataFactory factory = new BroadcastOperationDataFactory();
BroadcastOperationData dummyData = (BroadcastOperationData) factory.dummyData();
BroadcastOperationData dummyData = factory.dummyData();
for (C.Format format : C.Format.values()) {
String serialized_data = dummyData.serialize(format);
BroadcastOperationData parsed_data = (BroadcastOperationData) factory.parse(serialized_data, format, C.VERSION_CURRENT);
BroadcastOperationData parsed_data = factory.parse(serialized_data, format, C.VERSION_CURRENT);
assertEquals(dummyData, parsed_data);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class CellularOperationDataTest {

@Test
public void testParcel() {
CellularOperationData dummyData = (CellularOperationData) new CellularOperationDataFactory().dummyData();
CellularOperationData dummyData = new CellularOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
CellularOperationData parceledData = CellularOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class CommandOperationDataTest {

@Test
public void testParcel() {
CommandOperationData dummyData = (CommandOperationData) new CommandOperationDataFactory().dummyData();
CommandOperationData dummyData = new CommandOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
CommandOperationData parceledData = CommandOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class HotspotOperationDataTest {

@Test
public void testParcel() {
HotspotOperationData dummyData = (HotspotOperationData) new HotspotOperationDataFactory().dummyData();
HotspotOperationData dummyData = new HotspotOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
HotspotOperationData parceledData = HotspotOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class MediaControlOperationDataTest {

@Test
public void testParcel() {
MediaControlOperationData dummyData = (MediaControlOperationData) new MediaControlOperationDataFactory().dummyData();
MediaControlOperationData dummyData = new MediaControlOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
MediaControlOperationData parceledData = MediaControlOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class NetworkTransmissionOperationDataTest {

@Test
public void testParcel() {
NetworkTransmissionOperationData dummyData = (NetworkTransmissionOperationData) new NetworkTransmissionOperationDataFactory().dummyData();
NetworkTransmissionOperationData dummyData = new NetworkTransmissionOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
NetworkTransmissionOperationData parceledData = NetworkTransmissionOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class RingerModeOperationDataTest {

@Test
public void testParcel() {
RingerModeOperationData dummyData = (RingerModeOperationData) new RingerModeOperationDataFactory().dummyData();
RingerModeOperationData dummyData = new RingerModeOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
RingerModeOperationData parceledData = RingerModeOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class RotationOperationDataTest {

@Test
public void testParcel() {
RotationOperationData dummyData = (RotationOperationData) new RotationOperationDataFactory().dummyData();
RotationOperationData dummyData = new RotationOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
RotationOperationData parceledData = RotationOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class SendNotificationOperationDataTest {

@Test
public void testParcel() {
SendNotificationOperationData dummyData = (SendNotificationOperationData) new SendNotificationOperationDataFactory().dummyData();
SendNotificationOperationData dummyData = new SendNotificationOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
SendNotificationOperationData parceledData = SendNotificationOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class SmsOperationDataTest {

@Test
public void testParcel() {
SmsOperationData dummyData = (SmsOperationData) new SendSmsOperationDataFactory().dummyData();
SmsOperationData dummyData = new SendSmsOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
SmsOperationData parceledData = SmsOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class SynchronizationOperationDataTest {

@Test
public void testParcel() {
SynchronizationOperationData dummyData = (SynchronizationOperationData) new SynchronizationOperationDataFactory().dummyData();
SynchronizationOperationData dummyData = new SynchronizationOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
SynchronizationOperationData parceledData = SynchronizationOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public class WifiOperationDataTest {

@Test
public void testParcel() {
WifiOperationData dummyData = (WifiOperationData) new WifiOperationDataFactory().dummyData();
WifiOperationData dummyData = new WifiOperationDataFactory().dummyData();
Parcel parcel = TestHelper.writeToParcel(dummyData);
WifiOperationData parceledData = WifiOperationData.CREATOR.createFromParcel(parcel);
assertEquals(dummyData, parceledData);
Expand Down
9 changes: 9 additions & 0 deletions app/src/main/java/ryey/easer/Utils.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.content.ContextCompat;
import android.widget.CompoundButton;
import android.widget.Toast;

import java.text.ParseException;
Expand Down Expand Up @@ -97,4 +98,12 @@ public static boolean hasPermission(Context context, String permission) {
} else
return true;
}

public static int checkedIndexFirst(CompoundButton[] buttons) {
for (int i = 0; i < buttons.length; i++) {
if (buttons[i].isChecked())
return i;
}
throw new IllegalStateException("At least one button should be checked");
}
}
21 changes: 21 additions & 0 deletions app/src/main/java/ryey/easer/commons/DelayedJob.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package ryey.easer.commons;

import android.support.annotation.IntRange;

public abstract class DelayedJob {
private final int expected_count;
private int current_count = 0;

public DelayedJob(@IntRange(from = 1) int count) {
expected_count = count;
}

public void tick() {
if (++current_count >= expected_count) {
exec();
}
}

public abstract void exec();

}
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ public interface DataFactory<T extends StorageData> {
* Mainly for testing.
* @return dummy data
*/
@ValidData
@NonNull
T dummyData();

Expand All @@ -35,6 +36,7 @@ public interface DataFactory<T extends StorageData> {
* @return The reconstructed data
* @throws IllegalStorageDataException If the {@param data} contains error or can't be recognized
*/
@ValidData
@NonNull
T parse(@NonNull String data, @NonNull C.Format format, int version) throws IllegalStorageDataException;
}
Loading

0 comments on commit 4ad4296

Please sign in to comment.