The Integration Repository is defined by an XML template file. This file is specified by the definitionFile property of the IntegrationRepository component. The Integration Repository definition file defines the integration behavior, including the commands used for the executeQuery, getItem, createItem, updateItem, and removeItem integration operations. The elements of the Integration Repository definition file are described in the Integration Repository Definition File section. The commands are described in the Command Operations section.

Since the Integration Repository wraps another repository, the underlying SQL repository also requires a definition file to define the repository item properties. You may also want to create mapping files to handle the relation of your repository item properties to the data maintained on the remote system. See the Repository to XML Data Binding chapter for more information.

This is an example of what the Integration Repository definition file would look like. It defines a single item descriptor, named account, and specifies the Commands used to query, get, add, update, and remove account items:

<integration-repository-template>
 <header>
 <name>RemoteX Repository</name>
 </header>

 <item-descriptor name="account">
 <query command="/atg/integrations/remotex/queries/AccountQuery"
 view="atg.integrations.remotex.RemoteXView">
 </query>
 <get-item command="/atg/integrations/remotex/queries/AccountQuery">
 </get-item>

 <add-item command="/atg/integrations/remotex/queries/AccountUpdateRPC">
 </add-item>
 <update-item command="/atg/integrations/remotex/queries/AccountUpdateRPC">
 </update-item>
 <remove-item command="/atg/integrations/remotex/queries/AccountDeleteRPC">
 </remove-item>

 </item-descriptor>
</integration-repository-template>

The Integration Repository definition file conforms to a DTD file at this URL:

http://www.atg.com/dtds/integrations/integration-repository_1.0.dtd

The Integration Repository is also configured using normal JavaBean properties. An IntegrationRepository component might be configured in a properties file like this:

$class=atg.adapter.integrations.IntegrationRepository

repositoryName=MyStuff
localRepository=/mystuff/MyLocalRepository
definitionFile=/mystuff/irConfig.xml
transactionManager=/atg/dynamo/transaction/TransactionManager
integrationRepositoryTools=/atg/integrations/repository/IntegrationRepositoryTools
persistentCacheManager=/atg/integrations/repository/PersistentCacheManager
mappingManager=/atg/repository/xml/SchemaManager
mappingTools=/atg/integrations/repository/MappingTools
lockManager=/atg/dynamo/service/ClientLockManager

The Integration Repository section describes these properties.

 
loading table of contents...