Package com.documentum.registry

# Interface IDfClientRegistry

All Known Subinterfaces:
  `IDfClientRegistryInternal`

All Known Implementing Classes:
  `DfClientRegistry`, `DfClientRegistryBase`, `DfClientRegistryBaseInternal`

public interface IDfClientRegistry
IDfClientRegistry manages repository object information stored on the local system rather than in the repository server.

For example, when an object is checked out from the repository, a registry entry can be made that includes the object id,local content file path in the file system, the format, and the name of the user who checked out the document. One use of this information is to determine if a given file path corresponds to an existing repository object, or the reverse, to know where on the file system the content resides for a given repository object.

On Win32 systems, the client registry data is actually stored in the Windows system registry. On Unix platforms, the client registry data is stored in a .ini text file in the user's home directory. This is transparent to callers of IDfClientRegistry, as it detects the platform at runtime and manages its data appropriately.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `IDfCheckedOutObject`
  `addCheckedOutObject(IDfSysObject sysObject, String filePath, boolean keepLocalFile, String folderPath)`
  Constructs a DfCheckedOutObject and writes it to the registry
  `void`
  `addFileToBeDeleted(String filePath)`
  Adds a file to the "to be deleted" list in the registry
  `IDfLocalObject`
  `addLocalObject(IDfSysObject sysObject, String filePath, boolean keepLocalFile, String folderPath)`
  Constructs a DfLocalObject and writes it to the registry
  `IDfViewedObject`
  `addViewedObject(IDfSysObject sysObject, String filePath, String folderPath)`
  Constructs a DfViewedObject and writes it to the registry
  `void`
  `applyModifiedAttrs(IDfSysObject sysObject)`
  updates a checked-out object's attributes with those from a sysobject
  `IDfCheckedOutObject`
  `getCheckedOutObjectById(IDfId objectId)`
  Finds a checked-out file registry object based on object ID
  `IDfCheckedOutObject`
  `getCheckedOutObjectByPath(String filePath)`
  Finds a checked-out file registry object based on file path
  `IDfList`
  `getCheckedOutObjects()`
  Gets all the checked out objects
  `String`
  `getCheckoutDirectory()`
  `String`
  `getExportDirectory()`
  `IDfList`
  `getFilesToBeDeleted()`
  Gets the list of files to be deleted
  `IDfLocalObject`
  `getLocalObjectById(IDfId objectId)`
  Finds a local file registry object based on object ID
  `IDfLocalObject`
  `getLocalObjectByPath(String filePath)`
  Finds a local file registry object based on object ID
  `IDfList`
  `getLocalObjects()`
  Gets all the checked out objects
  `String`
  `getProgramDirectory()`
  `IDfRegistry`
  `getRegistry()`
  Returns the underlying internal registry object.
  `String`
  `getUserDirectory()`
  `IDfViewedObject`
  `getViewedObjectById(IDfId objectId)`
  Finds a viewed file registry object based on object ID
  `IDfViewedObject`
  `getViewedObjectByPath(String filePath)`
  Finds a viewed file registry object based on file path
  `IDfList`
  `getViewedObjects()`
  Gets all the viewed objects
  `void`
  `moveToCheckedOutFiles(IDfLocalObject object)`
  Removes a local file and places it in the list of checked-out files.
  `void`
  `moveToLocalFiles(IDfCheckedOutObject object, IDfSession session)`
  Removes a checked out file and places it in the list of local files.
  `void`
  `removeCheckedOutObject(IDfCheckedOutObject itemToRemove)`
  Removes a checked-out file object from the registry
  `void`
  `removeFileToBeDeleted(String filePath)`
  Removes a file from the list of files to be deleted
  `void`
  `removeLocalObject(IDfLocalObject itemToRemove)`
  Removes a local object from the registry
  `void`
  `removeViewedObject(IDfViewedObject itemToRemove)`
  Removes a viewed object from the registry
  `void`
  `setCheckoutDirectory(String checkoutDir)`
  Sets in the registry the directory where checked out files will be placed
  `void`
  `setExportDirectory(String exportDir)`
  Sets in the registry the directory exported files will be written to
  `void`
  `setProgramDirectory(String progDir)`
  `void`
  `setUserDirectory(String userDir)`
  Sets in the registry the user's directory

- ## Method Details

  - ### getRegistry

    IDfRegistry getRegistry()
    Returns the underlying internal registry object. There are separate registry objects for accessing the low level storage models of the Windows system registry or a .ini file.

    Note: This method is intended for internal use only.
    Returns:
      the underlying registry object

  - ### addCheckedOutObject

    IDfCheckedOutObject addCheckedOutObject(IDfSysObject sysObject, String filePath, boolean keepLocalFile, String folderPath) throws DfException
    Constructs a DfCheckedOutObject and writes it to the registry
    Parameters:
      `sysObject` - the DfSysObject representing the file to be added
      `filePath` - the location of the checked-out file
      `keepLocalFile` - __REVISIT__
      `folderPath` - the folder path to the object in the repository
    Returns:
      the constructed DfCheckedOutObject
    Throws:
      `DfException`

  - ### getCheckedOutObjects

    IDfList getCheckedOutObjects() throws DfException
    Gets all the checked out objects
    Returns:
      an enumerated list of DfCheckedOutObjects
    Throws:
      `DfException`

  - ### getCheckedOutObjectById

    IDfCheckedOutObject getCheckedOutObjectById(IDfId objectId) throws DfException
    Finds a checked-out file registry object based on object ID
    Parameters:
      `objectId` - DfId object with the id of the object to be found
    Returns:
      the DfCheckedOutObject with the given ID, or null if the ID does not exist
    Throws:
      `DfException`

  - ### getCheckedOutObjectByPath

    IDfCheckedOutObject getCheckedOutObjectByPath(String filePath) throws DfException
    Finds a checked-out file registry object based on file path
    Parameters:
      `filePath` - file path of the object to be found
    Returns:
      the DfCheckedOutObject with the file path
    Throws:
      `DfException`

  - ### removeCheckedOutObject

    void removeCheckedOutObject(IDfCheckedOutObject itemToRemove) throws DfException
    Removes a checked-out file object from the registry
    Parameters:
      `itemToRemove` - DfCheckedOutObject to remove
    Throws:
      `DfException`

  - ### addViewedObject

    IDfViewedObject addViewedObject(IDfSysObject sysObject, String filePath, String folderPath) throws DfException
    Constructs a DfViewedObject and writes it to the registry
    Parameters:
      `sysObject` - the DfSysObject representing the file to be added
      `filePath` - the location of the checked-out file
      `folderPath` - the folder path to the object in the repository
    Returns:
      the constructed DfViewedObject
    Throws:
      `DfException`

  - ### getViewedObjects

    IDfList getViewedObjects() throws DfException
    Gets all the viewed objects
    Returns:
      an enumerated list of DfCheckedOutObjects
    Throws:
      `DfException`

  - ### getViewedObjectById

    IDfViewedObject getViewedObjectById(IDfId objectId) throws DfException
    Finds a viewed file registry object based on object ID
    Parameters:
      `objectId` - DfId object with the ID of the object to be found
    Returns:
      the DfViewedObject with the given ID, or null if the ID does not exist
    Throws:
      `DfException`

  - ### getViewedObjectByPath

    IDfViewedObject getViewedObjectByPath(String filePath) throws DfException
    Finds a viewed file registry object based on file path
    Parameters:
      `filePath` - DfId object with the ID of the object to be found
    Returns:
      the DfViewedObject with the given ID, or null if the ID does not exist
    Throws:
      `DfException`

  - ### removeViewedObject

    void removeViewedObject(IDfViewedObject itemToRemove) throws DfException
    Removes a viewed object from the registry
    Parameters:
      `itemToRemove` - the viewed object to be removed from the registry
    Throws:
      `DfException`

  - ### addLocalObject

    IDfLocalObject addLocalObject(IDfSysObject sysObject, String filePath, boolean keepLocalFile, String folderPath) throws DfException
    Constructs a DfLocalObject and writes it to the registry
    Returns:
      the constructed DfLocalObject
    Throws:
      `DfException`

  - ### getLocalObjects

    IDfList getLocalObjects() throws DfException
    Gets all the checked out objects
    Returns:
      an enumerated list of DfLocalObjects
    Throws:
      `DfException`

  - ### getLocalObjectById

    IDfLocalObject getLocalObjectById(IDfId objectId) throws DfException
    Finds a local file registry object based on object ID
    Returns:
      the DfLocalObject with the given ID, or null if the ID does not exist
    Throws:
      `DfException`

  - ### getLocalObjectByPath

    IDfLocalObject getLocalObjectByPath(String filePath) throws DfException
    Finds a local file registry object based on object ID
    Returns:
      the DfLocalObject with the given ID, or null if the ID does not exist
    Throws:
      `DfException`

  - ### removeLocalObject

    void removeLocalObject(IDfLocalObject itemToRemove) throws DfException
    Removes a local object from the registry
    Parameters:
      `itemToRemove` - the viewed object to be removed from the registry
    Throws:
      `DfException`

  - ### setProgramDirectory

    void setProgramDirectory(String progDir) throws DfException
    Parameters:
      `progDir` -
    Throws:
      `DfException`

  - ### getProgramDirectory

    String getProgramDirectory() throws DfException
    Returns:
      program directory
    Throws:
      `DfException`

  - ### setUserDirectory

    void setUserDirectory(String userDir) throws DfException
    Sets in the registry the user's directory
    Throws:
      `DfException`

  - ### getUserDirectory

    String getUserDirectory() throws DfException
    Returns:
      user directory
    Throws:
      `DfException`

  - ### setCheckoutDirectory

    void setCheckoutDirectory(String checkoutDir) throws DfException
    Sets in the registry the directory where checked out files will be placed
    Parameters:
      `checkoutDir` - the checkout directory path
    Throws:
      `DfException`

  - ### getCheckoutDirectory

    String getCheckoutDirectory() throws DfException
    Returns:
      the directory path checked out files will be written to
    Throws:
      `DfException`

  - ### setExportDirectory

    void setExportDirectory(String exportDir) throws DfException
    Sets in the registry the directory exported files will be written to
    Parameters:
      `exportDir` - the directory to place exported files in
    Throws:
      `DfException`

  - ### getExportDirectory

    String getExportDirectory() throws DfException
    Returns:
      the directory path exported files will be written to
    Throws:
      `DfException`

  - ### addFileToBeDeleted

    void addFileToBeDeleted(String filePath) throws DfException
    Adds a file to the "to be deleted" list in the registry
    Parameters:
      `filePath` - path of file to be deleted
    Throws:
      `DfException`

  - ### getFilesToBeDeleted

    IDfList getFilesToBeDeleted() throws DfException
    Gets the list of files to be deleted
    Returns:
      a DfList with the file paths of the files to be deleted
    Throws:
      `DfException`

  - ### removeFileToBeDeleted

    void removeFileToBeDeleted(String filePath) throws DfException
    Removes a file from the list of files to be deleted
    Parameters:
      `filePath` - path of file to be removed from list
    Throws:
      `DfException`

  - ### moveToLocalFiles

    void moveToLocalFiles(IDfCheckedOutObject object, IDfSession session) throws DfException
    Removes a checked out file and places it in the list of local files.

    Warning: Some fields are not shared by local files and checked-out files, so moving a checked-out file to local files and back again will NOT result in the same checked-out object as before.
    Parameters:
      `object` - the checked-out object to be moved
      `session` - the current session object
    Throws:
      `DfException`

  - ### moveToCheckedOutFiles

    void moveToCheckedOutFiles(IDfLocalObject object) throws DfException
    Removes a local file and places it in the list of checked-out files.

    Warning: Some fields are not shared by local files and checked-out files, so moving a local file to checked-out files and back again will NOT result in the same local object as before.
    Parameters:
      `object` - the local object to be moved
    Throws:
      `DfException`

  - ### applyModifiedAttrs

    void applyModifiedAttrs(IDfSysObject sysObject) throws DfException
    updates a checked-out object's attributes with those from a sysobject
    Parameters:
      `sysObject` - the sysobject to update the registry object with
    Throws:
      `DfException`