Class MessageProtocolDispatcher
- java.lang.Object
 - 
- com.inductiveautomation.perspective.gateway.session.MessageProtocolDispatcher
 
 
- 
- Direct Known Subclasses:
 PageModel.Handlers
public class MessageProtocolDispatcher extends java.lang.ObjectHandles some boilerplate for classes that can handle receiving messages from a websocket channel. Basically just a fancy wrapper around a map of protocol handling messages. 
- 
- 
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.String,com.inductiveautomation.perspective.gateway.session.MessageProtocolDispatcher.MessageHandler>handlers 
- 
Constructor Summary
Constructors Constructor Description MessageProtocolDispatcher(com.inductiveautomation.ignition.common.gson.Gson gson, LoggerEx log) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanhandles(java.lang.String protocol)protected voidonFatalError(MessageChannel channel, java.lang.String message)protected voidonFatalError(MessageChannel channel, java.lang.String message, java.lang.Throwable t)voidreceive(MessageChannel channel, java.lang.String protocol, java.io.Reader payload)<T> voidregister(java.lang.String protocol, java.util.function.BiConsumer<MessageChannel,T> handler, java.lang.Class<T> clazz)voidtrySend(MessageChannel channel, java.lang.String protocol, com.inductiveautomation.ignition.common.gson.JsonObject payload)Handy wrapper around MessageChannel.send that logs a warning upon failure.voidtrySend(MessageChannel channel, java.lang.String protocol, java.lang.Object payload)Handy wrapper around MessageChannel.send that logs a warning upon failure.voidtrySendInternal(MessageChannel channel, java.lang.String protocol, java.lang.String payload) 
 - 
 
- 
- 
Constructor Detail
- 
MessageProtocolDispatcher
public MessageProtocolDispatcher(com.inductiveautomation.ignition.common.gson.Gson gson, LoggerEx log) 
 - 
 
- 
Method Detail
- 
receive
public void receive(MessageChannel channel, java.lang.String protocol, java.io.Reader payload)
 
- 
register
public <T> void register(java.lang.String protocol, java.util.function.BiConsumer<MessageChannel,T> handler, java.lang.Class<T> clazz) 
- 
handles
public boolean handles(java.lang.String protocol)
 
- 
onFatalError
protected void onFatalError(MessageChannel channel, java.lang.String message)
 
- 
onFatalError
protected void onFatalError(MessageChannel channel, java.lang.String message, java.lang.Throwable t)
 
- 
trySend
public void trySend(MessageChannel channel, java.lang.String protocol, com.inductiveautomation.ignition.common.gson.JsonObject payload)
Handy wrapper around MessageChannel.send that logs a warning upon failure. 
- 
trySend
public void trySend(MessageChannel channel, java.lang.String protocol, java.lang.Object payload)
Handy wrapper around MessageChannel.send that logs a warning upon failure.- Parameters:
 payload- An object that will be gson-serialized automatically.
 
- 
trySendInternal
public void trySendInternal(MessageChannel channel, java.lang.String protocol, java.lang.String payload)
 
 - 
 
 -