J2ME : Shows the values of the system properties

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

/**
 * A MIDlet shows the values of the system properties.
 */
public class MIDletProps extends MIDlet implements CommandListener
{

    private Display display;    // The display for this MIDlet
    private Form props;
    private StringBuffer propbuf;
    private Command exitCommand = new Command(“Exit”, Command.SCREEN, 1);


    /**
    * Construct MIDletProps
    */
    public MIDletProps() {
        display = Display.getDisplay(this);
    }

    /**
     * Show the value of the properties
     */
    public void startApp() {
       Runtime runtime = Runtime.getRuntime();
       runtime.gc();
       long free = runtime.freeMemory();
       long total = runtime.totalMemory();
    
       propbuf = new StringBuffer( 50 );
       props = new Form( “System Properties” );
    
       props.append( “Free Memory = ” + free + “\n” );
       props.append( “Total Memory = ” + total + “\n” );
    
       props.append( showProp( “microedition.configuration” ) );
       props.append( showProp( “microedition.platform” ) );
       props.append( showProp( “microedition.locale” ) );
       props.append( showProp( “microedition.encoding” ) );
       props.append( showProp( “microedition.encodingClass” ) );
       props.append( showProp( “microedition.http_proxy” ) );
    
       props.addCommand( exitCommand );
       props.setCommandListener( this );
       
       display.setCurrent( props );

    }

    /**
    * Eventhandling code goes into commandAction
    */
    public void commandAction( Command c, Displayable s ) 
    {
      if ( c == exitCommand ) 
      {
         destroyApp( false );
         notifyDestroyed();
      }  
    }


    /**
     * Show a property.
     */
   String showProp( String prop ) 
   {
      String value = System.getProperty( prop );
      propbuf.setLength( 0 );
      propbuf.append( prop );
      propbuf.append( ” = ” );
      if (value == null) 
      {
         propbuf.append( “<undefined>” );
      } 
      else 
      {
          propbuf.append( “\”” );
          propbuf.append( value );
          propbuf.append( “\”” );
      }
      propbuf.append( “\n” );
      return propbuf.toString();
    }


   /**
    * Time to pause, free any space we don’t need right now.
    */
    public void pauseApp() 
    {
       display.setCurrent( null );
       propbuf = null;
       props = null;
    }

    /**
     * No op
     */
    public void destroyApp( boolean unconditional ) 
    {
       System.out.println( “In destroyApp” );

    }

}



Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.