public interface ResourceGroupLifeCycleRuntimeMBean extends RuntimeMBean
Provides methods that transition resource groups from one state to another. This class is instantiated once for each resource group but only on the Administration Server. Even so, you can use a resource group's instance to change the state of the resource group on Managed Servers as well as on the Administration Server.
Detecting when Operations Complete
Methods representing operations on resource groups return a ResourceGroupLifeCycleTaskRuntimeMBean
object.
The caller should monitor the returned instance, invoking its
TaskRuntimeMBean.isRunning()
method to detect when the operation has completed. In particular,
the caller should not rely on the value returned from ResourceGroupLifeCycleRuntimeMBean.getState()
to indicate when an
operation on a resource group that is targeted to multiple servers has finished. That value will be accurate as described
in detail on ResourceGroupLifeCycleRuntimeMBean.getState()
but can change before the operation has finished.
Desired States
The system tracks the desired state for each resource group, which defaults to the state RUNNING
.
Whenever a lifecycle operation method is called the system not only performs the requested action on the
resource group but also records the resulting state as the new desired state for the resource group.
The system uses the desired state for a resource group to bring the resource group to the correct state during
server and partition start-up.
The desired can also be used when the ResourceGroupLifeCycleRuntimeMBean.getState()
method computes the overall state for the resource group.
Modifier and Type | Method and Description |
---|---|
ResourceGroupLifeCycleTaskRuntimeMBean |
forceShutdown()
Begins to force the shutdown of this resource group on all targeted servers, changing its state to
SHUTDOWN . |
ResourceGroupLifeCycleTaskRuntimeMBean |
forceShutdown(TargetMBean[] targets)
Begins to force the shutdown of this resource group on the specified targets, changing its state to
SHUTDOWN . |
ResourceGroupLifeCycleTaskRuntimeMBean |
forceSuspend()
Begins the forceful transition of this resource group from the
RUNNING state to the ADMIN state on all targeted servers. |
ResourceGroupLifeCycleTaskRuntimeMBean |
forceSuspend(TargetMBean[] targets)
Begins the forceful transition of this resource group from the
RUNNING state to the ADMIN state on the specified targets. |
String |
getState()
The current overall state of the resource group.
|
ResourceGroupLifeCycleTaskRuntimeMBean[] |
getTasks()
The preexisting resource group lifecycle tasks
|
ResourceGroupLifeCycleTaskRuntimeMBean |
lookupTask(String taskName)
The preexisting partition lifecycle task.
|
void |
purgeTasks()
Clears the retained task collection.
|
ResourceGroupLifeCycleTaskRuntimeMBean |
resume()
Begins the transition of this resource group from the
ADMIN state to the RUNNING
state on all targeted servers. |
ResourceGroupLifeCycleTaskRuntimeMBean |
resume(TargetMBean[] targets)
Begins the transition of this resource group from the
ADMIN state to the RUNNING
state on the specified targets. |
ResourceGroupLifeCycleTaskRuntimeMBean |
shutdown()
Begins to shut down the resource group gracefully on all targeted servers, changing its state to
SHUTDOWN . |
ResourceGroupLifeCycleTaskRuntimeMBean |
shutdown(int timeout,
boolean ignoreSessions)
Begins to shut down this resource group gracefully on all targeted servers, changing its state to
SHUTDOWN . |
ResourceGroupLifeCycleTaskRuntimeMBean |
shutdown(int timeout,
boolean ignoreSessions,
boolean waitForAllSessions)
Begins to shut down this resource group gracefully on all targeted servers, changing its state to
SHUTDOWN . |
ResourceGroupLifeCycleTaskRuntimeMBean |
shutdown(int timeout,
boolean ignoreSessions,
boolean waitForAllSessions,
TargetMBean[] targets)
Begins to shut down this resource group gracefully on the specified targets, changing its state to
SHUTDOWN . |
ResourceGroupLifeCycleTaskRuntimeMBean |
shutdown(int timeout,
boolean ignoreSessions,
TargetMBean[] targets)
Begins to shut down this resource group gracefully on the specified targets, changing its state to
SHUTDOWN . |
ResourceGroupLifeCycleTaskRuntimeMBean |
shutdown(TargetMBean[] targets)
Begins to shut down this resource group gracefully on the specified targets, changing its state to
SHUTDOWN . |
ResourceGroupLifeCycleTaskRuntimeMBean |
start()
Begins to start this resource group on all targeted servers, changing its state to
RUNNING . |
ResourceGroupLifeCycleTaskRuntimeMBean |
start(TargetMBean[] targets)
Begins to start this resource group on the specified targets, changing its state to
RUNNING . |
ResourceGroupLifeCycleTaskRuntimeMBean |
startInAdmin()
Begins to start this resource group in the admin state on all targeted servers, changing its state to
ADMIN . |
ResourceGroupLifeCycleTaskRuntimeMBean |
startInAdmin(TargetMBean[] targets)
Begins to start this resource group in the admin state on the specified targets, changing its state to
ADMIN . |
ResourceGroupLifeCycleTaskRuntimeMBean |
suspend()
Begins the graceful transition of this resource group from the
RUNNING state to the ADMIN state on all targeted servers. |
ResourceGroupLifeCycleTaskRuntimeMBean |
suspend(int timeout,
boolean ignoreSessions)
Begins to transition the resource group from
RUNNING to
ADMIN state gracefully on all targeted servers. |
ResourceGroupLifeCycleTaskRuntimeMBean |
suspend(int timeout,
boolean ignoreSessions,
TargetMBean[] targets)
Begins to transition this resource group from
RUNNING to
ADMIN state gracefully on the specified targets. |
ResourceGroupLifeCycleTaskRuntimeMBean |
suspend(TargetMBean[] targets)
Begins the graceful transition of this resource group from the
RUNNING state to the ADMIN state on the specified targets. |
addPropertyChangeListener, removePropertyChangeListener
getMBeanInfo, getName, getObjectName, getParent, getType, isCachingDisabled, isRegistered, setName, setParent
getAttribute, getAttributes, invoke, setAttribute, setAttributes
postDeregister, postRegister, preDeregister, preRegister
addNotificationListener, getNotificationInfo, removeNotificationListener
ResourceGroupLifeCycleTaskRuntimeMBean start() throws ResourceGroupLifecycleException
Begins to start this resource group on all targeted servers, changing its state to RUNNING
.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
ResourceGroupLifecycleException
- if start operation failsString getState()
The current overall state of the resource group.
The value returned is the highest state for the resource group on all servers where it is targeted.
As a result, the overall resource group state can change (for example, to RUNNING
)
as soon as the operation (such as start) has finished on one server, even while the operation is still in progress elsewhere.
If the resource group is not currently targeted to any running server then its reported state is the desired state indicated by the most recent resource group life cycle operation on the resource group.
ResourceGroupLifeCycleTaskRuntimeMBean[] getTasks()
ResourceGroupLifeCycleTaskRuntimeMBean lookupTask(String taskName)
The preexisting partition lifecycle task.
taskName
- ResourceGroupLifeCycleTaskRuntimeMBean start(TargetMBean[] targets) throws ResourceGroupLifecycleException
Begins to start this resource group on the specified targets, changing its state to RUNNING
.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this resource groupResourceGroupLifecycleException
- if the start failsResourceGroupLifeCycleTaskRuntimeMBean startInAdmin(TargetMBean[] targets) throws ResourceGroupLifecycleException
Begins to start this resource group in the admin state on the specified targets, changing its state to ADMIN
.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this resource group in "admin" stateResourceGroupLifecycleException
- if the start failsResourceGroupLifeCycleTaskRuntimeMBean startInAdmin() throws ResourceGroupLifecycleException
Begins to start this resource group in the admin state on all targeted servers, changing its state to ADMIN
.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
ResourceGroupLifecycleException
- if the start failsResourceGroupLifeCycleTaskRuntimeMBean shutdown(int timeout, boolean ignoreSessions, boolean waitForAllSessions) throws ResourceGroupLifecycleException
SHUTDOWN
.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
timeout
- Number of seconds to wait before aborting inflight work
and force shutting down the server.ignoreSessions
- Set to true
to ignore pending HTTP
sessions during inflight work handling.waitForAllSessions
- Set to true
to wait for all HTTP sessions
duirng inflight work handling; false
to wait for non-persisted
HTTP sessions only.ResourceGroupLifecycleException
- If the resource group fails to gracefully
shutdown. A ResourceGroupLifeCycleRuntimeMBean.forceShutdown()
operation can be invoked.ResourceGroupLifeCycleTaskRuntimeMBean shutdown(int timeout, boolean ignoreSessions, boolean waitForAllSessions, TargetMBean[] targets) throws ResourceGroupLifecycleException
SHUTDOWN
.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
timeout
- Number of seconds to wait before aborting inflight work
and force shutting down the server.ignoreSessions
- Set to true
to ignore pending HTTP
sessions during inflight work handling.waitForAllSessions
- Set to true
to wait for all HTTP sessions
duirng inflight work handling; false
to wait for non-persisted
HTTP sessions only.targets
- the specific targets on which to shut down this resource groupResourceGroupLifecycleException
- If the resource group fails to gracefully
shutdown. A ResourceGroupLifeCycleRuntimeMBean.forceShutdown()
operation can be invoked.ResourceGroupLifeCycleTaskRuntimeMBean shutdown(int timeout, boolean ignoreSessions, TargetMBean[] targets) throws ResourceGroupLifecycleException
Begins to shut down this resource group gracefully on the specified targets, changing its state to SHUTDOWN
.
(equivalent to shutdown(timeout, ignoreSessions, false, targets)).
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
timeout
- Number of seconds to wait before aborting
inflight work and shutting down the server.ignoreSessions
- true
indicates ignore pending
HTTP sessions during inflight work handling.targets
- the specific targets on which to shut down this resource groupResourceGroupLifecycleException
- Thrown if the resource group cannot
gracefully shutdown. Use the forceShutdown command to shutdown the resource group.ResourceGroupLifeCycleTaskRuntimeMBean shutdown(int timeout, boolean ignoreSessions) throws ResourceGroupLifecycleException
Begins to shut down this resource group gracefully on all targeted servers, changing its state to SHUTDOWN
.
(equivalent to shutdown(timeout, ignoreSessions, false)).
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
timeout
- Number of seconds to wait before aborting
inflight work and shutting down the server.ignoreSessions
- true
indicates ignore pending
HTTP sessions during inflight work handling.ResourceGroupLifecycleException
- Thrown if the resource group cannot
gracefully shutdown. Use the forceShutdown command to shutdown the resource group.ResourceGroupLifeCycleTaskRuntimeMBean shutdown(TargetMBean[] targets) throws ResourceGroupLifecycleException
Begins to shut down this resource group gracefully on the specified targets, changing its state to SHUTDOWN
.
(equivalent to shutdown(targets, 0, false)).
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this resource groupResourceGroupLifecycleException
- if the shutdown failsResourceGroupLifeCycleTaskRuntimeMBean shutdown() throws ResourceGroupLifecycleException
Begins to shut down the resource group gracefully on all targeted servers, changing its state to SHUTDOWN
.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
ResourceGroupLifecycleException
- if the shutdown failsResourceGroupLifeCycleTaskRuntimeMBean forceShutdown(TargetMBean[] targets) throws ResourceGroupLifecycleException
Begins to force the shutdown of this resource group on the specified targets, changing its state to SHUTDOWN
.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this resource groupResourceGroupLifecycleException
- if the resource group fails to shut downResourceGroupLifeCycleTaskRuntimeMBean forceShutdown() throws ResourceGroupLifecycleException
Begins to force the shutdown of this resource group on all targeted servers, changing its state to SHUTDOWN
.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
ResourceGroupLifecycleException
- if the resource group fails to shut downResourceGroupLifeCycleTaskRuntimeMBean suspend(int timeout, boolean ignoreSessions, TargetMBean[] targets) throws ResourceGroupLifecycleException
RUNNING
to
ADMIN
state gracefully on the specified targets.
Applications are in admin mode. Inflight work is completed.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
timeout
- Seconds to wait for the resource group to transition gracefully.
The resource group automatically calls ResourceGroupLifeCycleRuntimeMBean.forceSuspend()
after timeout.ignoreSessions
- drop inflight HTTP sessions during graceful suspendtargets
- the specific targets on which to start this resource groupResourceGroupLifecycleException
- resource group failed to suspend gracefully.
A ResourceGroupLifeCycleRuntimeMBean.forceSuspend()
or a ResourceGroupLifeCycleRuntimeMBean.forceShutdown()
operation can be
invoked.ResourceGroupLifeCycleTaskRuntimeMBean suspend(int timeout, boolean ignoreSessions) throws ResourceGroupLifecycleException
RUNNING
to
ADMIN
state gracefully on all targeted servers.
Applications are in admin mode. Inflight work is completed.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
timeout
- Seconds to wait for the resource group to transition gracefully.
The resource group automatically calls ResourceGroupLifeCycleRuntimeMBean.forceSuspend()
after timeout.ignoreSessions
- drop inflight HTTP sessions during graceful suspendResourceGroupLifecycleException
- resource group failed to suspend gracefully.
A ResourceGroupLifeCycleRuntimeMBean.forceSuspend()
or a ResourceGroupLifeCycleRuntimeMBean.forceShutdown()
operation can be
invoked.ResourceGroupLifeCycleTaskRuntimeMBean suspend(TargetMBean[] targets) throws ResourceGroupLifecycleException
RUNNING
state to the ADMIN
state on the specified targets.
(equivalent to suspend(0, false, targets))
New requests
are rejected and inflight work is allowed to complete.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this resource groupResourceGroupLifecycleException
- If the operation failsResourceGroupLifeCycleRuntimeMBean.suspend(int, boolean)
ResourceGroupLifeCycleTaskRuntimeMBean suspend() throws ResourceGroupLifecycleException
RUNNING
state to the ADMIN
state on all targeted servers.
(equivalent to suspend(0, false))
New requests
are rejected and inflight work is allowed to complete.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
ResourceGroupLifecycleException
- If the operation failsResourceGroupLifeCycleRuntimeMBean.suspend(int, boolean)
ResourceGroupLifeCycleTaskRuntimeMBean forceSuspend(TargetMBean[] targets) throws ResourceGroupLifecycleException
RUNNING
state to the ADMIN
state on the specified targets.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this resource groupResourceGroupLifecycleException
- the resource group could not suspend.ResourceGroupLifeCycleTaskRuntimeMBean forceSuspend() throws ResourceGroupLifecycleException
RUNNING
state to the ADMIN
state on all targeted servers.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
ResourceGroupLifecycleException
- the resource group could not suspend.ResourceGroupLifeCycleTaskRuntimeMBean resume(TargetMBean[] targets) throws ResourceGroupLifecycleException
ADMIN
state to the RUNNING
state on the specified targets.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this resource groupResourceGroupLifecycleException
- If the resume operation failsResourceGroupLifeCycleTaskRuntimeMBean resume() throws ResourceGroupLifecycleException
ADMIN
state to the RUNNING
state on all targeted servers.
Use the returned ResourceGroupLifeCycleTaskRuntimeMBean
value to check for completion.
ResourceGroupLifecycleException
- If the resume operation failsvoid purgeTasks()