java.rmi.activation

Interface ActivationSystem

public interface ActivationSystem extends Remote

The ActivationSystem registers groups and activatable objects to be activated within those groups. The ActivationSystem cooperates with both the Activator, which activates objects registered via the ActivationSystem, and the ActivationMonitor, which obtains information about active and inactive objects and inactive groups.

The activation system if frequently a remote object. As a security mean, all methods in this interface throw {@link java.rmi.AccessException} if called from the client that is not reside on the same host as the activation system.

See Also: getSystem

Field Summary
intSYSTEM_PORT
The port, used by the activation system.
Method Summary
ActivationMonitoractiveGroup(ActivationGroupID id, ActivationInstantiator group, long incarnation)
This method is called from the {@link ActivationGroup} to inform the ActivatinSystem that the group is now active and there is the {@link ActivationInstantiator} for that group.
ActivationDescgetActivationDesc(ActivationID id)
Get the activation descriptor for the object with the given activation id.
ActivationGroupDescgetActivationGroupDesc(ActivationGroupID groupId)
Get the group descriptor for the group with the given id.
ActivationGroupIDregisterGroup(ActivationGroupDesc groupDesc)
Register the new activation group.
ActivationIDregisterObject(ActivationDesc desc)
Registers the activation descriptor and creates (and returns) its activation identifier.
ActivationDescsetActivationDesc(ActivationID id, ActivationDesc desc)
Replace the activation descriptor for the object with the given activation id.
ActivationGroupDescsetActivationGroupDesc(ActivationGroupID groupId, ActivationGroupDesc groupDesc)
Replaces the group descriptor for the group with the given group activation id.
voidshutdown()
Shutdown the activation system and all associated activation groups
voidunregisterGroup(ActivationGroupID id)
Removes the activation group with the given identifier.
voidunregisterObject(ActivationID id)
Removes the stored identifier-description map entry.

Field Detail

SYSTEM_PORT

public int SYSTEM_PORT
The port, used by the activation system. The value is equal to 1098 by default, but it can be changed by putting the system property .

Method Detail

activeGroup

public ActivationMonitor activeGroup(ActivationGroupID id, ActivationInstantiator group, long incarnation)
This method is called from the {@link ActivationGroup} to inform the ActivatinSystem that the group is now active and there is the {@link ActivationInstantiator} for that group. This call is made internally from the {@link ActivationGroup#createGroup}.

Parameters: id the group id group the group activation instantiator incarnation the groups incarnatin number.

Returns: the activation monitor that should be informed about the group state changes

Throws: UnknownGroupException if this group has not been registered ActivationException if this group is already active RemoteException if the remote call fails

getActivationDesc

public ActivationDesc getActivationDesc(ActivationID id)
Get the activation descriptor for the object with the given activation id.

Parameters: id the object activation id

Returns: the activation descriptor for that object

Throws: ActivationException if the database access fails UnknownObjectException if this object is not known RemoteException if the remote call fails

getActivationGroupDesc

public ActivationGroupDesc getActivationGroupDesc(ActivationGroupID groupId)
Get the group descriptor for the group with the given id.

Parameters: groupId the group id

Returns: the group descriptor

Throws: ActivationException if the database access fails UnknownGroupException if the group with such id is not known RemoteException if the remote call fails

registerGroup

public ActivationGroupID registerGroup(ActivationGroupDesc groupDesc)
Register the new activation group. For instance, it can be one activation group per virtual machine.

Parameters: groupDesc the activation group descriptor.

Returns: the created activation group ID for the activation group

Throws: ActivationException if the group registration fails RemoteException if the remote call fails

registerObject

public ActivationID registerObject(ActivationDesc desc)
Registers the activation descriptor and creates (and returns) its activation identifier. The map entry (identifier to descriptor) is stored in the stable map and used when the {@link Activator} receives the request to activate the object.

Parameters: desc the activation descriptor to register.

Returns: the created activation identifier that is mapped to the passed descriptor.

Throws: ActivationException if the registration fails (database update problems, etc). UnknownGroupException the if group, specified in decriptor, is unknown. RemoteException if the remote call fails.

setActivationDesc

public ActivationDesc setActivationDesc(ActivationID id, ActivationDesc desc)
Replace the activation descriptor for the object with the given activation id.

Parameters: id the activation id desc the new activation descriptor

Returns: the previous activation descriptor for that object.

Throws: ActivationException if the database update fails UnknownObjectException if the object with such id is not known UnknownGroupException if the activation group (in desc) is not known. RemoteException if the remote call fails

setActivationGroupDesc

public ActivationGroupDesc setActivationGroupDesc(ActivationGroupID groupId, ActivationGroupDesc groupDesc)
Replaces the group descriptor for the group with the given group activation id.

Parameters: groupId the group id groupDesc the new group descriptor

Returns: the previous group descriptor

Throws: ActivationException if the database update fails UnknownGroupException if such group is not known RemoteException if the remote call fails

shutdown

public void shutdown()
Shutdown the activation system and all associated activation groups

Throws: RemoteException if the remote call fails

unregisterGroup

public void unregisterGroup(ActivationGroupID id)
Removes the activation group with the given identifier. The group calls back, informing the activator about the shutdown.

Parameters: id the group activation id.

Throws: ActivationException if the database update fails UnknownGroupException if such group is not registered RemoteException if the remote call fails

unregisterObject

public void unregisterObject(ActivationID id)
Removes the stored identifier-description map entry. The object will no longer be activable using the passed activation id

Parameters: id the activation id to remove

Throws: ActivationException if the entry removing operation failed (database update problems, etc) UnknownObjectException if the passed id is not known to the system RemoteException if the remote call fails