Class ManagedServiceDeployment<SERVICE extends Service>

java.lang.Object
io.stargate.sdk.ManagedServiceDeployment<SERVICE>
Type Parameters:
SERVICE - the type of the service in use

public class ManagedServiceDeployment<SERVICE extends Service> extends Object
The http client implements: - load balancing in healthy nodes of the same datacenter - Fail-over across datacenter when no node available
  • Constructor Details

    • ManagedServiceDeployment

      public ManagedServiceDeployment(ServiceDeployment<SERVICE> sDeploy)
      Initialize a managed topology from its definition.
      Parameters:
      sDeploy - deployment
  • Method Details

    • useDataCenter

      public void useDataCenter(String datacenter)
      Implementing fail-over cross DC for API and CqlSession when available.
      Parameters:
      datacenter - target datacenter
    • getLocalDatacenterClient

      public ManagedServiceDatacenter<SERVICE> getLocalDatacenterClient()
      Provide the current Datacenter client.
      Returns:
      the client for the current DC
    • lookupToken

      public String lookupToken()
      Get the ApiTokenProvider of current DC. The resource should have been picked first and localDC set in StargateClient.
      Returns:
      a token
    • lookupStargateNode

      public LoadBalancedResource<SERVICE> lookupStargateNode()
      Retrieve an Api Rest URL still available in current DC or fail-over.
      Returns:
      an APi Rest URL available
    • failOverDatacenter

      public void failOverDatacenter()
      Failing over from one DC to another
    • failOverStargateNode

      public void failOverStargateNode(LoadBalancedResource<SERVICE> lb, Throwable t)
      Failing over from one Stargate node to another.
      Parameters:
      lb - current resource to be disabled
      t - source error
    • getDatacenters

      public Map<String,ManagedServiceDatacenter<SERVICE>> getDatacenters()
      Gets datacenters
      Returns:
      value of datacenters
    • getUnavailableDatacenters

      public Set<String> getUnavailableDatacenters()
      Get available DC.
      Returns:
      available dc
    • getAvailableDatacenters

      public Set<String> getAvailableDatacenters()
      Get available DC.
      Returns:
      available dc
    • toString

      public String toString()
      Overrides:
      toString in class Object