Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c5987092 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "create library for mainline module"

parents 6ae29f70 a6fb9459
Loading
Loading
Loading
Loading
+21 −0
Original line number Original line Diff line number Diff line
@@ -341,6 +341,27 @@ filegroup {
    ],
    ],
}
}


java_library {
    name: "modules-utils-statemachine",
    srcs: [
        "com/android/internal/util/IState.java",
        "com/android/internal/util/State.java",
        "com/android/internal/util/StateMachine.java",
    ],
    libs: [
        "framework-annotations-lib",
        "unsupportedappusage",
    ],
    sdk_version: "module_current",
    min_sdk_version: "29",

    visibility: ["//visibility:public"],
    apex_available: [
        "//apex_available:anyapex",
        "//apex_available:platform",
    ],
}

filegroup {
filegroup {
    name: "framework-ims-common-shared-srcs",
    name: "framework-ims-common-shared-srcs",
    srcs: [
    srcs: [
+2 −2
Original line number Original line Diff line number Diff line
@@ -27,12 +27,12 @@ import android.os.Message;
public interface IState {
public interface IState {


    /**
    /**
     * Returned by processMessage to indicate the the message was processed.
     * Returned by processMessage to indicate the message was processed.
     */
     */
    static final boolean HANDLED = true;
    static final boolean HANDLED = true;


    /**
    /**
     * Returned by processMessage to indicate the the message was NOT processed.
     * Returned by processMessage to indicate the message was NOT processed.
     */
     */
    static final boolean NOT_HANDLED = false;
    static final boolean NOT_HANDLED = false;


+3 −3
Original line number Original line Diff line number Diff line
@@ -48,7 +48,7 @@ import java.util.Vector;
 * in Object Oriented programming and are used to perform initialization and
 * in Object Oriented programming and are used to perform initialization and
 * cleanup of the state respectively. The <code>getName</code> method returns the
 * cleanup of the state respectively. The <code>getName</code> method returns the
 * name of the state; the default implementation returns the class name. It may be
 * name of the state; the default implementation returns the class name. It may be
 * desirable to have <code>getName</code> return the the state instance name instead,
 * desirable to have <code>getName</code> return the state instance name instead,
 * in particular if a particular state class has multiple instances.</p>
 * in particular if a particular state class has multiple instances.</p>
 *
 *
 * <p>When a state machine is created, <code>addState</code> is used to build the
 * <p>When a state machine is created, <code>addState</code> is used to build the
@@ -433,14 +433,14 @@ public class StateMachine {


    /**
    /**
     * Convenience constant that maybe returned by processMessage
     * Convenience constant that maybe returned by processMessage
     * to indicate the the message was processed and is not to be
     * to indicate the message was processed and is not to be
     * processed by parent states
     * processed by parent states
     */
     */
    public static final boolean HANDLED = true;
    public static final boolean HANDLED = true;


    /**
    /**
     * Convenience constant that maybe returned by processMessage
     * Convenience constant that maybe returned by processMessage
     * to indicate the the message was NOT processed and is to be
     * to indicate the message was NOT processed and is to be
     * processed by parent states
     * processed by parent states
     */
     */
    public static final boolean NOT_HANDLED = false;
    public static final boolean NOT_HANDLED = false;
+39 −39
Original line number Original line Diff line number Diff line
@@ -542,83 +542,83 @@ public class StateMachineTest extends TestCase {
    public void testStateMachineEnterExitTransitionToTest() throws Exception {
    public void testStateMachineEnterExitTransitionToTest() throws Exception {
        //if (WAIT_FOR_DEBUGGER) Debug.waitForDebugger();
        //if (WAIT_FOR_DEBUGGER) Debug.waitForDebugger();


        StateMachineEnterExitTransitionToTest smEnterExitTranstionToTest =
        StateMachineEnterExitTransitionToTest smEnterExitTransitionToTest =
            new StateMachineEnterExitTransitionToTest("smEnterExitTranstionToTest");
                new StateMachineEnterExitTransitionToTest("smEnterExitTransitionToTest");
        smEnterExitTranstionToTest.start();
        smEnterExitTransitionToTest.start();
        if (smEnterExitTranstionToTest.isDbg()) {
        if (smEnterExitTransitionToTest.isDbg()) {
            tlog("testStateMachineEnterExitTransitionToTest E");
            tlog("testStateMachineEnterExitTransitionToTest E");
        }
        }


        synchronized (smEnterExitTranstionToTest) {
        synchronized (smEnterExitTransitionToTest) {
            smEnterExitTranstionToTest.sendMessage(TEST_CMD_1);
            smEnterExitTransitionToTest.sendMessage(TEST_CMD_1);


            try {
            try {
                // wait for the messages to be handled
                // wait for the messages to be handled
                smEnterExitTranstionToTest.wait();
                smEnterExitTransitionToTest.wait();
            } catch (InterruptedException e) {
            } catch (InterruptedException e) {
                tloge("testStateMachineEnterExitTransitionToTest: exception while waiting "
                tloge("testStateMachineEnterExitTransitionToTest: exception while waiting "
                    + e.getMessage());
                    + e.getMessage());
            }
            }
        }
        }


        dumpLogRecs(smEnterExitTranstionToTest);
        dumpLogRecs(smEnterExitTransitionToTest);


        assertEquals(9, smEnterExitTranstionToTest.getLogRecCount());
        assertEquals(9, smEnterExitTransitionToTest.getLogRecCount());
        LogRec lr;
        LogRec lr;


        lr = smEnterExitTranstionToTest.getLogRec(0);
        lr = smEnterExitTransitionToTest.getLogRec(0);
        assertEquals(ENTER, lr.getInfo());
        assertEquals(ENTER, lr.getInfo());
        assertEquals(smEnterExitTranstionToTest.mS1, lr.getState());
        assertEquals(smEnterExitTransitionToTest.mS1, lr.getState());


        lr = smEnterExitTranstionToTest.getLogRec(1);
        lr = smEnterExitTransitionToTest.getLogRec(1);
        assertEquals(EXIT, lr.getInfo());
        assertEquals(EXIT, lr.getInfo());
        assertEquals(smEnterExitTranstionToTest.mS1, lr.getState());
        assertEquals(smEnterExitTransitionToTest.mS1, lr.getState());


        lr = smEnterExitTranstionToTest.getLogRec(2);
        lr = smEnterExitTransitionToTest.getLogRec(2);
        assertEquals(ENTER, lr.getInfo());
        assertEquals(ENTER, lr.getInfo());
        assertEquals(smEnterExitTranstionToTest.mS2, lr.getState());
        assertEquals(smEnterExitTransitionToTest.mS2, lr.getState());


        lr = smEnterExitTranstionToTest.getLogRec(3);
        lr = smEnterExitTransitionToTest.getLogRec(3);
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(smEnterExitTranstionToTest.mS2, lr.getState());
        assertEquals(smEnterExitTransitionToTest.mS2, lr.getState());
        assertEquals(smEnterExitTranstionToTest.mS2, lr.getOriginalState());
        assertEquals(smEnterExitTransitionToTest.mS2, lr.getOriginalState());
        assertEquals(smEnterExitTranstionToTest.mS3, lr.getDestState());
        assertEquals(smEnterExitTransitionToTest.mS3, lr.getDestState());


        lr = smEnterExitTranstionToTest.getLogRec(4);
        lr = smEnterExitTransitionToTest.getLogRec(4);
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(smEnterExitTranstionToTest.mS2, lr.getState());
        assertEquals(smEnterExitTransitionToTest.mS2, lr.getState());
        assertEquals(smEnterExitTranstionToTest.mS2, lr.getOriginalState());
        assertEquals(smEnterExitTransitionToTest.mS2, lr.getOriginalState());
        assertEquals(smEnterExitTranstionToTest.mS4, lr.getDestState());
        assertEquals(smEnterExitTransitionToTest.mS4, lr.getDestState());
        assertEquals(EXIT, lr.getInfo());
        assertEquals(EXIT, lr.getInfo());


        lr = smEnterExitTranstionToTest.getLogRec(5);
        lr = smEnterExitTransitionToTest.getLogRec(5);
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(ENTER, lr.getInfo());
        assertEquals(ENTER, lr.getInfo());
        assertEquals(smEnterExitTranstionToTest.mS3, lr.getState());
        assertEquals(smEnterExitTransitionToTest.mS3, lr.getState());
        assertEquals(smEnterExitTranstionToTest.mS3, lr.getOriginalState());
        assertEquals(smEnterExitTransitionToTest.mS3, lr.getOriginalState());
        assertEquals(smEnterExitTranstionToTest.mS4, lr.getDestState());
        assertEquals(smEnterExitTransitionToTest.mS4, lr.getDestState());


        lr = smEnterExitTranstionToTest.getLogRec(6);
        lr = smEnterExitTransitionToTest.getLogRec(6);
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(EXIT, lr.getInfo());
        assertEquals(EXIT, lr.getInfo());
        assertEquals(smEnterExitTranstionToTest.mS3, lr.getState());
        assertEquals(smEnterExitTransitionToTest.mS3, lr.getState());
        assertEquals(smEnterExitTranstionToTest.mS3, lr.getOriginalState());
        assertEquals(smEnterExitTransitionToTest.mS3, lr.getOriginalState());
        assertEquals(smEnterExitTranstionToTest.mS4, lr.getDestState());
        assertEquals(smEnterExitTransitionToTest.mS4, lr.getDestState());


        lr = smEnterExitTranstionToTest.getLogRec(7);
        lr = smEnterExitTransitionToTest.getLogRec(7);
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(ENTER, lr.getInfo());
        assertEquals(ENTER, lr.getInfo());
        assertEquals(smEnterExitTranstionToTest.mS4, lr.getState());
        assertEquals(smEnterExitTransitionToTest.mS4, lr.getState());
        assertEquals(smEnterExitTranstionToTest.mS4, lr.getOriginalState());
        assertEquals(smEnterExitTransitionToTest.mS4, lr.getOriginalState());
        assertEquals(smEnterExitTranstionToTest.mS4, lr.getDestState());
        assertEquals(smEnterExitTransitionToTest.mS4, lr.getDestState());


        lr = smEnterExitTranstionToTest.getLogRec(8);
        lr = smEnterExitTransitionToTest.getLogRec(8);
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(TEST_CMD_1, lr.getWhat());
        assertEquals(EXIT, lr.getInfo());
        assertEquals(EXIT, lr.getInfo());
        assertEquals(smEnterExitTranstionToTest.mS4, lr.getState());
        assertEquals(smEnterExitTransitionToTest.mS4, lr.getState());
        assertEquals(smEnterExitTranstionToTest.mS4, lr.getOriginalState());
        assertEquals(smEnterExitTransitionToTest.mS4, lr.getOriginalState());


        if (smEnterExitTranstionToTest.isDbg()) {
        if (smEnterExitTransitionToTest.isDbg()) {
            tlog("testStateMachineEnterExitTransitionToTest X");
            tlog("testStateMachineEnterExitTransitionToTest X");
        }
        }
    }
    }