Class Client.ClusteredClient

  • Enclosing class:
    Client

    public static final class Client.ClusteredClient
    extends Client
    A Client implementation that does not operate in a session. Requests are sent to multiple servers given a LoadBalancingStrategy. Transactions are automatically committed (or rolled-back on error) after each request.
    • Method Detail

      • isClosing

        public boolean isClosing()
        Specified by:
        isClosing in class Client
      • submit

        public ResultSet submit​(String gremlin,
                                String graphOrTraversalSource)
        Submits a Gremlin script to the server and returns a ResultSet once the write of the request is complete.
        Parameters:
        gremlin - the gremlin script to execute
      • submit

        public ResultSet submit​(String gremlin,
                                String graphOrTraversalSource,
                                Map<String,​Object> parameters)
        Submits a Gremlin script and bound parameters to the server and returns a ResultSet once the write of the request is complete. If a script is to be executed repeatedly with slightly different arguments, prefer this method to concatenating a Gremlin script from dynamically produced strings and sending it to Client.submit(String). Parameterized scripts will perform better.
        Parameters:
        gremlin - the gremlin script to execute
        parameters - a map of parameters that will be bound to the script on execution
        graphOrTraversalSource - rebinds the specified global Gremlin Server variable to "g"
      • alias

        public Client alias​(String graphOrTraversalSource)
        Create a new Client that aliases the specified Graph or TraversalSource name on the server to a variable called "g" for the context of the requests made through that Client.
        Overrides:
        alias in class Client
        Parameters:
        graphOrTraversalSource - rebinds the specified global Gremlin Server variable to "g"
      • alias

        public Client alias​(Map<String,​String> aliases)
        Creates a Client that supplies the specified set of aliases, thus allowing the user to re-name one or more globally defined Graph or TraversalSource server bindings for the context of the created Client.
        Overrides:
        alias in class Client
      • chooseConnection

        protected org.apache.tinkerpop.gremlin.driver.Connection chooseConnection​(org.apache.tinkerpop.gremlin.driver.message.RequestMessage msg)
                                                                           throws TimeoutException,
                                                                                  org.apache.tinkerpop.gremlin.driver.exception.ConnectionException
        Uses a LoadBalancingStrategy to choose the best Host and then selects the best connection from that host's connection pool.
        Specified by:
        chooseConnection in class Client
        Throws:
        TimeoutException
        org.apache.tinkerpop.gremlin.driver.exception.ConnectionException
      • initializeImplementation

        protected void initializeImplementation()
        Initializes the connection pools on all hosts.
        Specified by:
        initializeImplementation in class Client
      • tryReInitializeHost

        public boolean tryReInitializeHost​(Host host)
        Attempt to re-initialize the Host that was previously marked as unavailable. This method gets called as part of a schedule in Host to periodically try to re-initialize.