Tweak logging and some code reformatting.
Add logAndAddLogRec method that logs a string and adds it to LogRecords.
Add loge(s, e)
Add missing javadoc to the logging methods
Reformatted the code.
Change-Id: I42f39e45aae77e5b6968f16b6b83f4804ccb7e73
diff --git a/core/java/com/android/internal/util/StateMachine.java b/core/java/com/android/internal/util/StateMachine.java
index 28fd05f..58d4aa7 100644
--- a/core/java/com/android/internal/util/StateMachine.java
+++ b/core/java/com/android/internal/util/StateMachine.java
@@ -520,7 +520,6 @@
return mDstState;
}
-
/**
* @return the original state that received the message.
*/
@@ -551,7 +550,7 @@
} else {
sb.append(what);
}
- if ( ! TextUtils.isEmpty(mInfo)) {
+ if (!TextUtils.isEmpty(mInfo)) {
sb.append(" ");
sb.append(mInfo);
}
@@ -656,8 +655,7 @@
*
*/
synchronized void add(StateMachine sm, Message msg, String messageInfo, IState state,
- IState orgState,
- IState transToState) {
+ IState orgState, IState transToState) {
mCount += 1;
if (mLogRecVector.size() < mMaxSize) {
mLogRecVector.add(new LogRec(sm, msg, messageInfo, state, orgState, transToState));
@@ -672,7 +670,6 @@
}
}
-
private static class SmHandler extends Handler {
/** The debug flag */
@@ -730,15 +727,13 @@
*/
@Override
public String toString() {
- return "state=" + state.getName() + ",active=" + active
- + ",parent=" + ((parentStateInfo == null) ?
- "null" : parentStateInfo.state.getName());
+ return "state=" + state.getName() + ",active=" + active + ",parent="
+ + ((parentStateInfo == null) ? "null" : parentStateInfo.state.getName());
}
}
/** The map of all of the states in the state machine */
- private HashMap<State, StateInfo> mStateInfo =
- new HashMap<State, StateInfo>();
+ private HashMap<State, StateInfo> mStateInfo = new HashMap<State, StateInfo>();
/** The initial state that will process the first message */
private State mInitialState;
@@ -788,14 +783,14 @@
if (mIsConstructionCompleted) {
/** Normal path */
msgProcessedState = processMsg(msg);
- } else if (!mIsConstructionCompleted &&
- (mMsg.what == SM_INIT_CMD) && (mMsg.obj == mSmHandlerObj)) {
+ } else if (!mIsConstructionCompleted && (mMsg.what == SM_INIT_CMD)
+ && (mMsg.obj == mSmHandlerObj)) {
/** Initial one time path. */
mIsConstructionCompleted = true;
invokeEnterMethods(0);
} else {
- throw new RuntimeException("StateMachine.handleMessage: " +
- "The start method not called, received msg: " + msg);
+ throw new RuntimeException("StateMachine.handleMessage: "
+ + "The start method not called, received msg: " + msg);
}
performTransitions(msgProcessedState, msg);
@@ -830,8 +825,8 @@
}
} else if (recordLogMsg) {
/** Record message */
- mLogRecords.add(mSm, mMsg, mSm.getLogRecString(mMsg), msgProcessedState,
- orgState, mDestState);
+ mLogRecords.add(mSm, mMsg, mSm.getLogRecString(mMsg), msgProcessedState, orgState,
+ mDestState);
}
State destState = mDestState;
@@ -852,7 +847,6 @@
int stateStackEnteringIndex = moveTempStateStackToStateStack();
invokeEnterMethods(stateStackEnteringIndex);
-
/**
* Since we have transitioned to a new state we need to have
* any deferred messages moved to the front of the message queue
@@ -979,7 +973,7 @@
mSm.log("processMsg: " + curStateInfo.state.getName());
}
}
- }
+ }
return (curStateInfo != null) ? curStateInfo.state : null;
}
@@ -988,8 +982,8 @@
* up to the common ancestor state.
*/
private final void invokeExitMethods(StateInfo commonStateInfo) {
- while ((mStateStackTopIndex >= 0) &&
- (mStateStack[mStateStackTopIndex] != commonStateInfo)) {
+ while ((mStateStackTopIndex >= 0)
+ && (mStateStack[mStateStackTopIndex] != commonStateInfo)) {
State curState = mStateStack[mStateStackTopIndex].state;
if (mDbg) mSm.log("invokeExitMethods: " + curState.getName());
curState.exit();
@@ -1019,7 +1013,7 @@
* as the most resent message and end with the oldest
* messages at the front of the queue.
*/
- for (int i = mDeferredMessages.size() - 1; i >= 0; i-- ) {
+ for (int i = mDeferredMessages.size() - 1; i >= 0; i--) {
Message curMsg = mDeferredMessages.get(i);
if (mDbg) mSm.log("moveDeferredMessageAtFrontOfQueue; what=" + curMsg.what);
sendMessageAtFrontOfQueue(curMsg);
@@ -1047,9 +1041,9 @@
mStateStackTopIndex = j - 1;
if (mDbg) {
- mSm.log("moveTempStackToStateStack: X mStateStackTop="
- + mStateStackTopIndex + ",startingIndex=" + startingIndex
- + ",Top=" + mStateStack[mStateStackTopIndex].state.getName());
+ mSm.log("moveTempStackToStateStack: X mStateStackTop=" + mStateStackTopIndex
+ + ",startingIndex=" + startingIndex + ",Top="
+ + mStateStack[mStateStackTopIndex].state.getName());
}
return startingIndex;
}
@@ -1081,7 +1075,7 @@
if (mDbg) {
mSm.log("setupTempStateStackWithStatesToEnter: X mTempStateStackCount="
- + mTempStateStackCount + ",curStateInfo: " + curStateInfo);
+ + mTempStateStackCount + ",curStateInfo: " + curStateInfo);
}
return curStateInfo;
}
@@ -1091,8 +1085,7 @@
*/
private final void setupInitialStateStack() {
if (mDbg) {
- mSm.log("setupInitialStateStack: E mInitialState="
- + mInitialState.getName());
+ mSm.log("setupInitialStateStack: E mInitialState=" + mInitialState.getName());
}
StateInfo curStateInfo = mStateInfo.get(mInitialState);
@@ -1132,8 +1125,8 @@
*/
private final StateInfo addState(State state, State parent) {
if (mDbg) {
- mSm.log("addStateInternal: E state=" + state.getName()
- + ",parent=" + ((parent == null) ? "" : parent.getName()));
+ mSm.log("addStateInternal: E state=" + state.getName() + ",parent="
+ + ((parent == null) ? "" : parent.getName()));
}
StateInfo parentStateInfo = null;
if (parent != null) {
@@ -1150,9 +1143,9 @@
}
// Validate that we aren't adding the same state in two different hierarchies.
- if ((stateInfo.parentStateInfo != null) &&
- (stateInfo.parentStateInfo != parentStateInfo)) {
- throw new RuntimeException("state already added");
+ if ((stateInfo.parentStateInfo != null)
+ && (stateInfo.parentStateInfo != parentStateInfo)) {
+ throw new RuntimeException("state already added");
}
stateInfo.state = state;
stateInfo.parentStateInfo = parentStateInfo;
@@ -1509,8 +1502,7 @@
*
* @return A Message object from the global pool
*/
- public final Message obtainMessage()
- {
+ public final Message obtainMessage() {
return Message.obtain(mSmHandler);
}
@@ -1542,8 +1534,7 @@
* @param obj is assigned to Message.obj.
* @return A Message object from the global pool
*/
- public final Message obtainMessage(int what, Object obj)
- {
+ public final Message obtainMessage(int what, Object obj) {
return Message.obtain(mSmHandler, what, obj);
}
@@ -1561,8 +1552,7 @@
* @param arg2 is assigned to Message.arg2
* @return A Message object from the global pool
*/
- public final Message obtainMessage(int what, int arg1, int arg2)
- {
+ public final Message obtainMessage(int what, int arg1, int arg2) {
return Message.obtain(mSmHandler, what, arg1, arg2);
}
@@ -1581,8 +1571,7 @@
* @param obj is assigned to Message.obj
* @return A Message object from the global pool
*/
- public final Message obtainMessage(int what, int arg1, int arg2, Object obj)
- {
+ public final Message obtainMessage(int what, int arg1, int arg2, Object obj) {
return Message.obtain(mSmHandler, what, arg1, arg2, obj);
}
@@ -1609,7 +1598,7 @@
SmHandler smh = mSmHandler;
if (smh == null) return;
- smh.sendMessage(obtainMessage(what,obj));
+ smh.sendMessage(obtainMessage(what, obj));
}
/**
@@ -1798,34 +1787,84 @@
public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
pw.println(getName() + ":");
pw.println(" total records=" + getLogRecCount());
- for (int i=0; i < getLogRecSize(); i++) {
+ for (int i = 0; i < getLogRecSize(); i++) {
pw.printf(" rec[%d]: %s\n", i, getLogRec(i).toString());
pw.flush();
}
pw.println("curState=" + getCurrentState().getName());
}
+ /**
+ * Log with debug and add to the LogRecords.
+ *
+ * @param s is string log
+ */
+ protected void logAndAddLogRec(String s) {
+ addLogRec(s);
+ log(s);
+ }
+
+ /**
+ * Log with debug
+ *
+ * @param s is string log
+ */
protected void log(String s) {
Log.d(mName, s);
}
- protected void logv(String s) {
- Log.v(mName, s);
- }
-
- protected void logi(String s) {
- Log.i(mName, s);
- }
-
+ /**
+ * Log with debug attribute
+ *
+ * @param s is string log
+ */
protected void logd(String s) {
Log.d(mName, s);
}
+ /**
+ * Log with verbose attribute
+ *
+ * @param s is string log
+ */
+ protected void logv(String s) {
+ Log.v(mName, s);
+ }
+
+ /**
+ * Log with info attribute
+ *
+ * @param s is string log
+ */
+ protected void logi(String s) {
+ Log.i(mName, s);
+ }
+
+ /**
+ * Log with warning attribute
+ *
+ * @param s is string log
+ */
protected void logw(String s) {
Log.w(mName, s);
}
+ /**
+ * Log with error attribute
+ *
+ * @param s is string log
+ */
protected void loge(String s) {
Log.e(mName, s);
}
+
+ /**
+ * Log with error attribute
+ *
+ * @param s is string log
+ * @param e is a Throwable which logs additional information.
+ */
+ protected void loge(String s, Throwable e) {
+ Log.e(mName, s, e);
+ }
}