The Hold operation places a container object on hold to
prevent any disposition-related operations from being performed on
the object. To perform the Hold operation, you use the
HoldableObject interface, which defines
the behavior of any RM object that can be put on hold. This interface
is implemented by the
RecordCategory,
RecordFolder,
Volume,
and
RecordInfo objects. You can place a
HoldableObject object
on hold by calling the
hold method on an
RMRecordContainer object.
You must specify a reason for placing an object on hold. Once an object
is on hold, you cannot perform any disposition actions--such as export,
transfer, destroy, or interim transfer--on the object. In addition,
you cannot delete an object that is placed on hold. For example, the
following code snippet calls the
hold method to place
a record category on hold.
//Places a RecordCategory object on hold
public void hold(RMObjectStore aoRMOS, HoldableObject aoObj, String asHoldGUID)
{
Hold loHold = (Hold)aoRMOS.getObject(RMType.RM_TYPE_HOLD, asHoldGUID);
aoObj.hold(loHold);
}