All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.fasterxml.clustermate.client.NetworkClient Maven / Gradle / Ivy

There is a newer version: 0.10.5
Show newest version
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();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy