@GridToStringExclude public class GridKernalGatewayImpl extends Object implements GridKernalGateway, Serializable
| Constructor and Description |
|---|
GridKernalGatewayImpl(String gridName) |
| Modifier and Type | Method and Description |
|---|---|
void |
addStopListener(Runnable lsnr)
Adds stop listener.
|
GridKernalState |
getState()
Gets current kernal state.
|
void |
lightCheck()
Performs light-weight check on the kernal state at the moment of this call.
|
void |
readLock()
Should be called on entering every kernal related call
originated directly or indirectly via public API.
|
void |
readLockAnyway()
Same as
GridKernalGateway.readLock() but doesn't throw IllegalStateException if grid stop. |
void |
readUnlock()
Should be called on leaving every kernal related call
originated directly or indirectly via public API.
|
void |
removeStopListener(Runnable lsnr)
Removes previously added stop listener.
|
void |
setState(GridKernalState state)
Sets kernal state.
|
String |
toString() |
boolean |
tryWriteLock(long timeout) |
String |
userStackTrace()
Gets user stack trace through the first call of grid public API.
|
void |
writeLock()
This method waits for all current calls to exit and blocks any further
GridKernalGateway.readLock() calls until GridKernalGateway.writeUnlock() method is called. |
void |
writeUnlock()
This method unblocks
GridKernalGateway.writeLock(). |
public GridKernalGatewayImpl(String gridName)
gridName - Grid name.public void lightCheck()
throws IllegalStateException
This method should only be used when the kernal state should be checked just once at the beginning of the method and the fact that kernal state can change in the middle of such method's execution should not matter.
For example, when a method returns a constant value its implementation doesn't depend
on the kernal being valid throughout its execution. In such case it is enough to check
the kernal's state just once at the beginning of this method to provide consistent behavior
of the API without incurring overhead of lock-based guard methods.
lightCheck in interface GridKernalGatewayIllegalStateException - Thrown in case when no kernal calls are allowed.public void readLock()
throws IllegalStateException
This method essentially acquires a read lock and multiple threads can enter the call without blocking.
readLock in interface GridKernalGatewayIllegalStateException - Thrown in case when no kernal calls are allowed.GridKernalGateway.readUnlock()public void readLockAnyway()
GridKernalGateway.readLock() but doesn't throw IllegalStateException if grid stop.readLockAnyway in interface GridKernalGatewaypublic void readUnlock()
This method essentially releases the internal read-lock acquired previously
by GridKernalGateway.readLock() method.
readUnlock in interface GridKernalGatewayGridKernalGateway.readLock()public void writeLock()
GridKernalGateway.readLock() calls until GridKernalGateway.writeUnlock() method is called.
This method essentially acquires the internal write lock.
writeLock in interface GridKernalGatewaypublic boolean tryWriteLock(long timeout)
throws InterruptedException
tryWriteLock in interface GridKernalGatewaytimeout - Timeout.True if write lock has been acquired.InterruptedException - If interrupted.public void writeUnlock()
GridKernalGateway.writeLock().
This method essentially releases internal write lock previously acquired
by GridKernalGateway.writeLock() method.
writeUnlock in interface GridKernalGatewaypublic void setState(GridKernalState state)
setState in interface GridKernalGatewaystate - Kernal state to set.public GridKernalState getState()
getState in interface GridKernalGatewaypublic void addStopListener(Runnable lsnr)
addStopListener in interface GridKernalGatewaylsnr - Listener to add.public void removeStopListener(Runnable lsnr)
removeStopListener in interface GridKernalGatewaylsnr - Listener to remove.public String userStackTrace()
userStackTrace in interface GridKernalGateway
Follow @ApacheIgnite
Ignite Fabric : ver. 1.2.0-incubating Release Date : June 16 2015