<html> <head> <title>Service UniversalContentBroker</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link rel="stylesheet" type="text/css" href="../../../../idl.css"> </head> <body> <div id="adc-idlref"> <a name="_top_"> </a><table class="navimain" border="0" cellpadding="3"> <tr> <td class="navimain"><a href="../module-ix.html" class="navimain">Overview</a></td> <td class="navimain"><a href="module-ix.html" class="navimain">Module</a></td> <td class="navimain"><a href="UniversalContentBroker-xref.html" class="navimain">Use</a></td> <td class="navimain"><a href="#devmanual" class="navimain">Devguide</a></td> <td class="navimain"><a href="../../../../index-files/index-1.html" class="navimain">Index</a></td> </tr> </table> <table class="navisub" border="0" cellpadding="0"> <tr> <td class="navisub">Services' Summary</td> <td class="navisub"><a href="#InterfacesSummary" class="navisub">Interfaces' Summary</a></td> <td class="navisub">Properties' Summary</td> <td class="navisub">Services' Details</td> <td class="navisub"><a href="#InterfacesDetails" class="navisub">Interfaces' Details</a></td> <td class="navisub">Properties' Details</td> </tr> </table> <hr> <table border="0" width="100%" cellpadding="5" cellspacing="3" class="title-table" style="margin-bottom:6pt;"> <tr> <td><p class="namechain"><a href="../../../../module-ix.html" class="namechain">::</a> <a href="../../../module-ix.html" class="namechain">com</a> :: <a href="../../module-ix.html" class="namechain">sun</a> :: <a href="../module-ix.html" class="namechain">star</a> :: <a href="module-ix.html" class="namechain">ucb</a> :: </p> </td> </tr> <tr> <td class="title">service UniversalContentBroker</td> </tr> <tr> <td><dl> <dt><b>Description</b></dt> <dd>is a one-instance service that provides access to a set of <a href="Content.html">Content</a>s via <a href="ContentProvider.html">ContentProvider</a>s. </dd> <dd><p>If the instance is created with two arguments of type string, these two strings are used to configure the newly instantiated broker; see the description of the required ::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/XInitialization.html">XInitialization</a> interface for details. <p>If the instance is created without arguments, the newly instatiated broker is not configured. </dd> </dl> <a name="devmanual"> </a><dl> <dt><b>Developers Guide</b></dt> <dd><a href="http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/UCB/Universal_Content_Broker#Capabilities">UCB - Universal Content Broker - Capabilities</a></dd> <dd><a href="http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/UCB/Instantiating_the_UCB">UCB - Instantiating the UCB</a></dd> </dl> </td> </tr> </table> <hr> <a name="InterfacesSummary"/><table border="1" width="100%" cellpadding="5" cellspacing="0" class="subtitle"> <tr> <td class="subtitle" colspan="2">Exported Interfaces - Summary</td> </tr> <tr> <td class="imsum_left">::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/XComponent.html">XComponent</a></td> <td class="imsum_right"><p>must be implemented to make it possible to resolve cyclic object references. (<a href="#XComponent">details</a>)</p> </td> </tr> <tr> <td class="imsum_left"><a href="XContentProvider.html">XContentProvider</a></td> <td class="imsum_right"><p>provides access to all kind of contents provided by the registered content providers. (<a href="#XContentProvider">details</a>)</p> </td> </tr> <tr> <td class="imsum_left"><a href="XContentProviderManager.html">XContentProviderManager</a></td> <td class="imsum_right"><p>provides access to a set of content providers registered with the UCB. (<a href="#XContentProviderManager">details</a>)</p> </td> </tr> <tr> <td class="imsum_left"><a href="XContentIdentifierFactory.html">XContentIdentifierFactory</a></td> <td class="imsum_right"><p>creates <a href="XContentIdentifier.html">XContentIdentifier</a> implementation objects for all kind of contents provided by the UCB. (<a href="#XContentIdentifierFactory">details</a>)</p> </td> </tr> <tr> <td class="imsum_left">::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/XInitialization.html">XInitialization</a></td> <td class="imsum_right"><p>supports the configuration of a newly created broker. (<a href="#XInitialization">details</a>)</p> </td> </tr> <tr> <td class="imsum_left"><a href="XCommandProcessor.html">XCommandProcessor</a></td> <td class="imsum_right"><p>enables the caller to execute commands at the broker. (<a href="#XCommandProcessor">details</a>)</p> </td> </tr> <tr> <td class="imsum_left"><a href="XCommandProcessor2.html">XCommandProcessor2</a></td> <td class="imsum_right"><p>is an enhanced version of <a href="XCommandProcessor.html">XCommandProcessor</a> that has an additional method for releasing command identifiers obtained via <a href="XCommandProcessor.html">XCommandProcessor</a>::<a href="XCommandProcessor.html#createCommandIdentifier">createCommandIdentifier</a> to avoid resource leaks. For a detailed description of the problem refer to <a href="XCommandProcessor2.html">XCommandProcessor2</a>::<a href="XCommandProcessor2.html#releaseCommandIdentifier">releaseCommandIdentifier</a>. (<a href="#XCommandProcessor2">details</a>)</p> </td> </tr> </table> <a name="InterfacesDetails"/><table border="1" width="100%" cellpadding="5" cellspacing="0" class="subtitle"> <tr> <td class="subtitle" colspan="2">Exported Interfaces - Details</td> </tr> <tr/> <tr> <td class="imdetail"><a name="XComponent" class="membertitle">::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/XComponent.html">XComponent</a></a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-data" bgcolor="#ffffff" align="center"> <tr> <td><dl> <dt><b>Description</b></dt> <dd>must be implemented to make it possible to resolve cyclic object references. </dd> <dd><p>Those references i.e. may occure if content provider implementations hold references to the Broker. The Broker itself always holds its providers. If the Broker shall be released, ::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/XComponent.html">XComponent</a>::<a href="../lang/XComponent.html#dispose">dispose</a> must be called at the Broker. The implementation of this method must call ::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/XEventListener.html">XEventListener</a>::<a href="../lang/XEventListener.html#disposing">disposing</a> on the registered listeners (the providers holding the Broker must be those listeners) and release the appropriate object references. At the other hand, the implementation of XEventListener::disposing must release its appropriate references. <p>This interface is required. </dd> </dl> </td> </tr> </table> </td> </tr> <tr/> <tr> <td class="imdetail"><a name="XContentProvider" class="membertitle"><a href="XContentProvider.html">XContentProvider</a></a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-data" bgcolor="#ffffff" align="center"> <tr> <td><dl> <dt><b>Description</b></dt> <dd>provides access to all kind of contents provided by the registered content providers. </dd> <dd><p>This interface is required. </dd> </dl> </td> </tr> </table> </td> </tr> <tr/> <tr> <td class="imdetail"><a name="XContentProviderManager" class="membertitle"><a href="XContentProviderManager.html">XContentProviderManager</a></a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-data" bgcolor="#ffffff" align="center"> <tr> <td><dl> <dt><b>Description</b></dt> <dd>provides access to a set of content providers registered with the UCB. </dd> <dd><p>This interface is required. </dd> </dl> </td> </tr> </table> </td> </tr> <tr/> <tr> <td class="imdetail"><a name="XContentIdentifierFactory" class="membertitle"><a href="XContentIdentifierFactory.html">XContentIdentifierFactory</a></a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-data" bgcolor="#ffffff" align="center"> <tr> <td><dl> <dt><b>Description</b></dt> <dd>creates <a href="XContentIdentifier.html">XContentIdentifier</a> implementation objects for all kind of contents provided by the UCB. </dd> <dd><p>This interface is required. </dd> </dl> </td> </tr> </table> </td> </tr> <tr/> <tr> <td class="imdetail"><a name="XInitialization" class="membertitle">::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/XInitialization.html">XInitialization</a></a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-data" bgcolor="#ffffff" align="center"> <tr> <td><dl> <dt><b>Description</b></dt> <dd>supports the configuration of a newly created broker. </dd> <dd><p>The ::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/XInitialization.html">XInitialization</a>::<a href="../lang/XInitialization.html#initialize">initialize</a> method should be called with two arguments of type string. These strings are used as a pair of keys to retrieve a set of content provider descriptions from the configuration management (stored at <code>org.openoffice.ucb.Configuration.ContentProviders.<var>key<sub>1</sub></var>.SecondaryKeys.<var>key<sub>2</sub></var>.ProviderData</code> within the configuration management's hierarchy). The retrieved descriptions are in turn used to register the corresponding content provider services at the broker. <p>Typical values for the pair of strings would be <code>"Local"</code>/<code>"Office"</code>, to configure a broker that contains all the relevant content providers. <p>This interface is required. </dd> </dl> </td> </tr> </table> </td> </tr> <tr/> <tr> <td class="imdetail"><a name="XCommandProcessor" class="membertitle"><a href="XCommandProcessor.html">XCommandProcessor</a></a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-data" bgcolor="#ffffff" align="center"> <tr> <td><dl> <dt><b>Description</b></dt> <dd>enables the caller to execute commands at the broker. </dd> <dd><p>This interface is required. <p><pre> ======================================================================= Commands: ======================================================================= [return type] [command name] [parameter type and name] ----------------------------------------------------------------------- Requiered commands: ----------------------------------------------------------------------- // This command obtains an interface which allows to query // information on commands supported by the Content Broker. <a href="XCommandInfo.html">XCommandInfo</a> getCommandInfo void // This command transfers Contents from one location to another. // Additionally, it can be used to create a link to a Content. // The implementation must be able to handle Contents provided // by any Content Provider. This is different from the command // 'transfer' that can be supported by a Content. That command // typically can only handle <a href="Content.html">Content</a>s provided by one // <a href="ContentProvider.html">ContentProvider</a>. void globalTransfer <a href="GlobalTransferCommandArgument.html">GlobalTransferCommandArgument</a> </pre> </dd> </dl> </td> </tr> </table> </td> </tr> <tr/> <tr> <td class="imdetail"><a name="XCommandProcessor2" class="membertitle"><a href="XCommandProcessor2.html">XCommandProcessor2</a></a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-data" bgcolor="#ffffff" align="center"> <tr> <td><dl> <dt><b>Usage Restrictions</b></dt> <dd><i>optional</i></dd> <dt><b>Description</b></dt> <dd>is an enhanced version of <a href="XCommandProcessor.html">XCommandProcessor</a> that has an additional method for releasing command identifiers obtained via <a href="XCommandProcessor.html">XCommandProcessor</a>::<a href="XCommandProcessor.html#createCommandIdentifier">createCommandIdentifier</a> to avoid resource leaks. For a detailed description of the problem refer to <a href="XCommandProcessor2.html">XCommandProcessor2</a>::<a href="XCommandProcessor2.html#releaseCommandIdentifier">releaseCommandIdentifier</a>. </dd> <dd><p>Where many existing <a href="UniversalContentBroker.html">UniversalContentBroker</a> implementations do not (yet), every new implementation should support this interface. </dd> </dl> </td> </tr> </table> </td> </tr> </table> <br> <a href="#_top_">Top of Page</a><hr size="3"><p class="copyright" align="center">Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.</p> </div> <!-- id="adc-idlref" --> </body> </html>