Package org.yamcs.replication
Class ReplicationServer
- java.lang.Object
-
- com.google.common.util.concurrent.AbstractService
-
- org.yamcs.AbstractYamcsService
-
- org.yamcs.replication.ReplicationServer
-
- All Implemented Interfaces:
com.google.common.util.concurrent.Service
,YamcsService
public class ReplicationServer extends AbstractYamcsService
TCP replication server - works both on the master and on the slave side depending on the channel handlerHas to be defined as a global Yamcs service. The
ReplicationMaster
orReplicationSlave
defined at the instance level will register to this if the tcpRole is set to "Server".
-
-
Field Summary
-
Fields inherited from class org.yamcs.AbstractYamcsService
config, log, serviceName, yamcsInstance
-
-
Constructor Summary
Constructors Constructor Description ReplicationServer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
doStart()
protected void
doStop()
List<io.netty.channel.Channel>
getActiveChannels(ReplicationMaster replicationMaster)
List<io.netty.channel.Channel>
getActiveChannels(ReplicationSlave replicationSlave)
void
init(String yamcsInstance, String serviceName, YConfiguration config)
Initialize this service.void
registerMaster(ReplicationMaster replicationMaster)
void
registerSlave(ReplicationSlave replicationSlave)
void
unregisterSlave(ReplicationSlave replicationSlave)
-
Methods inherited from class org.yamcs.AbstractYamcsService
getConfig, getYamcsInstance
-
Methods inherited from class com.google.common.util.concurrent.AbstractService
addListener, awaitRunning, awaitRunning, awaitRunning, awaitTerminated, awaitTerminated, awaitTerminated, doCancelStart, failureCause, isRunning, notifyFailed, notifyStarted, notifyStopped, startAsync, state, stopAsync, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.google.common.util.concurrent.Service
addListener, awaitRunning, awaitRunning, awaitRunning, awaitTerminated, awaitTerminated, awaitTerminated, failureCause, isRunning, startAsync, state, stopAsync
-
Methods inherited from interface org.yamcs.YamcsService
getSpec, init
-
-
-
-
Method Detail
-
init
public void init(String yamcsInstance, String serviceName, YConfiguration config) throws InitException
Description copied from interface:YamcsService
Initialize this service. This is called before the service is started. All operations should finish fast.- Specified by:
init
in interfaceYamcsService
- Overrides:
init
in classAbstractYamcsService
- Parameters:
yamcsInstance
- The yamcs instance, ornull
if this is a global service.serviceName
- The service name.config
- The configured arguments for this service. IfYamcsService.getSpec()
is implemented then this contains the arguments after being validated (including any defaults).- Throws:
InitException
- When something goes wrong during the execution of this method.
-
doStart
protected void doStart()
- Specified by:
doStart
in classcom.google.common.util.concurrent.AbstractService
-
doStop
protected void doStop()
- Specified by:
doStop
in classcom.google.common.util.concurrent.AbstractService
-
registerMaster
public void registerMaster(ReplicationMaster replicationMaster)
-
registerSlave
public void registerSlave(ReplicationSlave replicationSlave)
-
unregisterSlave
public void unregisterSlave(ReplicationSlave replicationSlave)
-
getActiveChannels
public List<io.netty.channel.Channel> getActiveChannels(ReplicationMaster replicationMaster)
-
getActiveChannels
public List<io.netty.channel.Channel> getActiveChannels(ReplicationSlave replicationSlave)
-
-