org.infinispan.distribution
Interface DistributionManager

All Known Implementing Classes:
DistributionManagerImpl

public interface DistributionManager

A component that manages the distribution of elements across a cache cluster

Since:
4.0
Author:
Manik Surtani

Method Summary
 boolean isLocal(Object key)
           
 List<Address> locate(Object key)
          Locates a key in a cluster.
 Map<Object,List<Address>> locateAll(Collection<Object> keys)
          Locates a list of keys in a cluster.
 void rehash(Collection<Address> newList)
           
 InternalCacheEntry retrieveFromRemoteSource(Object key)
          Retrieves a cache entry from a remote source
 void transformForL1(CacheEntry entry)
          Transforms a cache entry so it is marked for L1 rather than the primary cache data structure.
 

Method Detail

rehash

void rehash(Collection<Address> newList)

isLocal

boolean isLocal(Object key)

locate

List<Address> locate(Object key)
Locates a key in a cluster. The returned addresses may not be owners of the keys if a rehash happens to be in progress or is pending, so when querying these servers, invalid responses should be checked for and the next address checked accordingly.

Parameters:
key - key to test
Returns:
a list of addresses where the key may reside

locateAll

Map<Object,List<Address>> locateAll(Collection<Object> keys)
Locates a list of keys in a cluster. Like locate(Object) the returned addresses may not be owners of the keys if a rehash happens to be in progress or is pending, so when querying these servers, invalid responses should be checked for and the next address checked accordingly.

Parameters:
keys - list of keys to test
Returns:
a list of addresses where the key may reside

transformForL1

void transformForL1(CacheEntry entry)
Transforms a cache entry so it is marked for L1 rather than the primary cache data structure.

Parameters:
entry - entry to transform

retrieveFromRemoteSource

InternalCacheEntry retrieveFromRemoteSource(Object key)
                                            throws Exception
Retrieves a cache entry from a remote source

Parameters:
key - key to look up
Returns:
an internal cache entry, or null if it cannot be located
Throws:
Exception


Copyright © 2009 JBoss, a division of Red Hat. All Rights Reserved.