OBEX

The OBEX API (JSR-82) uses the Generic Connection Framework (GCF) for networking (for more details on GCF, see CLDC specification (JSR-139) CLDC specification (JSR-139)). In practice it means that some classes and interfaces from the javax.microedition.io package are used as illustrated in the figure below.

Figure: OBEX in the Generic Connection Framework. Source: [JSR-82]

The GCF is used to establish the transport layer communication. Once the connection is established, peers can start exchanging OBEX commands. (Section OBEX connectionsl introduces the OBEX protocol operations.)

JSR-82 supports the following operations:

  • CONNECT

  • PUT

  • GET

  • SETPATH

  • ABORT

  • CREATE-EMPTY

  • PUT-DELETE

  • DISCONNECT

In addition, JSR-82 gives access to the following OBEX headers:

  • Count

  • Name

  • Type

  • Length

  • Time

  • Description

  • Target

  • HTTP

  • Body

  • End of Body

  • Who

  • Connection ID

  • Application Parameters

  • Authentication Challenge

  • Authentication Response

  • Object Class

  • User defined

The class HeaderSet is used to manipulate most of the headers. Exceptions are:

  • Body and End of Body headers, which are accessible using the Operation class.

  • Connection ID header, which is accessible using the ClientSession class.

  • Authentication Challenge and Authentication Response headers, which are accessible using both the HeaderSet and the Authenticator classes.