com.hazelcast.core
Interface IAtomicReference<E>

All Superinterfaces:
DistributedObject
All Known Subinterfaces:
AsyncAtomicReference<E>
All Known Implementing Classes:
AtomicReferenceProxy, ClientAtomicReferenceProxy

public interface IAtomicReference<E>
extends DistributedObject

IAtomicReference is a redundant and highly available distributed alternative to the java.util.concurrent.atomic.AtomicReference.

Since:
3.2
See Also:
IAtomicLong

Method Summary
 void alter(IFunction<E,E> function)
          Alters the currently stored reference by applying a function on it.
 E alterAndGet(IFunction<E,E> function)
          Alters the currently stored reference by applying a function on it and gets the result.
<R> R
apply(IFunction<E,R> function)
          Applies a function on the value, the actual stored value will not change.
 void clear()
          Clears the current stored reference.
 boolean compareAndSet(E expect, E update)
          Atomically sets the value to the given updated value only if the current value == the expected value.
 boolean contains(E value)
          Checks if the reference contains the value.
 E get()
          Gets the current value.
 E getAndAlter(IFunction<E,E> function)
          Alters the currently stored reference by applying a function on it on and gets the old value.
 E getAndSet(E newValue)
          Gets the old value and sets the new value.
 boolean isNull()
          Checks if the stored reference is null.
 void set(E newValue)
          Atomically sets the given value.
 E setAndGet(E update)
          Deprecated. will be removed from Hazelcast 3.4 since it doesn't really serve a purpose.
 
Methods inherited from interface com.hazelcast.core.DistributedObject
destroy, getId, getName, getPartitionKey, getServiceName
 

Method Detail

compareAndSet

boolean compareAndSet(E expect,
                      E update)
Atomically sets the value to the given updated value only if the current value == the expected value.

Parameters:
expect - the expected value
update - the new value
Returns:
true if successful; or false if the actual value was not equal to the expected value.

get

E get()
Gets the current value.

Returns:
the current value

set

void set(E newValue)
Atomically sets the given value.

Parameters:
newValue - the new value

getAndSet

E getAndSet(E newValue)
Gets the old value and sets the new value.

Parameters:
newValue - the new value.
Returns:
the old value.

setAndGet

E setAndGet(E update)
Deprecated. will be removed from Hazelcast 3.4 since it doesn't really serve a purpose.

Sets and gets the value.

Parameters:
update - the new value
Returns:
the new value

isNull

boolean isNull()
Checks if the stored reference is null.

Returns:
true if null, false otherwise.

clear

void clear()
Clears the current stored reference.


contains

boolean contains(E value)
Checks if the reference contains the value.

Parameters:
value - the value to check (is allowed to be null).
Returns:
true if the value is found, false otherwise.

alter

void alter(IFunction<E,E> function)
Alters the currently stored reference by applying a function on it.

Parameters:
function - the function that alters the currently stored reference
Throws:
IllegalArgumentException - if function is null.

alterAndGet

E alterAndGet(IFunction<E,E> function)
Alters the currently stored reference by applying a function on it and gets the result.

Parameters:
function - the function that alters the currently stored reference
Returns:
the new value, the result of the applied function.
Throws:
IllegalArgumentException - if function is null.

getAndAlter

E getAndAlter(IFunction<E,E> function)
Alters the currently stored reference by applying a function on it on and gets the old value.

Parameters:
function - the function that alters the currently stored reference
Returns:
the old value, the value before the function is applied
Throws:
IllegalArgumentException - if function is null.

apply

<R> R apply(IFunction<E,R> function)
Applies a function on the value, the actual stored value will not change.

Parameters:
function - the function applied on the value, the stored value does not change
Returns:
the result of the function application
Throws:
IllegalArgumentException - if function is null.


Copyright © 2015 Hazelcast, Inc.. All Rights Reserved.