Class AlarmMirrorService

java.lang.Object
com.google.common.util.concurrent.AbstractService
org.yamcs.AbstractYamcsService
org.yamcs.alarms.AlarmMirrorService
All Implemented Interfaces:
com.google.common.util.concurrent.Service, YamcsService

public class AlarmMirrorService extends AbstractYamcsService
This service is used in a replication setup to mirror the active alarms from a master instance. It works by monitoring the replicated alarms_realtime and event_alarms_realtime and maintaining a list of active alarms.

Only reading alarms is allowed (including websocket subscription), no editing (ack, clear, shelve, etc).

Both parameters and events are supported.

  • Constructor Details

    • AlarmMirrorService

      public AlarmMirrorService()
  • Method Details

    • 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
    • getParameterServer

      public AbstractAlarmServer<Parameter,ParameterValue> getParameterServer()
    • getEventServer

      public AbstractAlarmServer<EventId,Db.Event> getEventServer()