Instantiating the UCB

From Apache OpenOffice Wiki
Jump to: navigation, search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.



The following steps have to be performed before a process can use the UCB:

  • Create and set the UNO service manager.
  • Create an instance of the UNO service com.sun.star.ucb.UniversalContentBroker, passing the keys identifying a predefined UCB configuration to createInstanceWithArguments().

There are several predefined UCB configurations. Each configuration contains data that describes a set of UCPs. All UCPs contained in a configuration are registered at the UCB that is created using this configuration. A UCB configuration is identified by two keys that are strings. The standard configuration is "Local" and "Office", which generally allows access to all UCPs available in a local installation.

  import com.sun.star.lang.XMultiServiceFactory;
  import com.sun.star.uno.Exception;
  import com.sun.star.uno.XInterface;
  
  boolean initUCB() {
  
      /////////////////////////////////////////////////////////////////////
      // Obtain Process Service Manager.
      /////////////////////////////////////////////////////////////////////
      
      XMultiServiceFactory xServiceFactory = ...
      
      /////////////////////////////////////////////////////////////////////
      // Create UCB. This needs to be done only once per process.
      /////////////////////////////////////////////////////////////////////
      
      XInterface xUCB;
      try {
          // Supply configuration to use for this UCB instance...
          String[] keys = new String[2];
          keys[ 0 ] = "Local";
          keys[ 1 ] = "Office";
          
          xUCB = xServiceFactory.createInstanceWithArguments(
              "com.sun.star.ucb.UniversalContentBroker", keys );
      }
      catch (com.sun.star.uno.Exception e) {
      }
    
      if (xUCB == null)
          return false;
      
      return true;
  }

For information about other configurations, refer to Configuration.

Content on this page is licensed under the Public Documentation License (PDL).
Personal tools
In other languages