/**
* @file IClusterServices.java
*
- * @brief : Set of services and application will expect from the
+ * @brief : Set of services an application will expect from the
* clustering services provider
*
* Contract between the applications and the clustering service
import javax.transaction.Transaction;
/**
- * Set of services and application will expect from the
+ * Set of services an application will expect from the
* clustering services provider
*
*/
* immediately committed in the cache.
*
*/
- NON_TRANSACTIONAL;
+ NON_TRANSACTIONAL,
+ /**
+ * Set on a cache that can transfer the updates asynchronously from the
+ * calling thread. The caller when doing put/clear/remove cannot expect
+ * that the operation has happened clusterwide
+ */
+ ASYNC,
+ /**
+ * Set on a cache that transfer the updates synchronously to the calling
+ * thread so when getting back the operation is supposed to have
+ * completed on all the cluster nodes. Slow but safe.
+ */
+ SYNC;
}
/**
*/
public enum cacheProps {
/**
- * The property returned describe the caracteristics of the
+ * The property returned describe the characteristics of the
* transaction setup for the cache it was retrieved.
*/
TRANSACTION_PROP,
/**
* The property returned report the clustering
- * caracteristics of the cache for which property was
+ * characteristics of the cache for which property was
* queried.
*/
CLUSTERING_PROP,
/**
* The property returned reports the locking
- * caracteristics of the cache for which the property was
+ * characteristics of the cache for which the property was
* queried
*/
LOCKING_PROP;
*
* @return ConcurrentHashMap to be used to modify the data structure
*/
- ConcurrentMap<?, ?> getCache(String containerName, String cacheName);
+ ConcurrentMap<? extends Object, ? extends Object> getCache(String containerName, String cacheName);
/**
* Destroy a cachename given containerName/cachename, if doesn't exist
*
* @return true if the role is the one of standby, else false
*/
+ @Deprecated
boolean amIStandby();
/**
*
* @return Address of the active controller
*/
+ @Deprecated
InetAddress getActiveAddress();
/**
*
* @param i Interface that will be called when the Role Change happens
*/
+ @Deprecated
void listenRoleChange(IListenRoleChange i)
throws ListenRoleChangeAddException;
*
* @param i Interface that will be called when the Role Change happens
*/
+ @Deprecated
void unlistenRoleChange(IListenRoleChange i);
}