public class WebSocketWriter extends TypedAtomicActor implements WebSocketService
Red (ltrnc) |
Red (ltrnc) |
Entity.ContainedObjectsIterator
Modifier and Type | Field and Description |
---|---|
TypedIOPort |
input
A port that accepts messages to write to the websocket.
|
StringParameter |
path
The URL affiliated with the websocket.
|
_typesValid
_actorFiringListeners, _initializables, _notifyingActorFiring, _stopRequested
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _deferChangeRequests, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
COMPLETED, NOT_READY, STOP_ITERATING
Constructor and Description |
---|
WebSocketWriter(CompositeEntity container,
java.lang.String name)
Create an instance of the actor.
|
Modifier and Type | Method and Description |
---|---|
void |
attributeChanged(Attribute attribute)
React to a change in an attribute.
|
java.lang.Object |
clone(Workspace workspace)
Clone the actor.
|
void |
fire()
Open the websocket connection, if not already open, and write a
message to it.
|
java.net.URI |
getRelativePath()
Return the relative path that this WebSocketService is mapped to,
which is the value of the path parameter.
|
void |
initialize()
Open any websocket connections to remote URIs.
|
boolean |
isLocal()
Returns true if connecting to a locally hosted service; false otherwise.
|
void |
onMessage(WebSocketEndpoint sender,
java.lang.String message)
Do nothing upon receipt of a message, since this actor is a writer.
|
void |
open(java.net.URI path)
Open the WebSocket connection on the given port.
|
void |
setConnection(org.eclipse.jetty.websocket.WebSocket.Connection connection)
Set the connection that this WebSocketService will use.
|
void |
setRelativePath(java.net.URI path)
Set the relative path that this WebSocketService is mapped to.
|
void |
wrapup()
Close any open WebSocket connections.
|
_containedTypeConstraints, _customTypeConstraints, _defaultTypeConstraints, _fireAt, _fireAt, attributeTypeChanged, clone, isBackwardTypeInferenceEnabled, newPort, typeConstraintList, typeConstraints
_actorFiring, _actorFiring, _declareDelayDependency, addActorFiringListener, addInitializable, connectionsChanged, createReceivers, declareDelayDependency, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, isFireFunctional, isStrict, iterate, newReceiver, outputPortList, postfire, prefire, preinitialize, pruneDependencies, recordFiring, removeActorFiringListener, removeDependency, removeInitializable, setContainer, stop, stopFire, terminate
_adjustDeferrals, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, isAtomic, isOpaque, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName
_addPort, _description, _exportMoMLContents, _removePort, _validateSettables, connectedPortList, connectedPorts, containedObjectsIterator, getAttribute, getPort, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts, setClassDefinition, uniqueName
_setParent, exportMoML, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _containedDecorators, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _executeChangeRequests, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, addHierarchyListener, attributeDeleted, attributeList, attributeList, decorators, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getFullName, getModelErrorHandler, getName, getName, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, notifyOfNameChange, propagateValue, propagateValues, removeAttribute, removeChangeListener, removeDebugListener, removeHierarchyListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, validateSettables, workspace
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
createReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortList
isFireFunctional, isStrict, iterate, postfire, prefire, stop, stopFire, terminate
addInitializable, preinitialize, removeInitializable
description, getContainer, getDisplayName, getFullName, getName, getName, setName
getDerivedLevel, getDerivedList, propagateValue
public TypedIOPort input
public StringParameter path
public WebSocketWriter(CompositeEntity container, java.lang.String name) throws IllegalActionException, NameDuplicationException
container
- The containername
- The name.IllegalActionException
- If the superclass throws it.NameDuplicationException
- If the superclass throws it.public void attributeChanged(Attribute attribute) throws IllegalActionException
attributeChanged
in class NamedObj
attribute
- The attribute that changed.IllegalActionException
- If the change is not acceptable
to this container (not thrown in this base class).public java.lang.Object clone(Workspace workspace) throws java.lang.CloneNotSupportedException
clone
in class TypedAtomicActor
workspace
- The workspace in which to place the cloned attribute.java.lang.CloneNotSupportedException
- Not thrown in this base class.Object.clone()
public void fire() throws IllegalActionException
fire
in interface Executable
fire
in class AtomicActor<TypedIOPort>
IllegalActionException
- If the websocket connection cannot be
established or if the message cannot be written.public java.net.URI getRelativePath()
getRelativePath
in interface WebSocketService
setRelativePath(URI)
public void initialize() throws IllegalActionException
initialize
in interface Initializable
initialize
in class AtomicActor<TypedIOPort>
IllegalActionException
- If the parent throws it.public boolean isLocal()
public void onMessage(WebSocketEndpoint sender, java.lang.String message)
onMessage
in interface WebSocketService
sender
- The WebSocketEndpoint that sent the message.message
- The message that was received from the websocket.public void open(java.net.URI path) throws IllegalActionException
path
- The URI to connect to.IllegalActionException
- If the websocket cannot be opened.public void setConnection(org.eclipse.jetty.websocket.WebSocket.Connection connection)
setConnection
in interface WebSocketService
connection
- The connection that this WebSocketService will use.public void setRelativePath(java.net.URI path)
setRelativePath
in interface WebSocketService
path
- The relative path that this WebSocketService is mapped to.getRelativePath()
public void wrapup() throws IllegalActionException
wrapup
in interface Initializable
wrapup
in class AtomicActor<TypedIOPort>
IllegalActionException
- If thrown by the parent.