com.ibm.jarm.api.core

Interface Record

    • Method Detail

      • isPhysicalRecord

        boolean isPhysicalRecord()
        Indicates whether or not this is a physical record.
        Returns:
        true if is a physical record, false otherwise.
      • associateRecordType

        void associateRecordType(RecordType recordType)
        Associates a RecordType instance with this record.
        Parameters:
        recordType - a RecordType instance, or null to remove any previously established record type value.
      • getAssociatedRecordType

        RecordType getAssociatedRecordType()
        Returns an instance of RecordType associated with this record, if any.
        Returns:
        A RecordType instance, or null if none is currently associated.
      • getAssociatedContentItems

        PageableSet<ContentItem> getAssociatedContentItems()
        Returns the collection of ContentItem instances associated with this record.
        Returns:
        A PageableSet of ContentItem instances.
        Throws:
        RAL_RETRIEVING_ASSOC_CONTENT_FAILED - for any unexpected retrieval error.
      • assignRecordAsReceiptOfParent

        void assignRecordAsReceiptOfParent(Record receiptParent)
        Assigns this record as a "receipt" of the specified parent record.

        Note that a record that itself already has one or more child receipt records assigned to it cannot be made a receipt of another record. Likewise, a record that is already assigned as a child receipt cannot act as receipt parent.

        Parameters:
        receiptParent - The target parent Record to which this record is to be assigned as a receipt of. This entry cannot be null.
        Throws:
        RECORD_PARENT_ALREADY_A_RECEIPT - if the target receipt parent is itself already a receipt of another record parent.
        RECORD_ALREADY_A_RECEIPT_PARENT - if this record is already a receipt parent to another record.
        RECORD_ALREADY_A_RECEIPT - if this record is already a receipt of some parent record.
      • unassignRecordAsReceiptOfParent

        Record unassignRecordAsReceiptOfParent()
        Dissolves the receipt assignment between this record and the parent record to which it is currently assigned.
        Returns:
        The former Record receipt parent.
        Throws:
        CANNOT_DETACH_RECEIPT - if an unexpected error occurs.
      • getReceiptParent

        Record getReceiptParent()
        Returns the parent Record instance, if any, to which this record is currently assigned as a receipt.
        Returns:
        The parent Record instance, or null if this record is not currently assigned as a receipt.
      • getChildReceipts

        java.util.List<Record> getChildReceipts()
        Returns the collection of Record instances that are currently assigned as child receipts of this record.
        Returns:
        A List<Record> collection which can be empty if this record does not have any current child receipt records.
      • move

        void move(RecordContainer srcContainer,
                RecordContainer destContainer,
                java.lang.String reason)
        Moves this record from the specified source RecordContainer into the specified destination RecordContainer. If the source container was acting as the record's security parent, then the destination container is now assigned as the record's new security parent.
        Parameters:
        srcContainer - the RecordContainer to remove the record from. This entry cannot be null.
        destContainer - the RecordContainer to move the record to. This entry cannot be null.
        reason - a String specifying a reason for the move operation. This entry cannot be null nor blank.
        Throws:
        API_CANNOT_FILE_INTO_INACTIVE_CONTAINER - if the target container is currently inactive.
        API_CANNOT_FILE_INTO_CLOSED_CONTAINER - if the target container is currently closed.
        RAL_NO_ACTIVE_VOLUME_AVAILABLE - if the target record folder has no active volume available.
        API_CANNOT_FILE_RECORD_IT_ALREADY_EXISTS_IN_CONTAINER - if record already exists in the specified target container.
        API_CANNOT_FILE_SPECIFIC_RECORD_TYPE - if the target container cannot contain a record of this type.
        API_CANNOT_FILE_RECORD_INTO_EXTERNAL_FILEPLAN - if the target container resides in a foreign file plan.
        API_CANNOT_FILE_PHYSRECORD_INTO_MULTIPLE_PHYS_CONTAINERS - if the move operation would result in a physical record residing in more than one physical container.
        API_CANNOT_MOVE_RECORD_NOT_IN_SOURCE_CONTAINER - if the record does not currently reside in the specified source container.
      • copy

        Record copy(RecordContainer destContainer,
                  RMProperties overrideProps)
        Creates a new copy of this record and files it into the specified destination RecordContainer.

        Property values of the original record are copied to the new record with the exception of those that are read-only, system, disposition-related, or vital-related. Any property specified by the optional overrideProps input parameter is then applied to the new record (overriding any existing matching copied property).

        Each associated content item of the original record is also duplicated (including all properties and content elements) and associated with the new record instance.

        Note: Record copy is NOT supported for any record that is associated with P8 federated content because it is not possible to ensure that such content can be correctly duplicated in its external, federated content store.

        A RecordCopyLink instance is created and its Head property is assigned a reference to this original record while its Tail property is assigned a reference to the new record copy.

        Parameters:
        destContainer - the RecordContainer into which the new record is to be filed. This container becomes the new record's security parent.
        overrideProps - an optional RMProperties collection whose members will be used to override any corresponding properties copied from this Record.
        Returns:
        the new Record copy instance.
        Throws:
        API_INSUFFICIENT_RIGHTS_TO_COPY_RECORD - if the current user does not have write access to this record.
        API_DECL_ERROR_CONTAINERS_DIFF_REPOSITORIES - if the destination container resides under a different file plan.
        API_CANNOT_CONTAIN_CHILDTYPE - if the destination container is not allowed to contain a record of this type.
        RAL_NO_ACTIVE_VOLUME_AVAILABLE - if the destination container does not have a necessary active volume available.
        API_DECL_ERROR_CONTAINER_IS_DELETED - if the destination container has been logically deleted.
        API_DECL_ERROR_CONTAINER_IS_CLOSED - if the destination container is currently closed.
        API_DECL_ERROR_CONTAINER_IS_INACTIVE - if the destination container is currently inactive.
        API_CANNOT_COPY_FEDERATED_DOCUMENT - if exiting record is associated with P8 federated content.
      • supersede

        void supersede(Record supersedeTargetRecord)
        Causes this record to supersede the specified target record.

        This superseding record is generally an updated or improved version of the specified target record.

        Parameters:
        supersedeTargetRecord - the Record that is superseded by this record. This parameter cannot be null.
        Throws:
        API_ERROR_SUPERSEDE_TARGET_ALREADY_SUPERSEDED - if the target record has already been superseded.
      • isSuperseded

        boolean isSuperseded()
        Indicates whether or not this Record has been superseded by another record.
        Returns:
        true if this Record has been superseded, false otherwise.
      • undeclare

        void undeclare()
        Undeclare this record by disconnecting it from any of its associated content items and then performing a hard deletion of the record itself.
        Throws:
        API_CANNOT_UNDECLARE_LOGICALLY_DELETED_RECORD - If record has already been logically deleted.
        API_CANNOT_UNDECLARE_RECORD_IN_ACTIVE_WORKFLOW - If record is currently involved in an active workflow.
        API_CANNOT_UNDECLARE_RECORD_WITH_HOLD - If record is currently on hold.
        API_CANNOT_UNDECLARE_RECORD_WITH_FEDERATED_CONTENT - If record is associated with federated content.
      • getFilePlan

        FilePlan getFilePlan()
        Returns the FilePlan instance in the container hierarchy in which this record resides.
        Returns:
        A FilePlan instance.
      • getSecurityFolder

        Container getSecurityFolder()
        Returns the Container from which the record inherits security from.
        Returns:
        A Container instance.
      • exportUsingP8_XML

        void exportUsingP8_XML(java.lang.String exportFileSystemPath,
                             java.lang.String xsltDefStr,
                             ContentXMLExport contentExportOption)
        Exports the metadata and any associated content of this entity as external XML file(s) based upon the legacy P8 Content Engine-3.x export XML schema.
        Parameters:
        exportFileSystemPath - A required path String that defines a local file system directory into which all generated export files are written.
        xsltDefStr - An optional XSLT definition String that is used to transform any generated XML prior to it being written to the file system.
        contentExportOption - An optional ContentXMLExport value that defines how any document content of the record is exported. If this parameter is null then the export process defaults to ContentXMLExport.EmbeddedInDocumentXML.
        Throws:
        API_EXPORT_FILESYSTEM_DESTINATION_PATH_INVALID - if the specified file system path is invalid.
        API_EXPORT_CANT_CREATE_DESTINATION_DIR - if the specified file system directory cannot be created.
        RAL_EXPORT_P8CE_XMLGENERATION_FAILURE - for any XML-related generation problem.
        API_EXPORT_FAILURE - for any miscellaneous export failure.
      • delete

        void delete(boolean skipValidation,
                  DeleteMode deleteMode,
                  java.lang.String reasonForDelete)
        Deletes the record from its associated repository including any associated content. "Hard" vs. "logical" deletion of the record is controlled by the deleteMode parameter. If the "skipValidation" input parameter is false, then any validation failure prevents the deletion from occurring and an exception is thrown.

        Note that a multi-filed record is deleted from all of its containers.

        Parameters:
        skipValidation - true to skip delete validation.
        deleteMode - one of the DeleteMode enumeration values.
        reasonForDelete - text used to support auditing.

© Copyright IBM Corp. 2010, 2013. All Rights Reserved.