콘텐츠로 이동

Interface DatagramConnection

package javax.microedition.io

{protocol}://[{host}]:[{port}]

데이터그램 연결은 “클라이언트” 모드나 “서버” 모드로 열 수 있습니다. ”//{host}” 부분이 없으면 연결은 “서버”로 열립니다. “서버”로 열린다는 것은 클라이언트 응용 프로그램에서 통신을 시작한다는 것을 의미합니다. ”//{host}” 부분이 지정되어 있으면 연결은 “클라이언트”로 열립니다.

예:

데이터그램을 받아들이기 위한 데이터그램 연결

datagram://:1234

서버로 보내기 위한 데이터그램 연결

datagram://123.456.789.12:1234

호스트 이름이 지정되지 않은 “서버 모드”에서의 포트 번호는 수신 포트 번호입니다. 호스트 이름이 지정된 “클라이언트 모드”에서의 포트 번호는 대상 포트 번호입니다. 두 경우 모두, 회신 포트는 반드시 지정해야 합니다. “서버 모드”에서는 수신 및 전송에 모두 동일한 포트 번호가 사용됩니다. “클라이언트 모드”에서 회신 포트는 항상 동적으로 할당됩니다.

또한 데이터그램 객체가 J2SE (Java 2 Standard Edition)보다 추상적인 방법으로 할당됩니다. 구체적인 DatagramPacket 클래스를 제공하는 대신 추상적인 Datagram 인터페이스가 제공됩니다. 이를 통해 단일 플랫폼에서 여러 개의 다른 데이터그램 인터페이스를 동시에 지원할 수 있습니다. 데이터그램 객체는 DatagramConnection 객체의 newDatagram 메소드를 호출하여 할당해야 합니다. 결과로 만들어지는 객체는 다른 인터페이스 유형인 javax.microedition.io.Datagram을 사용하여 정의합니다.

Since:

  • CLDC 1.0
  • int getMaximumLength () — 데이터그램이 가질 수 있는 최대 길이를 가져옵니다.
  • int getNominalLength () — 데이터그램의 명목상의 길이를 가져옵니다.
  • Datagram newDatagram (byte[] buf, int size) — 새로운 데이터그램 객체를 만듭니다.
  • Datagram newDatagram (byte[] buf, int size, String addr) — 새로운 데이터그램 객체를 만듭니다.
  • Datagram newDatagram (int size) — 새로운 데이터그램 객체를 만듭니다.
  • Datagram newDatagram (int size, String addr) — 새로운 데이터그램 객체를 만듭니다.
  • void receive ( Datagram dgram) — 데이터그램을 받습니다.
  • void send ( Datagram dgram) — 데이터그램을 보냅니다.
public int getMaximumLength()
throws IOException

Returns:

  • 데이터그램의 최대 길이

Throws:

  • IOException - I/O 오류가 발생한 경우
public int getNominalLength()
throws IOException

Returns:

  • 데이터그램의 명목상의 길이

Throws:

  • IOException - I/O 오류가 발생한 경우
public void send(Datagram dgram)
throws IOException

Parameters:

  • dgram - 데이터그램

Throws:

  • InterruptedIOException - 시간 초과 또는 중단이 발생한 경우
public void receive(Datagram dgram)
throws IOException

Parameters:

  • dgram - 데이터그램

Throws:

  • InterruptedIOException - 시간 초과 또는 중단이 발생한 경우
public Datagram newDatagram(int size)
throws IOException

Parameters:

  • size - 데이터그램에 필요한 버퍼 크기

Returns:

  • 새 데이터그램

Throws:

  • IllegalArgumentException - 크기가 음수이거나 최대 크기보다 큰 경우
public Datagram newDatagram(int size,
String addr)
throws IOException

Parameters:

  • addr - 데이터그램이 전송되는 I/O 주소

Returns:

  • 새 데이터그램

Throws:

  • IllegalArgumentException - 크기가 음수이거나 최대 크기보다 큰 경우 또는 주소 매개 변수가 유효하지 않은 경우
public Datagram newDatagram(byte[] buf,
int size)
throws IOException

Parameters:

  • size - 데이터그램에 필요한 버퍼 크기

Returns:

  • 새 데이터그램

Throws:

  • IllegalArgumentException - 크기가 음수이거나 최대 크기 또는 지정된 버퍼의 길이보다 큰 경우 또는 버퍼 매개 변수가 유효하지 않은 경우
public Datagram newDatagram(byte[] buf,
int size,
String addr)
throws IOException

Parameters:

  • addr - 데이터그램이 전송되는 I/O 주소

Returns:

  • 새 데이터그램

Throws:

  • IllegalArgumentException - 크기가 음수이거나 최대 크기 또는 지정된 버퍼의 길이보다 큰 경우 또는 주소나 버퍼 매개 변수가 유효하지 않은 경우