commandstate.java

来自「This is a resource based on j2me embedde」· Java 代码 · 共 142 行

JAVA
142
字号
/* * * * Copyright  1990-2007 Sun Microsystems, Inc. All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER *  * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License version * 2 only, as published by the Free Software Foundation. *  * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License version 2 for more details (a copy is * included at /legal/license.txt). *  * You should have received a copy of the GNU General Public License * version 2 along with this work; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA *  * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa * Clara, CA 95054 or visit www.sun.com if you need additional * information or have any questions. */package com.sun.midp.main;/** Holds the state for MIDlet Suite management commands. */class CommandState {    /** return value from Main, so we know that Main exited normally */    static final int MAIN_EXIT = 2001;    /** status for shutdown */    static final int SHUTDOWN = 1;    /** status for success */    static final int OK = 0;    /**     * Get the command state.     *     * @return current command state     */    static CommandState getCommandState() {        CommandState state = new CommandState();        restoreCommandState(state);        return state;    }    /**     * Save the command state.     *     * @param state current command state     */    private static native void saveCommandState(CommandState state);    /**     * Restore the command state.     *     * @param state current command state     */    private static native void restoreCommandState(CommandState state);    /**     * Exit the VM with an error code. Our private version of Runtime.exit.     * <p>     * This is needed because the MIDP version of Runtime.exit cannot tell     * if it is being called from a MIDlet or not, so it always throws an     * exception.     * <p>     *     * @param status Status code to return.     */    static native void exitInternal(int status);    /** Status of the last command. */    int status;    /** The ID given to a suite load. */    int suiteId;    /** Class name of MIDlet. */    String midletClassName;    /** Has the application manager MIDlet displayed the Java logo yet? */    boolean logoDisplayed;    /** The ID of suite to load when there is no other queued. */    int lastSuiteId;    /** The MIDlet class name for the suite to load. */    String lastMidletClassName;    /** The argument for a last MIDlet, will be app property arg-0. */    String lastArg0;    /** The argument for a last MIDlet, will be app property arg-1. */    String lastArg1;    /** The argument for a MIDlet in the suite, will be app property arg-0. */    String arg0;    /** The argument for a MIDlet in the suite, will be app property arg-1. */    String arg1;    /** The argument for a MIDlet in the suite, will be app property arg-2. */    String arg2;    /**     * true if the new midlet must be started in debug     * mode, false otherwise.     */    boolean isDebugMode;    /** Structure containing the run time information about the midlet. */    RuntimeInfo runtimeInfo = new RuntimeInfo();    /** Only the factory method can instantiate this class */    private CommandState() {    }    /**     * Save the command state.     */    void save() {        saveCommandState(this);    }    /**     * Returns the string form of this object.     *     * @return displayable string representation of this object     */    public String toString() {        return "CommandState:" +            "\n  status: " + status +            "\n  suite ID: " + suiteId +            "\n  class name: " + midletClassName +            "\n  logo displayed: " + logoDisplayed +            "\n  last suite ID: " + lastSuiteId +            "\n  last MIDlet class name: " + lastMidletClassName +            "\n  arg 0: " + arg0 +            "\n  arg 1: " + arg1 +            "\n  arg 2: " + arg2 +            "\n  memory reserved: " + runtimeInfo.memoryReserved +            "\n  memory total: " + runtimeInfo.memoryTotal +            "\n  priority:" + runtimeInfo.priority +            "\n  profile name: " + runtimeInfo.profileName +            "\n  debug mode:" + isDebugMode;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?