L'enregistrement implique les opérations suivantes :
ouverture d'un socket TCP de base sur le port et le protocole inter-réseau de connexion ;
création d'un message de connexion XML ;
envoi d'un message de connexion XML au socket ;
lecture d'un message de réponse XML sur le socket ;
fermeture du socket.
Créez le code Java mettant en oeuvre la logique précédente.
L'exemple de code suivant présente la mise en oeuvre de la méthode registerCallbacks de la classe CrnpClient (qui est appelée par le constructeur CrnpClient). Les appels des fonctions createRegistrationString() et readRegistrationReply () sont décrits plus en détail ultérieurement.
regIp et regPort sont des objets membres définis par le constructeur.
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(); }
Mettez en œuvre la méthode unregister.
Cette méthode est appelée par la méthode shutdown de la classe CrnpClient. La mise en oeuvre de createUnregistrationString est présentée plus en détail plus loin dans ce chapitre.
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(); }