Interface ActivationSystem
- All Superinterfaces:
Remote
public interface ActivationSystem extends Remote
The ActivationSystem
provides a means for registering groups and "activatable" objects to be activated within those groups. The ActivationSystem
works closely with the Activator
, which activates objects registered via the ActivationSystem
, and the ActivationMonitor
, which obtains information about active and inactive objects, and inactive groups.
- Since:
- 1.2
- See Also:
-
Activator
,ActivationMonitor
Field Summary
Modifier and Type | Field | Description |
---|---|---|
static int | SYSTEM_PORT | The port to lookup the activation system. |
Method Summary
Modifier and Type | Method | Description |
---|---|---|
ActivationMonitor | activeGroup(ActivationGroupID id,
ActivationInstantiator group,
long incarnation) | Callback to inform activation system that group is now active. |
ActivationDesc | getActivationDesc(ActivationID id) | Returns the activation descriptor, for the object with the activation identifier, |
ActivationGroupDesc | getActivationGroupDesc(ActivationGroupID id) | Returns the activation group descriptor, for the group with the activation group identifier, |
ActivationGroupID | registerGroup(ActivationGroupDesc desc) | Register the activation group. |
ActivationID | registerObject(ActivationDesc desc) | The |
ActivationDesc | setActivationDesc(ActivationID id,
ActivationDesc desc) | Set the activation descriptor, |
ActivationGroupDesc | setActivationGroupDesc(ActivationGroupID id,
ActivationGroupDesc desc) | Set the activation group descriptor, |
void | shutdown() | Shutdown the activation system. |
void | unregisterGroup(ActivationGroupID id) | Remove the activation group. |
void | unregisterObject(ActivationID id) | Remove the activation id and associated descriptor previously registered with the |
Field Detail
SYSTEM_PORT
static final int SYSTEM_PORT
The port to lookup the activation system.
- See Also:
- Constant Field Values
Method Detail
registerObject
ActivationID registerObject(ActivationDesc desc) throws ActivationException, UnknownGroupException, RemoteException
The registerObject
method is used to register an activation descriptor, desc
, and obtain an activation identifier for a activatable remote object. The ActivationSystem
creates an ActivationID
(a activation identifier) for the object specified by the descriptor, desc
, and records, in stable storage, the activation descriptor and its associated identifier for later use. When the Activator
receives an activate
request for a specific identifier, it looks up the activation descriptor (registered previously) for the specified identifier and uses that information to activate the object.
- Parameters:
-
desc
- the object's activation descriptor - Returns:
- the activation id that can be used to activate the object
- Throws:
-
ActivationException
- if registration fails (e.g., database update failure, etc). -
UnknownGroupException
- if group referred to indesc
is not registered with this system -
RemoteException
- if remote call fails - Since:
- 1.2
unregisterObject
void unregisterObject(ActivationID id) throws ActivationException, UnknownObjectException, RemoteException
Remove the activation id and associated descriptor previously registered with the ActivationSystem
; the object can no longer be activated via the object's activation id.
- Parameters:
-
id
- the object's activation id (from previous registration) - Throws:
-
ActivationException
- if unregister fails (e.g., database update failure, etc). -
UnknownObjectException
- if object is unknown (not registered) -
RemoteException
- if remote call fails - Since:
- 1.2
registerGroup
ActivationGroupID registerGroup(ActivationGroupDesc desc) throws ActivationException, RemoteException
Register the activation group. An activation group must be registered with the ActivationSystem
before objects can be registered within that group.
- Parameters:
-
desc
- the group's descriptor - Returns:
- an identifier for the group
- Throws:
-
ActivationException
- if group registration fails -
RemoteException
- if remote call fails - Since:
- 1.2
activeGroup
ActivationMonitor activeGroup(ActivationGroupID id, ActivationInstantiator group, long incarnation) throws UnknownGroupException, ActivationException, RemoteException
Callback to inform activation system that group is now active. This call is made internally by the ActivationGroup.createGroup
method to inform the ActivationSystem
that the group is now active.
- Parameters:
-
id
- the activation group's identifier -
group
- the group's instantiator -
incarnation
- the group's incarnation number - Returns:
- monitor for activation group
- Throws:
-
UnknownGroupException
- if group is not registered -
ActivationException
- if a group for the specifiedid
is already active and that group is not equal to the specifiedgroup
or that group has a differentincarnation
than the specifiedgroup
-
RemoteException
- if remote call fails - Since:
- 1.2
unregisterGroup
void unregisterGroup(ActivationGroupID id) throws ActivationException, UnknownGroupException, RemoteException
Remove the activation group. An activation group makes this call back to inform the activator that the group should be removed (destroyed). If this call completes successfully, objects can no longer be registered or activated within the group. All information of the group and its associated objects is removed from the system.
- Parameters:
-
id
- the activation group's identifier - Throws:
-
ActivationException
- if unregister fails (e.g., database update failure, etc). -
UnknownGroupException
- if group is not registered -
RemoteException
- if remote call fails - Since:
- 1.2
shutdown
void shutdown() throws RemoteException
Shutdown the activation system. Destroys all groups spawned by the activation daemon and exits the activation daemon.
- Throws:
-
RemoteException
- if failed to contact/shutdown the activation daemon - Since:
- 1.2
setActivationDesc
ActivationDesc setActivationDesc(ActivationID id, ActivationDesc desc) throws ActivationException, UnknownObjectException, UnknownGroupException, RemoteException
Set the activation descriptor, desc
for the object with the activation identifier, id
. The change will take effect upon subsequent activation of the object.
- Parameters:
-
id
- the activation identifier for the activatable object -
desc
- the activation descriptor for the activatable object - Returns:
- the previous value of the activation descriptor
- Throws:
-
UnknownGroupException
- the group associated withdesc
is not a registered group -
UnknownObjectException
- the activationid
is not registered -
ActivationException
- for general failure (e.g., unable to update log) -
RemoteException
- if remote call fails - Since:
- 1.2
- See Also:
getActivationDesc(java.rmi.activation.ActivationID)
setActivationGroupDesc
ActivationGroupDesc setActivationGroupDesc(ActivationGroupID id, ActivationGroupDesc desc) throws ActivationException, UnknownGroupException, RemoteException
Set the activation group descriptor, desc
for the object with the activation group identifier, id
. The change will take effect upon subsequent activation of the group.
- Parameters:
-
id
- the activation group identifier for the activation group -
desc
- the activation group descriptor for the activation group - Returns:
- the previous value of the activation group descriptor
- Throws:
-
UnknownGroupException
- the group associated withid
is not a registered group -
ActivationException
- for general failure (e.g., unable to update log) -
RemoteException
- if remote call fails - Since:
- 1.2
- See Also:
getActivationGroupDesc(java.rmi.activation.ActivationGroupID)
getActivationDesc
ActivationDesc getActivationDesc(ActivationID id) throws ActivationException, UnknownObjectException, RemoteException
Returns the activation descriptor, for the object with the activation identifier, id
.
- Parameters:
-
id
- the activation identifier for the activatable object - Returns:
- the activation descriptor
- Throws:
-
UnknownObjectException
- ifid
is not registered -
ActivationException
- for general failure -
RemoteException
- if remote call fails - Since:
- 1.2
- See Also:
setActivationDesc(java.rmi.activation.ActivationID, java.rmi.activation.ActivationDesc)
getActivationGroupDesc
ActivationGroupDesc getActivationGroupDesc(ActivationGroupID id) throws ActivationException, UnknownGroupException, RemoteException
Returns the activation group descriptor, for the group with the activation group identifier, id
.
- Parameters:
-
id
- the activation group identifier for the group - Returns:
- the activation group descriptor
- Throws:
-
UnknownGroupException
- ifid
is not registered -
ActivationException
- for general failure -
RemoteException
- if remote call fails - Since:
- 1.2
- See Also:
setActivationGroupDesc(java.rmi.activation.ActivationGroupID, java.rmi.activation.ActivationGroupDesc)