javax.microedition.io
Interface UDPDatagramConnection

All Superinterfaces:
Connection, DatagramConnection
All Known Implementing Classes:
DatagramConnectionBase

public interface UDPDatagramConnection
extends DatagramConnection

This interface defines a datagram connection which knows its local end point address. The protocol is transaction oriented, and delivery and duplicate protection are not guaranteed. Applications requiring ordered reliable delivery of streams of data should use the SocketConnection.

A UDPDatagramConnection is returned from Connector.open() in response to a request to open a datagram:// URL connection string. If the connection string omits both the host and port fields in the URL string, then the system will allocate an available port. The local address and the local port can be discovered using the accessor methods within this interface.

The syntax described here for the datagram URL connection string is also valid for the Datagram.setAddress() method used to assign a destination address to a Datagram to be sent. e.g., datagram://host:port

Blocking Operations

This interface performs blocking Input and Output operations. An application will lock if an implementation of this interface opens a connection from within the main event thread. Prevent an application from locking by opening a connection from within a thread that is separate from the main event thread. SeeConnector for more information.

BNF Format for Connector.open() string

The URI must conform to the BNF syntax specified below. If the URI does not conform to this syntax, an IllegalArgumentException is thrown.

<datagram_connection_string> ::= "datagram://" | "datagram://"<hostport>
<hostport> ::= host ":" port
<host> ::= host name or IP address (omitted for inbound connections)
<port> ::= numeric port number (omitted for system assigned port)

Since:
BlackBerry API 4.0.0, MIDP 2.0

Method Summary
 String getLocalAddress()
          Gets the local address to which the datagram connection is bound.
 int getLocalPort()
          Returns the local port to which this datagram connection is bound.
 
Methods inherited from interface javax.microedition.io.DatagramConnection
getMaximumLength, getNominalLength, newDatagram, newDatagram, newDatagram, newDatagram, receive, send
 
Methods inherited from interface javax.microedition.io.Connection
close
 



Method Detail

getLocalAddress

String getLocalAddress()
                       throws IOException
Gets the local address to which the datagram connection is bound.

The host address(IP number) that can be used to connect to this end of the datagram connection from an external system. Since IP addresses may be dynamically assigned, a remote application will need to be robust in the face of IP number reassignment.

The local hostname (if available) can be accessed from System.getProperty("microedition.hostname")

Returns:
the local address to which the datagram connection is bound.
Throws:
IOException - if the connection was closed.
See Also:
ServerSocketConnection
Since:
BlackBerry API 4.0.0

getLocalPort

int getLocalPort()
                 throws IOException
Returns the local port to which this datagram connection is bound.

Returns:
the local port number to which this datagram connection is connected.
Throws:
IOException - if the connection was closed.
See Also:
ServerSocketConnection
Since:
BlackBerry API 4.0.0





Copyright 1999-2010 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark of Sun Microsystems, Inc.