Package org.teamapps.cluster.service
Class AtomixCluster
java.lang.Object
org.teamapps.cluster.service.AtomixCluster
- All Implemented Interfaces:
FileProvider,ServiceRegistry
public class AtomixCluster extends java.lang.Object implements FileProvider, ServiceRegistry
-
Field Summary
Fields Modifier and Type Field Description org.teamapps.event.Event<io.atomix.cluster.Member>onMemberAddedorg.teamapps.event.Event<io.atomix.cluster.Member>onMemberRemoved -
Constructor Summary
Constructors Constructor Description AtomixCluster(java.lang.String clusterKey)AtomixCluster(java.lang.String clusterKey, java.io.File tempDir) -
Method Summary
Modifier and Type Method Description voidconnect(int localPort, java.lang.String bootstrapNodes)<REQUEST extends Message, RESPONSE extends Message>
reactor.core.publisher.Mono<RESPONSE>createServiceTask(java.lang.String serviceName, java.lang.String messageType, REQUEST request, MessageDecoder<RESPONSE> responseDecoder)voiddisconnect()java.io.FilegetFile(java.lang.String fileId)booleanisServiceAvailable(java.lang.String serviceName)voidregisterService(AbstractClusterService clusterService)voidsetRetryBackoffDuration(java.time.Duration retryBackoffDuration)voidsetRetryMaxAttempts(int retryMaxAttempts)Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
onMemberAdded
public final org.teamapps.event.Event<io.atomix.cluster.Member> onMemberAdded -
onMemberRemoved
public final org.teamapps.event.Event<io.atomix.cluster.Member> onMemberRemoved
-
-
Constructor Details
-
AtomixCluster
public AtomixCluster(java.lang.String clusterKey) throws java.io.IOException- Throws:
java.io.IOException
-
AtomixCluster
public AtomixCluster(java.lang.String clusterKey, java.io.File tempDir) throws java.io.IOException- Throws:
java.io.IOException
-
-
Method Details
-
getFile
public java.io.File getFile(java.lang.String fileId)- Specified by:
getFilein interfaceFileProvider
-
isServiceAvailable
public boolean isServiceAvailable(java.lang.String serviceName)- Specified by:
isServiceAvailablein interfaceServiceRegistry
-
createServiceTask
public <REQUEST extends Message, RESPONSE extends Message> reactor.core.publisher.Mono<RESPONSE> createServiceTask(java.lang.String serviceName, java.lang.String messageType, REQUEST request, MessageDecoder<RESPONSE> responseDecoder)- Specified by:
createServiceTaskin interfaceServiceRegistry
-
connect
public void connect(int localPort, java.lang.String bootstrapNodes) -
registerService
- Specified by:
registerServicein interfaceServiceRegistry
-
disconnect
public void disconnect() -
setRetryMaxAttempts
public void setRetryMaxAttempts(int retryMaxAttempts) -
setRetryBackoffDuration
public void setRetryBackoffDuration(java.time.Duration retryBackoffDuration)
-