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

Commit 0ee62e91 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "create library for mainline module" am: c5987092 am: 26531301 am: eeecbc86

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1818896

Change-Id: If4d803fb10b4fe5f77b308200ed93fd43681190e
parents 6487f096 eeecbc86
Loading
Loading
Loading
Loading
+21 −0
Original line number Original line Diff line number Diff line
@@ -380,6 +380,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");
        }
        }
    }
    }