Class ThincMsgInitReplyHandler

java.lang.Object
  extended by ThincHandler
      extended by ThincMsgInitReplyHandler
All Implemented Interfaces:
ThincInitFlag

public final class ThincMsgInitReplyHandler
extends ThincHandler
implements ThincInitFlag

handles the general init reply/request messages from/to the server. it recoginizes the reply message's type then pass them into the proper message object. Moreover, it also takes the control from client request messages to send a message.

Author:
Young Jin Yoon
See Also:
ThincHandler, ThincMsgHandler

Field Summary
private  int currentHandShake
           
static byte[] DEFAULT_HANDSHAKE_ORDER
           
private  ThincMsgHandler handler
           
private  java.nio.ByteBuffer hd
           
private  byte[] hsOrder
           
static int REPLY_SIZE
           
private  ThincSMsgInitReply[] replyMessage
           
private  ThincCMsgInitRequest[] requestMessage
           
 
Fields inherited from class ThincHandler
canvas, client, clientAppData, clientPacData, isSSL, lastSent, MAX_DIRECT_ALLOCATE, rcvResult, recv, sc, send, serverAppData, serverPacData, sslEngine, sslSocket, THINC_HEADERSIZE
 
Fields inherited from interface ThincInitFlag
APP_GET, APP_LIST, APP_SHARING, CACHE_SIZE, CURSOR, ENCODER, FBDATA, FBINFO, KEEPALIVE, MAX_INIT_ARRAY, NOTOK, NOVIDEO, OK, UNKNOWN, VIDEO, VIDEO_CLIENT_FMTS, VIDEO_SERV_FMTS
 
Constructor Summary
ThincMsgInitReplyHandler(ThincClient tc, ThincClientCanvas c, ThincMsgHandler h)
          creates ThincMsgInitReplyHandler object. it initializes all parameters in object and init handshake messages for both client message and server message
 
Method Summary
private  void initMessage(ThincClient tc, ThincClientCanvas c)
          initServerMessage() registers server and client init reply/request message into array named replyMessage and requestMessage. when reply from server comes, the handler automatically choose the proper message and pass the control to it. if you want to add another server/client messages, you can register the message by adding the line of here.
 void sendNextMessage()
          sendNextMessage() send next init request message to the server.
 void start()
          start() actually starts to receive the init reply messages from server. if it comes, this parses init reply header and pass the control to the proper server init reply message class.
 
Methods inherited from class ThincHandler
closeSocketChannel, createSocketChannel, getLastSent, getMessage, recvBytes, send, sendBytes, setSSLSocketChannel, SSLHandshake
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

REPLY_SIZE

public static final int REPLY_SIZE
See Also:
Constant Field Values

DEFAULT_HANDSHAKE_ORDER

public static final byte[] DEFAULT_HANDSHAKE_ORDER

hsOrder

private byte[] hsOrder

currentHandShake

private int currentHandShake

replyMessage

private ThincSMsgInitReply[] replyMessage

requestMessage

private ThincCMsgInitRequest[] requestMessage

handler

private ThincMsgHandler handler

hd

private java.nio.ByteBuffer hd
Constructor Detail

ThincMsgInitReplyHandler

public ThincMsgInitReplyHandler(ThincClient tc,
                                ThincClientCanvas c,
                                ThincMsgHandler h)
creates ThincMsgInitReplyHandler object. it initializes all parameters in object and init handshake messages for both client message and server message

Parameters:
tc -
c -
h -
Method Detail

initMessage

private void initMessage(ThincClient tc,
                         ThincClientCanvas c)
initServerMessage() registers server and client init reply/request message into array named replyMessage and requestMessage. when reply from server comes, the handler automatically choose the proper message and pass the control to it. if you want to add another server/client messages, you can register the message by adding the line of here. Moreover, you can also activate sending client message by modifying DEFAULT_HANDSHAKE_ORDER variable of this class.


start

public void start()
           throws ThincException
start() actually starts to receive the init reply messages from server. if it comes, this parses init reply header and pass the control to the proper server init reply message class.

Throws:
ThincException

sendNextMessage

public void sendNextMessage()
                     throws ThincException
sendNextMessage() send next init request message to the server.

Throws:
ThincException