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 handler

Has to be defined as a global Yamcs service. The ReplicationMaster or ReplicationSlave defined at the instance level will register to this if the tcpRole is set to "Server".

  • Constructor Details

    • ReplicationServer

      public ReplicationServer()
  • Method Details

    • getSpec

      public Spec getSpec()
      Description copied from interface: YamcsService
      Returns the valid configuration options for this service.
      Returns:
      the argument specification, or null if the args should not be validated.
    • 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 interface YamcsService
      Overrides:
      init in class AbstractYamcsService
      Parameters:
      yamcsInstance - The yamcs instance, or null if this is a global service.
      serviceName - The service name.
      config - The configured arguments for this service. If YamcsService.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 class com.google.common.util.concurrent.AbstractService
    • doStop

      protected void doStop()
      Specified by:
      doStop in class com.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)