Package com.documentum.operations

# Interface IDfExportOperation

All Superinterfaces:
  `IDfOperation`

public interface IDfExportOperation extends IDfOperation
The export operation downloads the local content file, patches compound references (for example, XML external entity references), and optionally creates registry entries for each node in the operation.

IDfSysobject, IDfVirtualDocumentNode, and IDfVirtualDocument objects can be added to an export operation. If a virtual document is added, the entire graph of the virtual document will be processed as part of the operation.

Any objects added to the export operation that are checked out will have the most recently checked in version of their content exported; local content files are not used during export. No error is returned for currently checked out objects.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `DONT_RECORD_IN_REGISTRY`
  `static final int`
  `RECORD_AS_LOCAL_FILE_IN_REGISTRY`
  `static final int`
  `RECORD_AS_VIEWED_FILE_IN_REGISTRY`

  ### Fields inherited from interface com.documentum.operations.IDfOperation

  `GENERATE_RESOURCE_FORK, IGNORE_RESOURCE_FORK, REQUIRE_RESOURCE_FORK, RESOURCE_FORK_UNDEFINED, USE_RESOURCE_FORK_IF_AVAILABLE`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `enableManageApplicationSupportDocuments(boolean shouldManageAppSuppDocs)`
  If you do not want to manage any of the documents in the Application Support Documents set this to false.
  `IDfAcsTransferPreferences`
  `getAcsTransferPreferences()`
  Returns the `IDfAcsTransferPreferences` object to be used.
  `String`
  `getDefaultDestinationDirectory()`
  Returns the default file system directory path that is the output location for the outbound content files.
  `String`
  `getDestinationDirectory()`
  Returns the file system directory path that is the default output location for the outbound content files.
  `int`
  `getMacOption()`
  Returns the setting for Mac handling for this operation.
  `IDfList`
  `getObjects()`
  Returns the list of unique objects in this operation.
  `int`
  `getRecordInRegistry()`
  Returns an integer that indicates if this node should be recorded in the client registry.
  `void`
  `setAcsTransferPreferences(IDfAcsTransferPreferences acsTransferPreferences)`
  Sets the `IDfAcsTransferPreferences` object to be used.
  `void`
  `setBaseFolder(String cabinetFolderPath, String linkBase)`
  Normally, when an XML virtual document is exported without its descendants, external references are patched as DRLs.
  `void`
  `setDestinationDirectory(String dirPath)`
  Sets the file system directory path that is the default output location for the outbound content files.
  `void`
  `setIncludeDCTMAttrsInXML(boolean includeDCTMAttrsInXML)`
  Determines whether or not dctm attributes(dctm:obj_id, dctm:status and dctm:version_label) are added to the chunk points of the XML stream.
  `void`
  `setIncludeExternalReferences(boolean includeExternalRefs)`
  If you do not want any external references(for example, images) downloaded, set this to false.
  `void`
  `setMacOption(int option)`
  Sets the Mac behavior options for this operation.
  `void`
  `setRecordInRegistry(int registryRecordingPreference)`
  Sets an integer that indicates if this node should be recorded in the client registry.
  `void`
  `setXMLFileEncoding(String encoding)`
  Allows the user to export XML files in a particular encoding.
  `void`
  `setXMLSchemaLocation(String schemaLocation)`
  Allows the user to specify the schema location to patch in the xml content.
  `void`
  `setXMLSystemId(String dtdPath)`
  Allows the user to specify the dtd path to patch in the xml content.

  ### Methods inherited from interface com.documentum.operations.IDfOperation

  `abort, add, areDisabledRegistryUpdates, canUndo, disableRegistryUpdates, enablePopulateWithReferences, execute, getContext, getDescription, getErrors, getName, getNodes, getOperationMonitor, getOperationType, getProperties, getRootNodes, getSession, getSteps, isAborted, isEnabledPopulateWithReferences, logError, removeNode, reportError, resetErrors, setOperationMonitor, setSession, succeeded`

- ## Field Details

  - ### DONT_RECORD_IN_REGISTRY

    static final int DONT_RECORD_IN_REGISTRY
    See Also:
      - Constant Field Values

  - ### RECORD_AS_VIEWED_FILE_IN_REGISTRY

    static final int RECORD_AS_VIEWED_FILE_IN_REGISTRY
    See Also:
      - Constant Field Values

  - ### RECORD_AS_LOCAL_FILE_IN_REGISTRY

    static final int RECORD_AS_LOCAL_FILE_IN_REGISTRY
    See Also:
      - Constant Field Values

- ## Method Details

  - ### getDestinationDirectory

    String getDestinationDirectory() throws DfException
    Returns the file system directory path that is the default output location for the outbound content files. This can be overridden for individual operation nodes by calling DfOutboundNode.setDestinationDirectory().
    Returns:
      file system directory path.
    Throws:
      `DfException`

  - ### setDestinationDirectory

    void setDestinationDirectory(String dirPath) throws DfException
    Sets the file system directory path that is the default output location for the outbound content files. This can be overridden for individual operation nodes by calling DfOutboundNode.setDestinationDirectory().
    Parameters:
      `dirPath` - file system directory path.
    Throws:
      `DfException`

  - ### getDefaultDestinationDirectory

    String getDefaultDestinationDirectory() throws DfException
    Returns the default file system directory path that is the output location for the outbound content files. Operations such as checkout default to a user specified directory that can be obtained from this method.
    Returns:
      default file system directory path.
    Throws:
      `DfException`

  - ### getRecordInRegistry

    int getRecordInRegistry() throws DfException
    Returns an integer that indicates if this node should be recorded in the client registry. Nodes in the client registry will be recognized as being from the repository.

    Possible values include:

                        0 DONT_RECORD_IN_REGISTRY - just export the content file.
                        1 RECORD_AS_VIEWED_FILE_IN_REGISTRY - record the object as a Viewed file.
                        2 RECORD_AS_LOCAL_FILE_IN_REGISTRY - record the object as a Local copy item.

    Returns:
      intteger indicating the registry recording setting.
    Throws:
      `DfException`

  - ### setRecordInRegistry

    void setRecordInRegistry(int registryRecordingPreference) throws DfException
    Sets an integer that indicates if this node should be recorded in the client registry. Nodes in the client registry will be recognized as being from the repository.

    Possible values include:

                        0 DONT_RECORD_IN_REGISTRY - just export the content file.
                        1 RECORD_AS_VIEWED_FILE_IN_REGISTRY - record the object as a Viewed file.
                        2 RECORD_AS_LOCAL_FILE_IN_REGISTRY - record the object as a Local copy item.

    Parameters:
      `registryRecordingPreference` - intteger indicating the registry recording setting.
    Throws:
      `DfException`

  - ### getObjects

    IDfList getObjects() throws DfException
    Returns the list of unique objects in this operation. Each entry in the list is an IDfSysObject.
    Returns:
      returns the list of unique objects in this operation
    Throws:
      `DfException`
    See Also:
      - `IDfSysObject`

  - ### setIncludeExternalReferences

    void setIncludeExternalReferences(boolean includeExternalRefs)
    If you do not want any external references(for example, images) downloaded, set this to false. Any node that is not an inline entity(for example, a chunk) will not be downloaded. The link reference will be patched with a DRL. The default value is true.
    Parameters:
      `includeExternalRefs` - if `false`, the external references will not be downloaded.

  - ### enableManageApplicationSupportDocuments

    void enableManageApplicationSupportDocuments(boolean shouldManageAppSuppDocs)
    If you do not want to manage any of the documents in the Application Support Documents set this to false. If the exported file references a DTD or schema, the reference(SYSTEM id or schemaLocation) is patched to the object name of the DTD in the repository. The DTD would not be downloaded to the file system. It is the responsibility of the caller to download the DTD at the required location.

    The user can use setXMLSystemId to patch the DTD to the required location. The default value is `true`.
    Parameters:
      `shouldManageAppSuppDocs` - if `false`, the documents in Application Support Documents folder will not be downloaded.
    See Also:
      - `setXMLSystemId(java.lang.String)`

  - ### setBaseFolder

    void setBaseFolder(String cabinetFolderPath, String linkBase)
    Normally, when an XML virtual document is exported without its descendants, external references are patched as DRLs. Use this method to specify an alternative path for patching. Specify the repository cabinetFolderPath to patch to the desired location. If linkbase is also provided, it will be prepended to the cabinet/folder path.
    Parameters:
      `cabinetFolderPath` - the cabinet/folder path where the external references need to be patched
      `linkBase` - the linkbase to be prepended to the cabinet/folder path.

  - ### setXMLSystemId

    void setXMLSystemId(String dtdPath)
    Allows the user to specify the dtd path to patch in the xml content. Note that the dtd is not downloaded to the location specified in the 'dtdPath'. It is the responsibility of the user to download the dtd to the right location.
    Parameters:
      `dtdPath` - the path where the dtd need to be patched

  - ### setXMLSchemaLocation

    void setXMLSchemaLocation(String schemaLocation)
    Allows the user to specify the schema location to patch in the xml content.
    Parameters:
      `schemaLocation` - the location where the schema need to be patched

  - ### getMacOption

    int getMacOption()
    Returns the setting for Mac handling for this operation.

    Possible values include:

                        IGNORE_RESOURCE_FORK - No resource fork is output, even if the resource fork
                                      is present in the repository.
                        USE_RESOURCE_FORK_IF_AVAILABLE - The resource fork is downloaded only if one is
                                               already available in repository.
                        REQUIRE_RESOURCE_FORK - The resource fork is required. An error is generated if
                                      resource fork is not available in the repository.
                        GENERATE_RESOURCE_FORK - A resource fork is generated if it is not explicitly
                                       available.

    Returns:
      the setting for Mac handling for this operation.If no mac option is set via setMacOption(), then RESOURCE_FORK_UNDEFINED is returned.
    Since:
      DFC 5.2.5

  - ### setMacOption

    void setMacOption(int option)
    Sets the Mac behavior options for this operation. The appledouble option can be overridden for individual nodes using setMacOption of IDfExportNode.

    Possible values include:

                        IGNORE_RESOURCE_FORK - No resource fork is output, even if the resource fork is
                                      present in the repository.
                        USE_RESOURCE_FORK_IF_AVAILABLE - The resource fork is downloaded only if one is
                                               already available in repository.
                        REQUIRE_RESOURCE_FORK - The resource fork is required. An error is generated if
                                      the resource fork is not available in the repository.
                        GENERATE_RESOURCE_FORK - A resource fork  is generated if it is not explicitly
                                       available.

    Parameters:
      `option` - - possible values: IGNORE_RESOURCE_FORK, USE_RESOURCE_FORK_IF_AVAILABLE, REQUIRE_RESOURCE_FORK, GENERATE_RESOURCE_FORK.
    Since:
      DFC 5.2.5

  - ### setIncludeDCTMAttrsInXML

    void setIncludeDCTMAttrsInXML(boolean includeDCTMAttrsInXML)
    Determines whether or not dctm attributes(dctm:obj_id, dctm:status and dctm:version_label) are added to the chunk points of the XML stream. All the xml nodes in the operation would have dctm attributes.

    If any of the chunk's content(that has dctm attributes set) is reused, it would indicate that the object is already present in the repository. Pass `true` to add dctm attributes. The default value is `false`.
    Parameters:
      `includeDCTMAttrsInXML` - if `true`, the external references are not downloaded.
    Since:
      5.3

  - ### setXMLFileEncoding

    void setXMLFileEncoding(String encoding)
    Allows the user to export XML files in a particular encoding. This method allows the user to indicate the encoding that they would like to have the document returned. The document (including the encoding declaration) is returned in the specified encoding. Any characters that are not available in the given encoding are represented as numeric entities.
    Parameters:
      `encoding` - the encoding in which the document needs to be exported.
    Since:
      5.3

  - ### getAcsTransferPreferences

    IDfAcsTransferPreferences getAcsTransferPreferences()
    Returns the `IDfAcsTransferPreferences` object to be used.
    Returns:
      `IDfAcsTransferPreferences` object to be used
    Since:
      5.3 sp1

  - ### setAcsTransferPreferences

    void setAcsTransferPreferences(IDfAcsTransferPreferences acsTransferPreferences)
    Sets the `IDfAcsTransferPreferences` object to be used.
    Parameters:
      `acsTransferPreferences` - `IDfAcsTransferPreferences` object to be used
    Since:
      5.3 sp1