Loading core/java/com/android/internal/util/WakeupMessage.java +12 −4 Original line number Diff line number Diff line Loading @@ -45,24 +45,32 @@ public class WakeupMessage implements AlarmManager.OnAlarmListener { protected final String mCmdName; @VisibleForTesting protected final int mCmd, mArg1, mArg2; @VisibleForTesting protected final Object mObj; private boolean mScheduled; public WakeupMessage(Context context, Handler handler, String cmdName, int cmd, int arg1, int arg2) { String cmdName, int cmd, int arg1, int arg2, Object obj) { mAlarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); mHandler = handler; mCmdName = cmdName; mCmd = cmd; mArg1 = arg1; mArg2 = arg2; mObj = obj; } public WakeupMessage(Context context, Handler handler, String cmdName, int cmd, int arg1) { this(context, handler, cmdName, cmd, arg1, 0); this(context, handler, cmdName, cmd, arg1, 0, null); } public WakeupMessage(Context context, Handler handler, String cmdName, int cmd, int arg1, int arg2) { this(context, handler, cmdName, cmd, arg1, arg2, null); } public WakeupMessage(Context context, Handler handler, String cmdName, int cmd) { this(context, handler, cmdName, cmd, 0, 0); this(context, handler, cmdName, cmd, 0, 0, null); } /** Loading Loading @@ -99,7 +107,7 @@ public class WakeupMessage implements AlarmManager.OnAlarmListener { mScheduled = false; } if (stillScheduled) { Message msg = mHandler.obtainMessage(mCmd, mArg1, mArg2); Message msg = mHandler.obtainMessage(mCmd, mArg1, mArg2, mObj); mHandler.handleMessage(msg); msg.recycle(); } Loading core/tests/utiltests/src/com/android/internal/util/WakeupMessageTest.java +3 −1 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ public class WakeupMessageTest { private static final int TEST_CMD = 18; private static final int TEST_ARG1 = 33; private static final int TEST_ARG2 = 182; private static final Object TEST_OBJ = "hello"; @Mock AlarmManager mAlarmManager; WakeupMessage mMessage; Loading Loading @@ -92,7 +93,7 @@ public class WakeupMessageTest { mListenerCaptor.capture(), any(Handler.class)); mMessage = new WakeupMessage(context, mHandler, TEST_CMD_NAME, TEST_CMD, TEST_ARG1, TEST_ARG2); TEST_ARG2, TEST_OBJ); } /** Loading @@ -114,6 +115,7 @@ public class WakeupMessageTest { assertEquals("what", TEST_CMD, mHandler.getLastMessage().what); assertEquals("arg1", TEST_ARG1, mHandler.getLastMessage().arg1); assertEquals("arg2", TEST_ARG2, mHandler.getLastMessage().arg2); assertEquals("obj", TEST_OBJ, mHandler.getLastMessage().obj); } /** Loading Loading
core/java/com/android/internal/util/WakeupMessage.java +12 −4 Original line number Diff line number Diff line Loading @@ -45,24 +45,32 @@ public class WakeupMessage implements AlarmManager.OnAlarmListener { protected final String mCmdName; @VisibleForTesting protected final int mCmd, mArg1, mArg2; @VisibleForTesting protected final Object mObj; private boolean mScheduled; public WakeupMessage(Context context, Handler handler, String cmdName, int cmd, int arg1, int arg2) { String cmdName, int cmd, int arg1, int arg2, Object obj) { mAlarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); mHandler = handler; mCmdName = cmdName; mCmd = cmd; mArg1 = arg1; mArg2 = arg2; mObj = obj; } public WakeupMessage(Context context, Handler handler, String cmdName, int cmd, int arg1) { this(context, handler, cmdName, cmd, arg1, 0); this(context, handler, cmdName, cmd, arg1, 0, null); } public WakeupMessage(Context context, Handler handler, String cmdName, int cmd, int arg1, int arg2) { this(context, handler, cmdName, cmd, arg1, arg2, null); } public WakeupMessage(Context context, Handler handler, String cmdName, int cmd) { this(context, handler, cmdName, cmd, 0, 0); this(context, handler, cmdName, cmd, 0, 0, null); } /** Loading Loading @@ -99,7 +107,7 @@ public class WakeupMessage implements AlarmManager.OnAlarmListener { mScheduled = false; } if (stillScheduled) { Message msg = mHandler.obtainMessage(mCmd, mArg1, mArg2); Message msg = mHandler.obtainMessage(mCmd, mArg1, mArg2, mObj); mHandler.handleMessage(msg); msg.recycle(); } Loading
core/tests/utiltests/src/com/android/internal/util/WakeupMessageTest.java +3 −1 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ public class WakeupMessageTest { private static final int TEST_CMD = 18; private static final int TEST_ARG1 = 33; private static final int TEST_ARG2 = 182; private static final Object TEST_OBJ = "hello"; @Mock AlarmManager mAlarmManager; WakeupMessage mMessage; Loading Loading @@ -92,7 +93,7 @@ public class WakeupMessageTest { mListenerCaptor.capture(), any(Handler.class)); mMessage = new WakeupMessage(context, mHandler, TEST_CMD_NAME, TEST_CMD, TEST_ARG1, TEST_ARG2); TEST_ARG2, TEST_OBJ); } /** Loading @@ -114,6 +115,7 @@ public class WakeupMessageTest { assertEquals("what", TEST_CMD, mHandler.getLastMessage().what); assertEquals("arg1", TEST_ARG1, mHandler.getLastMessage().arg1); assertEquals("arg2", TEST_ARG2, mHandler.getLastMessage().arg2); assertEquals("obj", TEST_OBJ, mHandler.getLastMessage().obj); } /** Loading