public interface HazelcastInstance
Modifier and Type | Method and Description |
---|---|
String |
addDistributedObjectListener(DistributedObjectListener distributedObjectListener)
Adds a Distributed Object listener which will be notified when a
new
DistributedObject will be created or destroyed. |
<T> T |
executeTransaction(TransactionalTask<T> task)
Executes the given transactional task in current thread using default options
and returns the result of the task.
|
<T> T |
executeTransaction(TransactionOptions options,
TransactionalTask<T> task)
Executes the given transactional task in current thread using given options
and returns the result of the task.
|
IAtomicLong |
getAtomicLong(String name)
Creates cluster-wide atomic long.
|
<E> IAtomicReference<E> |
getAtomicReference(String name)
Creates cluster-wide atomic reference.
|
ICacheManager |
getCacheManager()
Obtain the
ICacheManager that provides access to JSR-107 (JCache) caches configured on a Hazelcast cluster. |
CardinalityEstimator |
getCardinalityEstimator(String name)
Obtain a
CardinalityEstimator with the given name. |
ClientService |
getClientService()
Returns the client service of this Hazelcast instance.
|
Cluster |
getCluster()
Returns the Cluster that this Hazelcast instance is part of.
|
Config |
getConfig()
Returns the configuration of this Hazelcast instance.
|
ICountDownLatch |
getCountDownLatch(String name)
Creates cluster-wide CountDownLatch.
|
<T extends DistributedObject> |
getDistributedObject(String serviceName,
String name) |
Collection<DistributedObject> |
getDistributedObjects()
Returns all
DistributedObject 's such as; queue, map, set, list, topic, lock, multimap. |
DurableExecutorService |
getDurableExecutorService(String name)
Returns the durable executor service for the given name.
|
IExecutorService |
getExecutorService(String name)
Returns the distributed executor service for the given name.
|
FlakeIdGenerator |
getFlakeIdGenerator(String name)
Creates a cluster-wide unique ID generator.
|
IdGenerator |
getIdGenerator(String name)
Deprecated.
The implementation can produce duplicate IDs in case of network split, even
with split-brain protection enabled (during short window while split-brain is detected).
Use
getFlakeIdGenerator(String) for an alternative implementation which does not
suffer from this problem. |
JobTracker |
getJobTracker(String name)
Deprecated.
MapReduce is deprecated and will be removed in 4.0.
For map aggregations, you can use
Aggregator on IMap.
For general data processing, it is superseded by Hazelcast Jet. |
LifecycleService |
getLifecycleService()
Returns the lifecycle service for this instance.
|
<E> IList<E> |
getList(String name)
Returns the distributed list instance with the specified name.
|
Endpoint |
getLocalEndpoint()
Returns the local Endpoint which this HazelcastInstance belongs to.
|
ILock |
getLock(String key)
Returns the distributed lock instance for the specified key object.
|
LoggingService |
getLoggingService()
Returns the logging service of this Hazelcast instance.
|
<K,V> IMap<K,V> |
getMap(String name)
Returns the distributed map instance with the specified name.
|
<K,V> MultiMap<K,V> |
getMultiMap(String name)
Returns the distributed multimap instance with the specified name.
|
String |
getName()
Returns the name of this Hazelcast instance.
|
PartitionService |
getPartitionService()
Returns the partition service of this Hazelcast instance.
|
PNCounter |
getPNCounter(String name)
Obtain a
PNCounter with the given
name. |
<E> IQueue<E> |
getQueue(String name)
Returns the distributed queue instance with the specified name.
|
QuorumService |
getQuorumService()
Returns the quorum service of this Hazelcast instance.
|
<E> ITopic<E> |
getReliableTopic(String name)
Returns the reliable ReliableTopic instance with the specified name.
|
<K,V> ReplicatedMap<K,V> |
getReplicatedMap(String name)
Returns the replicated map instance with the specified name.
|
<E> Ringbuffer<E> |
getRingbuffer(String name)
Returns the distributed Ringbuffer instance with the specified name.
|
IScheduledExecutorService |
getScheduledExecutorService(String name)
Returns the
IScheduledExecutorService scheduled executor service for the given name. |
ISemaphore |
getSemaphore(String name)
Creates cluster-wide semaphore.
|
<E> ISet<E> |
getSet(String name)
Returns the distributed set instance with the specified name.
|
<E> ITopic<E> |
getTopic(String name)
Returns the distributed topic instance with the specified name.
|
ConcurrentMap<String,Object> |
getUserContext()
Returns a ConcurrentMap that can be used to add user-context to the HazelcastInstance.
|
HazelcastXAResource |
getXAResource()
Gets xaResource which will participate in XATransaction.
|
TransactionContext |
newTransactionContext()
Creates a new TransactionContext associated with the current thread using default options.
|
TransactionContext |
newTransactionContext(TransactionOptions options)
Creates a new TransactionContext associated with the current thread with given options.
|
boolean |
removeDistributedObjectListener(String registrationId)
Removes the specified Distributed Object listener.
|
void |
shutdown()
Shuts down this HazelcastInstance.
|
String getName()
<E> IQueue<E> getQueue(String name)
name
- name of the distributed queue<E> ITopic<E> getTopic(String name)
name
- name of the distributed topic<E> ISet<E> getSet(String name)
name
- name of the distributed set<E> IList<E> getList(String name)
name
- name of the distributed list<K,V> IMap<K,V> getMap(String name)
name
- name of the distributed map<K,V> ReplicatedMap<K,V> getReplicatedMap(String name)
name
- name of the distributed mapReplicatedMapCantBeCreatedOnLiteMemberException
- if it is called on a lite memberJobTracker getJobTracker(String name)
Aggregator
on IMap.
For general data processing, it is superseded by Hazelcast Jet.name
- name of the job tracker<K,V> MultiMap<K,V> getMultiMap(String name)
name
- name of the distributed multimapILock getLock(String key)
Lock lock = hazelcastInstance.getLock("PROCESS_LOCK"); lock.lock(); try { // process } finally { lock.unlock(); }
key
- key of the lock instance<E> Ringbuffer<E> getRingbuffer(String name)
name
- name of the distributed Ringbuffer<E> ITopic<E> getReliableTopic(String name)
name
- name of the reliable ITopicCluster getCluster()
Endpoint getLocalEndpoint()
IExecutorService getExecutorService(String name)
Note: Note that it doesn't support invokeAll/Any
and doesn't have standard shutdown behavior
name
- name of the executor serviceDurableExecutorService getDurableExecutorService(String name)
Note: Note that it doesn't support invokeAll/Any
and doesn't have standard shutdown behavior
name
- name of the executor service<T> T executeTransaction(TransactionalTask<T> task) throws TransactionException
T
- return type of tasktask
- the transactional task to be executedTransactionException
- if an error occurs during transaction.<T> T executeTransaction(TransactionOptions options, TransactionalTask<T> task) throws TransactionException
T
- return type of taskoptions
- options for this transactional tasktask
- task to be executedTransactionException
- if an error occurs during transaction.TransactionContext newTransactionContext()
TransactionContext newTransactionContext(TransactionOptions options)
options
- options for this transaction@Deprecated IdGenerator getIdGenerator(String name)
getFlakeIdGenerator(String)
for an alternative implementation which does not
suffer from this problem.long
primitive values
between 0 and Long.MAX_VALUE. ID generation occurs almost at the speed of
local AtomicLong.incrementAndGet(). Generated IDs are unique during the life
cycle of the cluster. If the entire cluster is restarted, IDs start from 0 again.name
- name of the IdGenerator
FlakeIdGenerator getFlakeIdGenerator(String name)
long
primitive values
and are k-ordered (roughly ordered). IDs are in the range from 0
to Long.MAX_VALUE
.
The IDs contain timestamp component and a node ID component, which is assigned when the member
joins the cluster. This allows the IDs to be ordered and unique without any coordination between
members, which makes the generator safe even in split-brain scenario (for caveats,
see here
).
For more details and caveats, see class documentation for FlakeIdGenerator
.
Note: this implementation doesn't share namespace with getIdGenerator(String)
.
That is, getIdGenerator("a")
is distinct from getFlakeIdGenerator("a")
.
name
- name of the FlakeIdGenerator
IAtomicLong getAtomicLong(String name)
IAtomicLong
is distributed
implementation of java.util.concurrent.atomic.AtomicLong.name
- name of the IAtomicLong
proxy<E> IAtomicReference<E> getAtomicReference(String name)
IAtomicReference
is distributed
implementation of java.util.concurrent.atomic.AtomicReference.name
- name of the IAtomicReference
proxyIAtomicReference
proxy for the given nameICountDownLatch getCountDownLatch(String name)
ICountDownLatch
is distributed
implementation of java.util.concurrent.CountDownLatch.name
- name of the ICountDownLatch
proxyICountDownLatch
proxy for the given nameISemaphore getSemaphore(String name)
ISemaphore
is distributed
implementation of java.util.concurrent.Semaphore.name
- name of the ISemaphore
proxyISemaphore
proxy for the given nameCollection<DistributedObject> getDistributedObjects()
DistributedObject
's such as; queue, map, set, list, topic, lock, multimap.String addDistributedObjectListener(DistributedObjectListener distributedObjectListener)
DistributedObject
will be created or destroyed.distributedObjectListener
- instance listenerboolean removeDistributedObjectListener(String registrationId)
registrationId
- ID of listener registrationtrue
if registration is removed, false
otherwiseConfig getConfig()
PartitionService getPartitionService()
QuorumService getQuorumService()
Quorum service can be used to retrieve quorum callbacks which let you to notify quorum results of your own to the cluster quorum service. IMPORTANT: The term "quorum" simply refers to the count of members in the cluster required for an operation to succeed. It does NOT refer to an implementation of Paxos or Raft protocols as used in many NoSQL and distributed systems. The mechanism it provides in Hazelcast protects the user in case the number of nodes in a cluster drops below the specified one.
ClientService getClientService()
ClientService
of this Hazelcast instance.LoggingService getLoggingService()
LoggingService allows you to listen for LogEvents generated by Hazelcast runtime. You can log the events somewhere or take action based on the message.
LifecycleService getLifecycleService()
LifecycleService allows you to shutdown this HazelcastInstance and listen for the lifecycle events.
<T extends DistributedObject> T getDistributedObject(String serviceName, String name)
T
- type of the DistributedObjectserviceName
- name of the servicename
- name of the objectConcurrentMap<String,Object> getUserContext()
HazelcastInstanceAware
interface when submitting a Runnable/Callable to
Hazelcast ExecutorService. By storing the dependencies in the user-context, they can be retrieved as soon
as you have a reference to the HazelcastInstance.
This structure is purely local and Hazelcast remains agnostic abouts its content.
HazelcastXAResource getXAResource()
ICacheManager getCacheManager()
ICacheManager
that provides access to JSR-107 (JCache) caches configured on a Hazelcast cluster.
Note that this method does not return a JCache CacheManager
; to obtain a JCache
CacheManager
use JCache standard API.
ICacheManager
ICacheManager
CardinalityEstimator getCardinalityEstimator(String name)
CardinalityEstimator
with the given name.
The estimator can be used to efficiently estimate the cardinality of unique entities in big data sets, without the need of storing them.
The estimator is based on a HyperLogLog++ data-structure.
name
- the name of the estimatorCardinalityEstimator
PNCounter getPNCounter(String name)
PNCounter
with the given
name.
The PN counter can be used as a counter with strong eventual consistency guarantees - if operations to the counters stop, the counter values of all replicas that can communicate with each other should eventually converge to the same value.
name
- the name of the PN counterPNCounter
IScheduledExecutorService getScheduledExecutorService(String name)
IScheduledExecutorService
scheduled executor service for the given name.
ScheduledExecutor service enables you to schedule your Runnables and Callables
on the Hazelcast cluster.name
- name of the executor servicevoid shutdown()
LifecycleService.shutdown()
.Copyright © 2018 Hazelcast, Inc.. All rights reserved.