Hierarchy Developer's Guide for Oracle Self-Service E-Billing > Extending Advanced Hierarchy Manager Use Cases > Creating New Type of Business Object to Work with Hierarchy Manager >

Register Objects with OMF Module


In order to use the OMF service, you must register your business objects with the OMF framework. To do so, add another OMFObjectManagerConfig bean into the following section of the omf.xma.xml file, located in xma/config/omf directory:

Section for registering your business object manager by adding

<bean id="OMFService" class="com.edocs.common.omf.OMFService" singleton="true">
<property name="registeredOMFanagers">
<list>
<bean class="com.edocs.common.omf.OMFObjectManagerConfig">
<property name="name"><value>chargeTypeManager</value></property>
<property name="type"><value>edx:omf:chargetype:</value></property>
<property name="implementation">
<bean class="com.edocs.common.omf.chargetype.ChargeTypeManager" singleton="true"/>
</property>
</bean>

<bean class="com.edocs.common.omf.OMFObjectManagerConfig">
<property name="name"><value>companyManager</value></property>
<property name="type"><value>edx:omf:company:</value></property>
<property name="implementation"><ref bean="companyManager"/></property>
</bean>

<bean class="com.edocs.common.omf.OMFObjectManagerConfig">
<property name="name"><value>accountManager</value></property>
<property name="type"><value>edx:amf:account:</value></property>
<property name="implementation">
<bean class="com.edocs.domain.telco.amf.defaultimpl.BillingAccountManager" singleton="true"/>
</property>
</bean>

<bean class="com.edocs.common.omf.OMFObjectManagerConfig">
<property name="name"><value>serviceAgreementManager</value></property>
<property name="type"><value>edx:omf:serviceagreement:</value></property>
<property name="implementation">
<bean class="com.edocs.common.omf.serviceagreement.ServiceAgreementManager" singleton="true"/>
</property>
</bean>

<bean class="com.edocs.common.omf.OMFObjectManagerConfig">
<property name="name"><value>serviceChargeManager</value></property>
<property name="type"><value>edx:omf:servicecharge:</value></property>
<property name="implementation">
<bean class="com.edocs.common.omf.servicecharge.ServiceChargeManager" singleton="true"/>
</property>
</bean>
</list>
</property>
<property name="defaultBillerId"><value>1</value></property>
</bean>

where

  • "name"—Specifies the name of the manager, which can be any string you choose.
  • "type"—A unique string that identifies the type of business object. This value must be the same as the one returned from IOMFObject.getOMFObjectType() and IOMFObjectManager.getType().
  • "implementation"—The full class name of your object manager class. Typically a singleton class.

Once you register your business object with OMFService, you can do something similar for your business objects:

Code Example: Finding Your Business Object Manager Class

IServiceAgreementManager saMgr =
IOMFService.findOMFObjectManagerByType("edx:omf:serviceAgreement:");

Or

IServiceAgreementManager saMgr =
IOMFService.findOMFObjectManagerByName(serviceAgreementManager);

Code Example: Finding the Corresponding Business Object Instance for an Object URI

IServiceCharge sc = IOMFService.findOMFObjectByURI(scURIString);

Hierarchy Developer's Guide for Oracle Self-Service E-Billing Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Legal Notices.