등록 작업은 다음과 같이 구성됩니다.
등록 인터네트워킹 프로토콜 및 포트에 대한 기본 TCP 소켓 열기
XML 등록 메시지 생성
소켓에서 XML 등록 메시지 보내기
소켓으로부터 XML 응답 메시지 읽기
소켓 닫기
앞의 논리를 구현하는 Java 코드를 만듭니다.
다음 예제 코드에서는 CrnpClient 구성자에 의해 호출되는 CrnpClient 클래스의 registerCallbacks 메소드에 대한 구현을 보여줍니다. createRegistrationString() 및 readRegistrationReply() 호출에 대해서는 나중에 자세히 설명됩니다.
regIp 및 regPort는 구성자에 의해 설정되는 객체 구성원입니다.
private void registerCallbacks() throws Exception { Socket sock = new Socket(regIp, regPort); String xmlStr = createRegistrationString(); PrintStream ps = new PrintStream(sock.getOutputStream()); ps.print(xmlStr); readRegistrationReply(sock.getInputStream(); sock.close(); }
unregister 메소드를 구현합니다.
이 메소드는 CrnpClient의 shutdown 메소드에 의해 호출됩니다. createUnregistrationString 구현에 대해서는 나중에 자세히 설명됩니다.
private void unregister() throws Exception { Socket sock = new Socket(regIp, regPort); String xmlStr = createUnregistrationString(); PrintStream ps = new PrintStream(sock.getOutputStream()); ps.print(xmlStr); readRegistrationReply(sock.getInputStream()); sock.close(); }