Add additional sendMessage methods.

To simplify sending messages add sendMessage methods that take
what and obj as parameters.

Change-Id: Ib22d752eb3cb32fe3dfa8dd2e65915acec3e5db6
diff --git a/core/java/com/android/internal/util/HierarchicalStateMachine.java b/core/java/com/android/internal/util/HierarchicalStateMachine.java
index bebf051..7d7f130 100644
--- a/core/java/com/android/internal/util/HierarchicalStateMachine.java
+++ b/core/java/com/android/internal/util/HierarchicalStateMachine.java
@@ -1167,6 +1167,21 @@
         return Message.obtain(mHsmHandler, what, obj);
     }
 
+
+    /**
+     * Enqueue a message to this state machine.
+     */
+    public final void sendMessage(int what) {
+        mHsmHandler.sendMessage(obtainMessage(what));
+    }
+
+    /**
+     * Enqueue a message to this state machine.
+     */
+    public final void sendMessage(int what, Object obj) {
+        mHsmHandler.sendMessage(obtainMessage(what,obj));
+    }
+
     /**
      * Enqueue a message to this state machine.
      */
@@ -1177,6 +1192,20 @@
     /**
      * Enqueue a message to this state machine after a delay.
      */
+    public final void sendMessageDelayed(int what, long delayMillis) {
+        mHsmHandler.sendMessageDelayed(obtainMessage(what), delayMillis);
+    }
+
+    /**
+     * Enqueue a message to this state machine after a delay.
+     */
+    public final void sendMessageDelayed(int what, Object obj, long delayMillis) {
+        mHsmHandler.sendMessageDelayed(obtainMessage(what, obj), delayMillis);
+    }
+
+    /**
+     * Enqueue a message to this state machine after a delay.
+     */
     public final void sendMessageDelayed(Message msg, long delayMillis) {
         mHsmHandler.sendMessageDelayed(msg, delayMillis);
     }
@@ -1185,6 +1214,22 @@
      * Enqueue a message to the front of the queue for this state machine.
      * Protected, may only be called by instances of HierarchicalStateMachine.
      */
+    protected final void sendMessageAtFrontOfQueue(int what, Object obj) {
+        mHsmHandler.sendMessageAtFrontOfQueue(obtainMessage(what, obj));
+    }
+
+    /**
+     * Enqueue a message to the front of the queue for this state machine.
+     * Protected, may only be called by instances of HierarchicalStateMachine.
+     */
+    protected final void sendMessageAtFrontOfQueue(int what) {
+        mHsmHandler.sendMessageAtFrontOfQueue(obtainMessage(what));
+    }
+
+    /**
+     * Enqueue a message to the front of the queue for this state machine.
+     * Protected, may only be called by instances of HierarchicalStateMachine.
+     */
     protected final void sendMessageAtFrontOfQueue(Message msg) {
         mHsmHandler.sendMessageAtFrontOfQueue(msg);
     }
diff --git a/core/tests/coretests/src/android/os/HierarchicalStateMachineTest.java b/core/tests/coretests/src/android/os/HierarchicalStateMachineTest.java
index 20c55c2..c51fecc 100644
--- a/core/tests/coretests/src/android/os/HierarchicalStateMachineTest.java
+++ b/core/tests/coretests/src/android/os/HierarchicalStateMachineTest.java
@@ -109,7 +109,7 @@
         synchronized (smQuitTest) {
             // Send 6 messages
             for (int i = 1; i <= 6; i++) {
-                smQuitTest.sendMessage(smQuitTest.obtainMessage(i));
+                smQuitTest.sendMessage(i);
             }
 
             // First two are ignored
@@ -297,8 +297,8 @@
 
         synchronized (sm1) {
             // Send two messages
-            sm1.sendMessage(sm1.obtainMessage(TEST_CMD_1));
-            sm1.sendMessage(sm1.obtainMessage(TEST_CMD_2));
+            sm1.sendMessage(TEST_CMD_1);
+            sm1.sendMessage(TEST_CMD_2);
 
             try {
                 // wait for the messages to be handled
@@ -402,8 +402,8 @@
 
         synchronized (sm2) {
             // Send two messages
-            sm2.sendMessage(sm2.obtainMessage(TEST_CMD_1));
-            sm2.sendMessage(sm2.obtainMessage(TEST_CMD_2));
+            sm2.sendMessage(TEST_CMD_1);
+            sm2.sendMessage(TEST_CMD_2);
 
             try {
                 // wait for the messages to be handled
@@ -494,8 +494,8 @@
 
         synchronized (sm3) {
             // Send two messages
-            sm3.sendMessage(sm3.obtainMessage(TEST_CMD_1));
-            sm3.sendMessage(sm3.obtainMessage(TEST_CMD_2));
+            sm3.sendMessage(TEST_CMD_1);
+            sm3.sendMessage(TEST_CMD_2);
 
             try {
                 // wait for the messages to be handled
@@ -587,8 +587,8 @@
 
         synchronized (sm4) {
             // Send two messages
-            sm4.sendMessage(sm4.obtainMessage(TEST_CMD_1));
-            sm4.sendMessage(sm4.obtainMessage(TEST_CMD_2));
+            sm4.sendMessage(TEST_CMD_1);
+            sm4.sendMessage(TEST_CMD_2);
 
             try {
                 // wait for the messages to be handled
@@ -861,12 +861,12 @@
 
         synchronized (sm5) {
             // Send 6 messages
-            sm5.sendMessage(sm5.obtainMessage(TEST_CMD_1));
-            sm5.sendMessage(sm5.obtainMessage(TEST_CMD_2));
-            sm5.sendMessage(sm5.obtainMessage(TEST_CMD_3));
-            sm5.sendMessage(sm5.obtainMessage(TEST_CMD_4));
-            sm5.sendMessage(sm5.obtainMessage(TEST_CMD_5));
-            sm5.sendMessage(sm5.obtainMessage(TEST_CMD_6));
+            sm5.sendMessage(TEST_CMD_1);
+            sm5.sendMessage(TEST_CMD_2);
+            sm5.sendMessage(TEST_CMD_3);
+            sm5.sendMessage(TEST_CMD_4);
+            sm5.sendMessage(TEST_CMD_5);
+            sm5.sendMessage(TEST_CMD_6);
 
             try {
                 // wait for the messages to be handled
@@ -950,7 +950,7 @@
         class S1 extends HierarchicalState {
 
             @Override protected void enter() {
-                sendMessage(obtainMessage(TEST_CMD_1));
+                sendMessage(TEST_CMD_1);
             }
 
             @Override protected boolean processMessage(Message message) {
@@ -994,7 +994,7 @@
         synchronized (sm6) {
             // Send a message
             sentTimeMsg2 = SystemClock.elapsedRealtime();
-            sm6.sendMessageDelayed(sm6.obtainMessage(TEST_CMD_2), DELAY_TIME);
+            sm6.sendMessageDelayed(TEST_CMD_2, DELAY_TIME);
 
             try {
                 // wait for the messages to be handled
@@ -1045,7 +1045,7 @@
                 return true;
             }
             @Override protected void exit() {
-                sendMessage(obtainMessage(TEST_CMD_2));
+                sendMessage(TEST_CMD_2);
             }
         }
 
@@ -1053,7 +1053,7 @@
 
             @Override protected void enter() {
                 // Send a delayed message as a watch dog
-                sendMessageDelayed(obtainMessage(TEST_CMD_3), SM7_DELAY_TIME);
+                sendMessageDelayed(TEST_CMD_3, SM7_DELAY_TIME);
             }
 
             @Override protected boolean processMessage(Message message) {
@@ -1103,7 +1103,7 @@
         synchronized (sm7) {
             // Send a message
             sentTimeMsg2 = SystemClock.elapsedRealtime();
-            sm7.sendMessage(sm7.obtainMessage(TEST_CMD_1));
+            sm7.sendMessage(TEST_CMD_1);
 
             try {
                 // wait for the messages to be handled
@@ -1178,7 +1178,7 @@
         synchronized (sm) {
             // Send 2 messages
             for (int i = 1; i <= 2; i++) {
-                sm.sendMessage(sm.obtainMessage(i));
+                sm.sendMessage(i);
             }
 
             try {
@@ -1262,7 +1262,7 @@
             // Send messages to each of the state machines
             for (StateMachineSharedThread sm : sms) {
                 for (int i = 1; i <= 4; i++) {
-                    sm.sendMessage(sm.obtainMessage(i));
+                    sm.sendMessage(i);
                 }
             }
 
@@ -1295,8 +1295,8 @@
         Hsm1 sm = Hsm1.makeHsm1();
 
         // Send messages
-        sm.sendMessage(sm.obtainMessage(Hsm1.CMD_1));
-        sm.sendMessage(sm.obtainMessage(Hsm1.CMD_2));
+        sm.sendMessage(Hsm1.CMD_1);
+        sm.sendMessage(Hsm1.CMD_2);
 
         synchronized (sm) {
             // Wait for the last state machine to notify its done
@@ -1389,7 +1389,7 @@
             switch(message.what) {
             case CMD_2:
                 // CMD_2 will arrive in mS2 before CMD_3
-                sendMessage(obtainMessage(CMD_3));
+                sendMessage(CMD_3);
                 deferMessage(message);
                 transitionTo(mS2);
                 retVal = true;
@@ -1435,7 +1435,7 @@
             Log.d(TAG, "S2.processMessage what=" + message.what);
             switch(message.what) {
             case(CMD_2):
-                sendMessage(obtainMessage(CMD_4));
+                sendMessage(CMD_4);
                 retVal = true;
                 break;
             case(CMD_3):
@@ -1457,7 +1457,7 @@
     class P2 extends HierarchicalState {
         @Override protected void enter() {
             Log.d(TAG, "P2.enter");
-            sendMessage(obtainMessage(CMD_5));
+            sendMessage(CMD_5);
         }
         @Override protected boolean processMessage(Message message) {
             Log.d(TAG, "P2.processMessage what=" + message.what);