
public class LoaderCanOpenProxy extends CanOpenProxy
| Modifier and Type | Class and Description |
|---|---|
protected static class |
FcsTcpProxy.ClientContext
A class to handle the tcpip connexion.
|
org.lsst.ccs.framework.Module.ValueUpdate| Modifier and Type | Field and Description |
|---|---|
protected FcsTcpProxy.ClientContext |
clientContext |
static Logger |
COMMAND_LOG
A Logger for CommandDispenser.
|
protected int |
fieldBusTimeout |
protected Condition |
hardwareBooted |
protected Lock |
lock |
protected int |
portNumber |
protected boolean |
stopped |
protected boolean |
stopping |
protected boolean |
tcpServerStarted |
bootedNodes, bootingCompleted, hardwareBootProcessEnded, hardwareMapByNodeID| Constructor and Description |
|---|
LoaderCanOpenProxy(int portNumber,
int fieldBusTimeout,
String clientName,
long hardwareBootTimeout) |
| Modifier and Type | Method and Description |
|---|---|
Object |
call(String clientName,
String command)
This methods send a command to the tcp client.
|
org.lsst.ccs.framework.TreeWalkerDiag |
checkHardware()
We want that the checkHardware method does nothing during INITIALISATION
phase for the loader tcpProxy because the loader might be not connected.
|
void |
connectHardware()
This methods connect the CWrapper client, and the TCP server and check
the hardware.
|
boolean |
isReady(String clientName) |
protected void |
processUnknownCommand(String message)
Process a message received from the CAN bus when this message is an unknown message.
|
void |
start()
We don't want the tcp server to be started during INITIALISATION phase.
|
void |
startServer()
Starts the server tcp on the port portNumber.
|
void |
startThreadReader()
Starts a thread which read on the tcp socket, waiting for messages coming
from tcp proxy.
|
void |
stopServer()
Stops the tcp server.
|
canClearAlert, checkBootedCanOpenNodes, checkCanOpenCommand, checkHardwareID, checkNodeID, checkNumberOfBootedNodes, checkStarted, checkStopped, disconnectHardware, getBootedNodeBySerialNumber, getBootedSerialNumberForNode, getMyClientName, getNodeName, getPdoStorage, initialize, initModule, isBooted, isCANDevicesReady, isCWrapperConnected, isRealHardware, listBootedNodes, listHardwareNames, printBootedNodeBySerialNumber, printHardwareList, printHardwareState, printPDOStorage, processEmcyMessage, processResponseToReadSDO, processSDORequestError, publishData, publishHardwareData, publishHardwareData, readDevicesInfo, readPDOs, readSDO, readSDOCommand, retrieveHardwareInfo, sendCanOpenCommand, shutdownNow, toString, updateDeviceInfo, writeSDO, writeSDOgetNObserverThreads, getObservables, getTickMillis, init, listens, processUpdate, sendSignal, sendSignalWithTimeLimit, setNObserverThreads, setObservables, setTickMillis, signal, startTicking, tick, updateaddObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChangedclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitstartServer, startThreadReaderraiseAlarm, raiseAlarm, raiseAlarm, raiseAlarm, raiseWarning, raiseWarning, raiseWarning, raiseWarninggetComponentConfigurationEnvironment, getComponentLookup, getName, getSubsystemchange, dropSubmittedChanges, getChildren, getComponentByName, getEnvironment, getParent, getParentObject, getSubmittedChanges, isParameterConfigurable, postStart, printConfigurableParameters, setBulkParameter, submitChange, submitChanges, validateBulkChangepublic static final Logger COMMAND_LOG
@ConfigurationParameter(isFinal=true,
range="1024..99000",
description="tcpip port number on which this tcpip server starts on.")
protected int portNumber
@ConfigurationParameter(description="Timeout in Millisecond. If a command sent to the CANbus doesn\'t respond during this amount of time, we considere that they could be an issue on the hardware.") protected int fieldBusTimeout
protected volatile boolean stopped
protected volatile boolean stopping
protected volatile boolean tcpServerStarted
protected FcsTcpProxy.ClientContext clientContext
protected final Lock lock
protected final Condition hardwareBooted
public LoaderCanOpenProxy(int portNumber,
int fieldBusTimeout,
String clientName,
long hardwareBootTimeout)
public void start()
start in interface org.lsst.ccs.framework.Configurablestart in interface org.lsst.ccs.framework.HasLifecyclepublic org.lsst.ccs.framework.TreeWalkerDiag checkHardware()
throws org.lsst.ccs.HardwareException
checkHardware in interface org.lsst.ccs.framework.HardwareControllercheckHardware in interface BridgeToHardwarecheckHardware in class CanOpenProxyorg.lsst.ccs.HardwareExceptionpublic void connectHardware()
throws org.lsst.ccs.HardwareException
connectHardware in interface BridgeToHardwareconnectHardware in class CanOpenProxyorg.lsst.ccs.HardwareException@Command(type=ACTION, level=1, description="Starts the tcp server.") public void startServer()
@Command(type=ACTION, level=1, description="Starts to listen to the tcp client.") public void startThreadReader()
public void stopServer()
public boolean isReady(String clientName)
public Object call(String clientName, String command)
clientName - command - protected void processUnknownCommand(String message)
nodeID - Copyright © 2017 LSST. All rights reserved.