Package org.yamcs.replication
Class ReplicationMaster
- java.lang.Object
-
- com.google.common.util.concurrent.AbstractService
-
- org.yamcs.AbstractYamcsService
-
- org.yamcs.replication.ReplicationMaster
-
- All Implemented Interfaces:
com.google.common.util.concurrent.Service,YamcsService
public class ReplicationMaster extends AbstractYamcsService
Implements the master part of the replication. At any moment there is one current file where the replication data is written.
-
-
Field Summary
-
Fields inherited from class org.yamcs.AbstractYamcsService
config, log, serviceName, yamcsInstance
-
-
Constructor Summary
Constructors Constructor Description ReplicationMaster()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoStart()protected voiddoStop()ReplicationFilegetFile(long startTxId)Get the file where startTxId transaction is or the earliest file available if the transaction is in the pastvoidinit(String yamcsInstance, String serviceName, YConfiguration config)Initialize this service.io.netty.channel.ChannelHandlernewChannelHandler(Request req)-
Methods inherited from class org.yamcs.AbstractYamcsService
getConfig, getYamcsInstance
-
Methods inherited from class com.google.common.util.concurrent.AbstractService
addListener, awaitRunning, awaitRunning, awaitTerminated, awaitTerminated, 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, 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:YamcsServiceInitialize this service. This is called before the service is started. All operations should finish fast.- Specified by:
initin interfaceYamcsService- Overrides:
initin classAbstractYamcsService- Parameters:
yamcsInstance- The yamcs instance, or null 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:
doStartin classcom.google.common.util.concurrent.AbstractService
-
doStop
protected void doStop()
- Specified by:
doStopin classcom.google.common.util.concurrent.AbstractService
-
newChannelHandler
public io.netty.channel.ChannelHandler newChannelHandler(Request req)
-
getFile
public ReplicationFile getFile(long startTxId)
Get the file where startTxId transaction is or the earliest file available if the transaction is in the pastReturn null if the transaction is in the future. If there is a file which does not contain the startTxId but it's just the next one to come, then return that file.
- Parameters:
startTxId-- Returns:
-
-