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> onMemberAdded  
    org.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
    void connect​(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)  
    void disconnect()  
    java.io.File getFile​(java.lang.String fileId)  
    boolean isServiceAvailable​(java.lang.String serviceName)  
    void registerService​(AbstractClusterService clusterService)  
    void setRetryBackoffDuration​(java.time.Duration retryBackoffDuration)  
    void setRetryMaxAttempts​(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:
      getFile in interface FileProvider
    • isServiceAvailable

      public boolean isServiceAvailable​(java.lang.String serviceName)
      Specified by:
      isServiceAvailable in interface ServiceRegistry
    • 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:
      createServiceTask in interface ServiceRegistry
    • connect

      public void connect​(int localPort, java.lang.String bootstrapNodes)
    • registerService

      public void registerService​(AbstractClusterService clusterService)
      Specified by:
      registerService in interface ServiceRegistry
    • disconnect

      public void disconnect()
    • setRetryMaxAttempts

      public void setRetryMaxAttempts​(int retryMaxAttempts)
    • setRetryBackoffDuration

      public void setRetryBackoffDuration​(java.time.Duration retryBackoffDuration)