3GPP TSG-T2/SWG1
Tokyo, Japan, 27-29 June 2000	T2x00026 	

To:	TSG T2 SWG1 (MExE)	

Source:	Nokia	

Title:	Java2ME packages and APIs overview from MExE perspective	

Document for:	Discussion

___________________________________________________________________________

1.	The set of APIs provided by CLDC and MIDP specifications of Java2ME

1.1	CLDC (Connected Limited Device Configuration)

Package java.io -  KVM core I/O package.

Interfaces:

DataInput The DataInput interface provides for reading bytes from a binary stream and reconstructing from them data in any of the Java primitive types.

DataOutput The DataOutput interface provides for converting data from any of the Java primitive types to a series of bytes and writing these bytes to a binary stream.

Package java.lang  

Interfaces:

Runnable The Runnable interface should be implemented by any class whose instances are intended to be executed by a thread.

Package java.util  - MID Profile Utility Classes included from Java 2 Standard Edition. 

 Interfaces:

Enumeration An object that implements the Enumeration interface generates a series of elements, one at a time.

Package javax.microedition
 
Interfaces:

Connection This is the most basic type of generic connection.

ContentConnection This interface defines the stream connection over which content is passed.

Datagram This is the generic datagram interface. 

DatagramConnection This interface defines the capabilities that a datagram connection must have. 

InputConnection This interface defines the capabilities that an input stream connection must have. 

OutputConnection This interface defines the capabilities that an output stream connection must have. 

StreamConnection This interface defines the capabilities that a stream connection must have. 

StreamConnectionNotifier This interface defines the capabilities that a connection notifier must have.

1.2 MIDP (Mobile Information Device Profile)

Package javax.microedition.io   - MID Profile includes networking support based on the GenericConnection framework from the CLDC. 

HttpConnection This interface defines the necessary methods and constants for an HTTP connection. 

Package javax.microedition.lcdui  - The UI API provides a set of features for implementation of user interfaces for MIDP applications. 

	Interfaces:

Callable This interface is used by applications that want to get a method to be called in the same thread as event are called.

 Choice Choice defines an API for a user interface components implementing selection from predefined number of choices. 

CommandListener This interface is used by applications which need to receive high-level events from the implementation. 

ItemStateListener This interface is used by applications which need to receive events that indicate changes in the internal state of the interactive items within a Form screen.

Package javax.microedition.midlet  - The MIDlet package defines Mobile Information Device Profile applications and the interactions between the application and the environment in which the application runs. 

Package javax.microedition.rms - The Mobile Information Device Profile provides a mechanism for MIDlets to persistently store data and later retrieve it. 

Interfaces:

 RecordComparator An interface defining a comparator which compares two records (in an implementation-defined manner) to see if they match or what their relative sort order is.

 RecordEnumeration A class representing a bidirectional record store Record enumerator.

RecordFilter An interface defining a filter which examines a record to see if it matches (based on an application-defined criteria).

 RecordListener A listener interface for receiving Record Changed/Added/Deleted events from a record store.

2.	Java2ME from MExE perspective

CLDC and MIDP specifications provide sufficient support for networking, minimum support for telephony and simple security  model. Support for telephony which is provided by the package javax.microedition.lcdu is in compliance with the security framework of CLDC and MIDP. It shall be taken into account that extension of telephony support will have a sequence of implications in the form of the need to enhance the security model which might not be appropriate for the devices with limited resources.

If MExE group identifies the need for any additional APIs which are not provided by CLDC and MIDP specifications, request shall be made via Java community process by submitting a request in the form of JSR.