Package com.documentum.fc.client

# Interface IDfDbor

public interface IDfDbor
Used to manage the Documentum Business Objects Registry (DBOR), provide methods to register and unregister business objects, and to look up registered business object entries in DBOR.

Since:
  5.1

- ## Method Summary

  Modifier and Type
  Method
  Description
  `IDfEnumeration`
  `getAll()`
  Get a list of all services (service based and type based) in DBOR.
  `String`
  `lookupObject(String name)`
  Look up a TBO in DBOR.
  `String`
  `lookupService(String name)`
  Gets the name of the class mapped to the service interface, if found.
  `void`
  `register(IDfDborEntry entry)`
  Adds either a "service" or a "type" entry to DBOR.
  `void`
  `unregister(String name)`
  To remove a service method `unregisterService` can be used.

- ## Method Details

  - ### lookupService

    String lookupService(String name) throws DfDborNotFoundException, DfServiceNotFoundException
    Gets the name of the class mapped to the service interface, if found. Throws a `DfServiceCriticalException` runtime exception object if it finds the specified entry name but it is a TBO instead of a service.
    Parameters:
      `name` - A String that represents the fully qualified interface name for a service-based object.
    Returns:
      Fully qualified class name that implements the SBO's interface.
    Throws:
      `DfDborNotFoundException` - Cannot find the registry
      `DfServiceNotFoundException` - Cannot find the service in the registry

  - ### lookupObject

    String lookupObject(String name) throws DfDborNotFoundException, DfServiceNotFoundException
    Look up a TBO in DBOR. Takes the repository type name as a key (or an interface name) and figures out if it corresponds to a business object in DBOR. Returns the fully qualified class name.
    Parameters:
      `name` - repository type name
    Returns:
      Fully qualified class name that implements the TBO
    Throws:
      `DfDborNotFoundException` - Cannot find DBOR
      `DfServiceNotFoundException` - Cannot find service in DBOR

  - ### getAll

    IDfEnumeration getAll() throws DfServiceException
    Get a list of all services (service based and type based) in DBOR.
    Returns:
      IDfEnumeration of `IDfDborEntry`
    Throws:
      `DfServiceException`

  - ### register

    void register(IDfDborEntry entry) throws DfServiceException
    Adds either a "service" or a "type" entry to DBOR. This method can be used by installation or configuration tools to create new DBOR entries. The `IDfDborEntry` object passed as an argument needs to be initialized with four values, the "name", its type (`true` for an SBO, `false` for a TBO), the fully qualified class name of the implementing class, and its version.

    Java:

             IDfDbor dbor = m_client.getDbor();

             // if not already registered...
             IDfDborEntry entry = new DfDborEntry();
             entry.setName( strDocbaseTypeOrServiceInterfaceName );
             entry.setServiceBased( bDborService ); // true for SBO, false for TBO
             String strJavaClass = AutoNumberType.class.getName();
             entry.setJavaClass( strJavaClass );
             entry.setVersion( strVersion ); // i.e. "1.0"

             dbor.register( entry );

    NOTE: Entries cannot be overwritten. If an entry must be modified, unregister first and then register again.

    Throws a `DfServiceCriticalException` runtime exception object if:

    - `MSG_DBOR_NOT_DEFINED`: There is something wrong with the registry.
    - `MSG_SERVICE_EXISTS`: If the entry already exists.
    Parameters:
      `entry` - an `IDfDborEntry` object.
    Throws:
      `DfServiceException` - `DM_VEL_DBOR_IO_ERROR` if an Internal error with the registry is encountered.

  - ### unregister

    void unregister(String name) throws DfServiceException
    To remove a service method `unregisterService` can be used.

    Java:

    >          IDfDbor dbor = m_client.getDbor();
    >          dbor.register( strDocbaseTypeOrServiceInterfaceName );

    Throws a `DfServiceCriticalException` runtime exception object if:

    - `MSG_DBOR_NOT_DEFINED`: There is something wrong with the registry.
    - `MSG_SERVICE_DOES_NOT_EXISTS`: If the entry does not exist.
    Parameters:
      `name` - - service name
    Throws:
      `DfServiceException` - `DM_VEL_DBOR_IO_ERROR`: If there is a problem accessing the registry,