Package org.elasticsearch.core
Class AbstractRefCounted
java.lang.Object
org.elasticsearch.core.AbstractRefCounted
- All Implemented Interfaces:
RefCounted
A basic RefCounted implementation that is initialized with a
ref count of 1 and calls
closeInternal() once it reaches
a 0 ref count-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected abstract voidMethod that is invoked once the reference count reaches zero.booleandecRef()Decreases the refCount of this instance.getName()gets the name of this instancevoidincRef()Increments the refCount of this instance.intrefCount()Returns the current reference count.protected voidtouch()Called whenever the ref count is incremented or decremented.booleanTries to increment the refCount of this instance.
-
Constructor Details
-
AbstractRefCounted
-
-
Method Details
-
incRef
public final void incRef()Description copied from interface:RefCountedIncrements the refCount of this instance.- Specified by:
incRefin interfaceRefCounted- See Also:
RefCounted.decRef(),RefCounted.tryIncRef()
-
tryIncRef
public final boolean tryIncRef()Description copied from interface:RefCountedTries to increment the refCount of this instance. This method will returntrueiff the refCount was- Specified by:
tryIncRefin interfaceRefCounted- See Also:
RefCounted.decRef(),RefCounted.incRef()
-
decRef
public final boolean decRef()Description copied from interface:RefCountedDecreases the refCount of this instance. If the refCount drops to 0, then this instance is considered as closed and should not be used anymore.- Specified by:
decRefin interfaceRefCounted- Returns:
- returns
trueif the ref count dropped to 0 as a result of calling this method - See Also:
RefCounted.incRef()
-
touch
protected void touch()Called whenever the ref count is incremented or decremented. Can be implemented by implementations to a record of access to the instance for debugging purposes. -
alreadyClosed
protected void alreadyClosed() -
refCount
public int refCount()Returns the current reference count. -
getName
gets the name of this instance -
closeInternal
protected abstract void closeInternal()Method that is invoked once the reference count reaches zero. Implementations of this method must handle all exceptions and may not throw any exceptions.
-