Use is subject to License Terms. Your use of this web site or any of its content or software indicates your agreement to be bound by these License Terms.

Copyright © 2006 Sun Microsystems, Inc. All rights reserved.


javax.microedition.io
Interface DatagramConnection


public interface DatagramConnection
extends Connection

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

The parameter string describing the target of the connection takes the form:

{protocol}:[//{host}]:{port}
A datagram connection can be opened in a "client" mode or a "server" mode. If the "//{host}" is missing then it is opened as a "server" (by "server", this means that a client application initiates communication). When the "//{host}" is specified the connection is opened as a client.

Examples:

A datagram connection for accepting datagrams
datagram://:1234

A datagram connection for sending to a server:
datagram://123.456.789.12:1234

Note that the port number in "server mode" (unspecified host name) is that of the receiving port. The port number in "client mode" (host name specified) is that of the target port. The reply to port in both cases is never unspecified. In "server mode", the same port number is used for both receiving and sending. In "client mode", the reply-to port is always dynamically allocated.


Method Summary
 int getMaximumLength()
          Get the maximum length a datagram can be.
 int getNominalLength()
          Get the nominal length of a datagram.
 Datagram newDatagram(byte[] buf, int size)
          Make a new datagram object
 Datagram newDatagram(byte[] buf, int size, String addr)
          Make a new datagram object
 Datagram newDatagram(int size)
          Make a new datagram object automatically allocating a buffer
 Datagram newDatagram(int size, String addr)
          Make a new datagram object
 void receive(Datagram dgram)
          Receive a datagram
 void send(Datagram dgram)
          Send a datagram
 
Methods inherited from interface javax.microedition.io.Connection
close
 

Method Detail

getMaximumLength

public int getMaximumLength()
                     throws IOException
Get the maximum length a datagram can be.
Returns:
address The length.

getNominalLength

public int getNominalLength()
                     throws IOException
Get the nominal length of a datagram.
Returns:
address The length.

send

public void send(Datagram dgram)
          throws IOException
Send a datagram
Parameters:
dgram - A datagram.
Throws:
IOException - If an I/O error occurs.
InterruptedIOException - Timeout or upon closing the connection with outstanding I/O.

receive

public void receive(Datagram dgram)
             throws IOException
Receive a datagram
Parameters:
dgram - A datagram.
Throws:
IOException - If an I/O error occurs.
InterruptedIOException - Timeout or upon closing the connection with outstanding I/O.

newDatagram

public Datagram newDatagram(int size)
                     throws IOException
Make a new datagram object automatically allocating a buffer
Parameters:
size - The length of the buffer to be allocated for the datagram
Returns:
A new datagram

newDatagram

public Datagram newDatagram(int size,
                            String addr)
                     throws IOException
Make a new datagram object
Parameters:
size - The length of the buffer to be used
addr - The address to which the datagram must go
Returns:
A new datagram

newDatagram

public Datagram newDatagram(byte[] buf,
                            int size)
                     throws IOException
Make a new datagram object
Parameters:
buf - The buffer to be used in the datagram
size - The length of the buffer to be allocated for the datagram
Returns:
A new datagram
Throws:
IllegalArgumentException - if the length is negative or larger than the buffer

newDatagram

public Datagram newDatagram(byte[] buf,
                            int size,
                            String addr)
                     throws IOException
Make a new datagram object
Parameters:
buf - The buffer to be used in the datagram
size - The length of the buffer to be used
addr - The address to which the datagram must go
Returns:
A new datagram
Throws:
IllegalArgumentException - if the length is negative or larger than the buffer


Copyright © 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to License Terms. Your use of this web site or any of its content or software indicates your agreement to be bound by these License Terms.

For more information, please consult the JSR 30 specification.