Class HttpObjectSocket
java.lang.Object
org.nustaq.kontraktor.remoting.websockets.WebObjectSocket
org.nustaq.kontraktor.remoting.http.HttpObjectSocket
- All Implemented Interfaces:
org.nustaq.kontraktor.remoting.base.ObjectSink,org.nustaq.kontraktor.remoting.base.ObjectSocket
public class HttpObjectSocket
extends WebObjectSocket
implements org.nustaq.kontraktor.remoting.base.ObjectSink
Created by ruedi on 12.05.2015.
bidirectional http longpoll based objectsocket backed by a binary queue.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic intstatic intstatic intFields inherited from class org.nustaq.kontraktor.remoting.websockets.WebObjectSocket
conf, isClosed, lastError, objects, sendSequence -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected voidvoidclose()voidflush()intgetId()longlongorg.nustaq.kontraktor.util.Pair<Runnable,KHttpExchange> longorg.nustaq.kontraktor.util.Pair<byte[],Integer> org.nustaq.kontraktor.remoting.base.ObjectSinkgetSink()voidreceiveObject(org.nustaq.kontraktor.remoting.base.ObjectSink asink, Object received, List<org.nustaq.kontraktor.IPromise> createdFutures, Object securityContext) voidsendBinary(byte[] message) voidsetLongPollTask(org.nustaq.kontraktor.util.Pair<Runnable, KHttpExchange> longPollTask) voidsetSink(org.nustaq.kontraktor.remoting.base.ObjectSink sink) voidvoidstoreLPMessage(int inSequence, Object msg) takeStoredLPMessage(int seq) voidvoidvoidvoidwriteObject(Object toWrite) Methods inherited from class org.nustaq.kontraktor.remoting.websockets.WebObjectSocket
getConf, getLastError, getObjectMaxBatchSize, getSendSequence, isClosed, setConf, setLastErrorMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.nustaq.kontraktor.remoting.base.ObjectSink
receiveObjectMethods inherited from interface org.nustaq.kontraktor.remoting.base.ObjectSocket
canWrite
-
Field Details
-
LP_TIMEOUT
public static int LP_TIMEOUT -
HISTORY_SIZE
public static int HISTORY_SIZE -
HTTP_BATCH_SIZE
public static int HTTP_BATCH_SIZE
-
-
Constructor Details
-
HttpObjectSocket
-
-
Method Details
-
getSessionId
-
updateTimeStamp
public void updateTimeStamp() -
updateLastRemoteCallTimeStamp
public void updateLastRemoteCallTimeStamp() -
getLastRemoteCallMS
public long getLastRemoteCallMS() -
getLastUse
public long getLastUse() -
sendBinary
public void sendBinary(byte[] message) - Specified by:
sendBinaryin classWebObjectSocket
-
writeObject
- Specified by:
writeObjectin interfaceorg.nustaq.kontraktor.remoting.base.ObjectSocket- Overrides:
writeObjectin classWebObjectSocket- Throws:
Exception
-
close
- Specified by:
closein interfaceorg.nustaq.kontraktor.remoting.base.ObjectSocket- Throws:
IOException
-
getId
public int getId()- Specified by:
getIdin interfaceorg.nustaq.kontraktor.remoting.base.ObjectSocket
-
getConnectionIdentifier
- Specified by:
getConnectionIdentifierin interfaceorg.nustaq.kontraktor.remoting.base.ObjectSocket
-
setSink
public void setSink(org.nustaq.kontraktor.remoting.base.ObjectSink sink) -
getSink
public org.nustaq.kontraktor.remoting.base.ObjectSink getSink() -
getNextQueuedMessage
-
checkThread
protected void checkThread() -
getLongPollTask
-
cancelLongPoll
public void cancelLongPoll() -
triggerLongPoll
public void triggerLongPoll() -
setLongPollTask
-
getLongPollTaskTime
public long getLongPollTaskTime() -
receiveObject
public void receiveObject(org.nustaq.kontraktor.remoting.base.ObjectSink asink, Object received, List<org.nustaq.kontraktor.IPromise> createdFutures, Object securityContext) - Specified by:
receiveObjectin interfaceorg.nustaq.kontraktor.remoting.base.ObjectSink
-
sinkClosed
public void sinkClosed()- Specified by:
sinkClosedin interfaceorg.nustaq.kontraktor.remoting.base.ObjectSink
-
takeStoredLPMessage
-
storeLPMessage
-
flush
- Specified by:
flushin interfaceorg.nustaq.kontraktor.remoting.base.ObjectSocket- Overrides:
flushin classWebObjectSocket- Throws:
Exception
-