DiscMessage.java

00001 
00022 package org.objectweb.jonas.discovery;
00023 
00024 import java.io.ByteArrayOutputStream;
00025 import java.io.IOException;
00026 import java.io.ObjectOutputStream;
00027 import java.io.Serializable;
00028 import java.net.DatagramPacket;
00029 
00034 public class DiscMessage implements Serializable {
00038         private String sourceAddress;
00042         private int sourcePort;
00043 
00053     public DiscMessage(String sourceAddress, int sourcePort) {
00054         this.sourceAddress = sourceAddress;
00055         this.sourcePort = sourcePort;
00056     }
00057 
00063     public String getSourceAddress() {
00064         return sourceAddress;
00065     }
00066 
00072     public int getSourcePort() {
00073         return sourcePort;
00074     }
00075 
00081     public void setSourceAddress(String sourceAddress) {
00082         this.sourceAddress = sourceAddress;
00083     }
00084 
00090     public void setSourcePort(int sourcePort) {
00091         this.sourcePort = sourcePort;
00092     }
00093 
00101     public static byte[] objectToBytes(Serializable obj) {
00102         if (obj == null) {
00103             return null;
00104         }
00105         try {
00106             ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
00107             new ObjectOutputStream(byteStream).writeObject(obj);
00108             return byteStream.toByteArray();
00109         } catch (IOException ex) {
00110             throw new IllegalArgumentException(ex.toString());
00111         }
00112     }
00113 
00119     private static DatagramPacket getDatagram(Serializable o) {
00120         byte[] content = objectToBytes(o);
00121         if (content == null) {
00122             return null;
00123         }
00124         DatagramPacket dp = new DatagramPacket(content, content.length);
00125         return dp;
00126     }
00127 
00131     public String toString() {
00132         String messageString = null;
00133         messageString = sourceAddress + ":" + sourcePort;
00134         return messageString;
00135     }
00136 
00137 }

Generated on Tue Feb 15 15:05:15 2005 for JOnAS by  doxygen 1.3.9.1