compact2, compact3
java.rmi.activation

## Class ActivationID

- java.lang.Object
- - java.rmi.activation.ActivationID

All Implemented Interfaces:
  Serializable

    public class ActivationID
    extends Object
    implements Serializable

Activation makes use of special identifiers to denote remote objects that can be activated over time. An activation identifier (an instance of the class `ActivationID`) contains several pieces of information needed for activating an object:

- a remote reference to the object's activator (a `RemoteRef` instance), and
- a unique identifier (a `UID` instance) for the object.

An activation identifier for an object can be obtained by registering an object with the activation system. Registration is accomplished in a few ways:

- via the `Activatable.register` method
- via the first `Activatable` constructor (that takes three arguments and both registers and exports the object, and
- via the first `Activatable.exportObject` method that takes the activation descriptor, object and port as arguments; this method both registers and exports the object.

Since:
  1.2
See Also:
  `Activatable`, Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`ActivationID(Activator activator)` The constructor for `ActivationID` takes a single argument, activator, that specifies a remote reference to the activator responsible for activating the object associated with this identifier.

### Method Summary

All Methods Instance Methods Concrete Methods
`Remote` `activate(boolean force)` Activate the object for this id.
`boolean` `equals(Object obj)` Compares two activation ids for content equality.
`int` `hashCode()` Returns a hashcode for the activation id.

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### ActivationID

    public ActivationID(Activator activator)

The constructor for `ActivationID` takes a single argument, activator, that specifies a remote reference to the activator responsible for activating the object associated with this identifier. An instance of `ActivationID` is globally unique.

Parameters:
  `activator` - reference to the activator responsible for activating the object
Throws:
  `UnsupportedOperationException` - if and only if activation is not supported by this implementation
Since:
  1.2

### Method Detail

#### activate

    public Remote activate(boolean force)
                    throws ActivationException,
                           UnknownObjectException,
                           RemoteException

Activate the object for this id.

Parameters:
  `force` - if true, forces the activator to contact the group when activating the object (instead of returning a cached reference); if false, returning a cached value is acceptable.
Returns:
  the reference to the active remote object
Throws:
  `ActivationException` - if activation fails
  `UnknownObjectException` - if the object is unknown
  `RemoteException` - if remote call fails
Since:
  1.2

#### hashCode

    public int hashCode()

Returns a hashcode for the activation id. Two identifiers that refer to the same remote object will have the same hash code.

Overrides:
  `hashCode` in class `Object`
Returns:
  a hash code value for this object.
Since:
  1.2
See Also:
  `Hashtable`

#### equals

    public boolean equals(Object obj)

Compares two activation ids for content equality. Returns true if both of the following conditions are true: 1) the unique identifiers equivalent (by content), and 2) the activator specified in each identifier refers to the same remote object.

Overrides:
  `equals` in class `Object`
Parameters:
  `obj` - the Object to compare with
Returns:
  true if these Objects are equal; false otherwise.
Since:
  1.2
See Also:
  `Hashtable`