com.fasterxml.clustermate.client.NetworkClient Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of clustermate-client Show documentation
Show all versions of clustermate-client Show documentation
Building blocks for client libraries that access
ClusterMate-based service.
package com.fasterxml.clustermate.client;
import com.fasterxml.storemate.shared.IpAndPort;
import com.fasterxml.clustermate.api.EntryKey;
import com.fasterxml.clustermate.api.EntryKeyConverter;
import com.fasterxml.clustermate.api.RequestPathBuilder;
/**
* Factory abstraction used to separate details of physical network Client,
* and logical functionality needed by higher-level client implementation.
*/
public abstract class NetworkClient
{
/**
* Factory method for getting a path builder initialized with specified
* host, but without actual path.
*/
public abstract RequestPathBuilder pathBuilder(IpAndPort server);
/**
* Method to call to shut down client implementation; called when
* main client library is stopped.
*/
public abstract void shutdown();
/**
* Accessor for factory method(s) for creating per-server accessor objects.
*/
public abstract EntryAccessors getEntryAccessors();
public abstract EntryKeyConverter getKeyConverter();
}