KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > quikj > server > framework > AceIPCConnReqMessage


1 package com.quikj.server.framework;
2
3 public class AceIPCConnReqMessage implements AceIPCMessageInterface
4 {
5     /*********************************************************************************/
6     //
7
// Octet 0: msg type
8
// Octet 1..n: User data (optional)
9
//
10
/*********************************************************************************/
11
12     // constructor for message received
13
protected AceIPCConnReqMessage (byte[] msg, int length) throws AceException
14     {
15     message = msg;
16     msgLength = length;
17     }
18     
19     // constructor for message to be sent
20
protected AceIPCConnReqMessage (byte[] user_data, int offset, int user_data_length)
21     {
22     msgLength = MSG_HEADER_LENGTH + user_data_length;
23     message = new byte [msgLength];
24     
25     // fill in the message bytes
26
message [MSG_TYPE_OFFSET] = CONN_REQ_MSG;
27     if (user_data_length > 0)
28         {
29         System.arraycopy (user_data, offset, message, USER_DATA_OFFSET, user_data_length);
30         }
31     }
32
33     public int getIPCMsgType()
34     {
35     return message[MSG_TYPE_OFFSET];
36     }
37     
38     public int getLength()
39     {
40     return msgLength;
41     }
42     
43     public String JavaDoc traceIPCMessage(boolean entire_message)
44     {
45     if (entire_message == true)
46         {
47         return (AceIPCMessage.dumpRawBytes (message, 0, msgLength));
48         }
49     else
50         {
51         return (new String JavaDoc ("CONNECT REQUEST"));
52         }
53     }
54     
55     public byte[] getBytes()
56     {
57     return message;
58     }
59
60
61     public int userDataOffset()
62     {
63     return USER_DATA_OFFSET;
64     }
65     
66     public int userDataLength()
67     {
68     return (msgLength - USER_DATA_OFFSET);
69     }
70     
71
72
73     
74     private static final int MSG_HEADER_LENGTH = 1;
75     private static final int USER_DATA_OFFSET = 1;
76     
77     private byte[] message;
78     private int msgLength;
79 }
80
Popular Tags