1 package com.quikj.server.framework; 2 3 import java.net.*; 4 5 public final class AceIPCMessage implements AceMessageInterface 6 { 7 public static final int CONNECTION_ESTABLISHED = 0; 9 public static final int MESSAGE_RECEIVED = 1; 10 public static final int DISCONNECT = 2; 11 12 public static final int MAX_IPC_MSG_SIZE = 30000; 13 14 protected AceIPCMessage (int event, 15 boolean solicited, 16 AceIPCEntityInterface entity, 17 int sender_thread_id, 18 byte[] user_message, int offset, int length, 19 InetAddress far_end_addr, 20 int far_end_port, 21 long user_parm) 22 { 23 this.event = event; 24 this.solicited = solicited; 25 this.entity = entity; 26 senderThreadId = sender_thread_id; 27 userMessage = user_message; 28 this.offset = offset; 29 this.length = length; 30 farEndAddr = far_end_addr; 31 farEndPort = far_end_port; 32 userParm = user_parm; 33 } 34 35 protected AceIPCMessage (int event, 36 AceIPCEntityInterface entity, 37 InetAddress far_end_addr, 38 int far_end_port, 39 long user_parm) 40 { 41 this (event, false, entity, 0, null, 0, 0, far_end_addr, far_end_port, user_parm); 42 } 43 44 protected AceIPCMessage (int event, 45 AceIPCEntityInterface entity, 46 byte[] user_message, int offset, int length, 47 InetAddress far_end_addr, 48 int far_end_port, 49 long user_parm) 50 { 51 this (event, false, entity, 0, user_message, offset, length, far_end_addr, far_end_port, user_parm); 52 } 53 54 public String messageType() 56 { 57 return new String ("AceIPCMessage"); 58 } 59 60 public int getEvent() 61 { 62 return event; 63 } 64 65 public boolean solicitedMessage() 66 { 67 return solicited; 68 } 69 70 public AceIPCEntityInterface getEntity() 71 { 72 return entity; 73 } 74 75 public int getSenderThreadId() 76 { 77 return senderThreadId; 78 } 79 80 public byte[] getMessage() 81 { 82 return userMessage; 83 } 84 85 public int getUserDataOffset() 86 { 87 return offset; 88 } 89 90 public int getUserDataLength() 91 { 92 return length; 93 } 94 95 public InetAddress getFarEndAddress() 96 { 97 return farEndAddr; 98 } 99 100 public int getFarEndPort() 101 { 102 return farEndPort; 103 } 104 105 public long getUserParm() 106 { 107 return userParm; 108 } 109 110 protected static String dumpRawBytes (byte[] msg , int offset, int length) 111 { 112 StringBuffer strbuf = new StringBuffer (); 113 114 int count = 0; 115 for (int i = offset; i < (length + offset); i++) 116 { 117 int val; 118 if (msg[i] < 0) 119 { 120 val = 0x80 | (msg[i] & 0x7f); 121 } 122 else 123 { 124 val = msg[i]; 125 } 126 127 String str = Integer.toHexString (val); 128 int len = str.length(); 129 130 if (len == 1) 131 { 132 strbuf.append ("0" + str + " "); 133 } 134 else 135 { 136 strbuf.append (str + " "); 137 } 138 139 if (count++ == 20) 140 { 141 count = 0; 142 strbuf.append ('\n'); 143 } 144 } 146 if (count > 0) 147 { 148 strbuf.append ('\n'); 149 } 150 151 strbuf.append ("Num bytes dumped = " + length + '\n' + '\n'); 152 153 return (strbuf.toString()); 154 } 155 156 157 private int event; 158 private boolean solicited; 159 private AceIPCEntityInterface entity; 160 private int senderThreadId; 161 private byte[] userMessage; 162 private int offset; 163 private int length; 164 private InetAddress farEndAddr; 165 private int farEndPort; 166 private long userParm; 167 } 168 169 | Popular Tags |