com.vodafone360.people.service.io.rpg
Class RpgHeader

java.lang.Object
  extended by com.vodafone360.people.service.io.rpg.RpgHeader

public class RpgHeader
extends java.lang.Object

Representation of contents of RPG header (as defined in Now+ API - Communication Protocol & Events) The header contains: the message type, the message request id the message payload length whether the payload is compressed


Field Summary
static int DELIMITER_BYTE
          RPG header delimiter byte.
static int HEADER_LENGTH
          RPG header length.
private  boolean mCompression
           
private  int mPayloadLength
           
private  int mReqId
           
private  int mReqType
           
private  byte[] mRpqHeader
           
private static byte PADDING_BYTE
           
 
Constructor Summary
RpgHeader()
          Default constructor.
 
Method Summary
 boolean compression()
          Get RPG request type from header
 byte[] createHeader()
          Generate RPG header as byte array
protected  boolean extractHeaderInfo(byte[] headerdata)
          Extract header info from byte array into RpgHeader structure
protected  int payloadLength()
          Get RPG message body data length
 int reqId()
          Get request ID from header
 int reqType()
          Get RPG request type from header
 void setCompression(boolean compression)
          Set whether compression is used
 void setPayloadLength(int payloadLength)
          Add message data length to RPG header information
 void setReqId(int reqId)
          Add request id to RPG header information
 void setReqType(int reqType)
          Set RPG request type
private  boolean validateHeader(int type)
          Validate RPG header based on whether it specifies a valid message type.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

HEADER_LENGTH

public static final int HEADER_LENGTH
RPG header length.

See Also:
Constant Field Values

DELIMITER_BYTE

public static final int DELIMITER_BYTE
RPG header delimiter byte.

See Also:
Constant Field Values

PADDING_BYTE

private static final byte PADDING_BYTE
See Also:
Constant Field Values

mReqType

private int mReqType

mReqId

private int mReqId

mPayloadLength

private int mPayloadLength

mCompression

private boolean mCompression

mRpqHeader

private byte[] mRpqHeader
Constructor Detail

RpgHeader

public RpgHeader()
Default constructor.

Method Detail

extractHeaderInfo

protected boolean extractHeaderInfo(byte[] headerdata)
Extract header info from byte array into RpgHeader structure

Parameters:
headerdata - byte array containing header info
Returns:
true if we have a valid header, false otherwise.

validateHeader

private boolean validateHeader(int type)
Validate RPG header based on whether it specifies a valid message type.

Parameters:
type - RPG message type
Returns:
true if a valid and supported type is supplied, false otherwise.

reqType

public final int reqType()
Get RPG request type from header

Returns:
RPG request type

reqId

public final int reqId()
Get request ID from header

Returns:
request ID

payloadLength

protected final int payloadLength()
Get RPG message body data length

Returns:
Size of RPG message

compression

public final boolean compression()
Get RPG request type from header

Returns:
true if RPG response is compressed false otherwise

setReqType

public void setReqType(int reqType)
Set RPG request type

Parameters:
reqType - RPG request type

setReqId

public void setReqId(int reqId)
Add request id to RPG header information

Parameters:
reqId - requrest id

setPayloadLength

public void setPayloadLength(int payloadLength)
Add message data length to RPG header information

Parameters:
payloadLength - length of message data

setCompression

public void setCompression(boolean compression)
Set whether compression is used

Parameters:
compression -

createHeader

public byte[] createHeader()
Generate RPG header as byte array

Returns:
byte array containing RPG header


JavaDoc