A Federation Data Domain Cartridges

This appendix provides information about using the Oracle Communications Unified Inventory Management (UIM) federation data domain cartridges. These cartridges enable UIM to work cohesively with other external systems, such as Oracle Communications Internet Name and Address Management (INAM) and Oracle Communications MetaSolv Solution (MSS), in handling IP addresses, VLAN IDs, and connectivity.

Note:

This appendix builds upon the information presented in Chapter 14, "Using the Federation Framework".

About the Federation Data Domain Cartridges

The federation data domain cartridges focus on the exchange of different types of data, such as IP Addresses and VLANs. You use these cartridges when you design a federation solution utilizing a specific type of data while leveraging externally enabled entities.

Understanding the federation data domain cartridges is necessary when extending UIM to federate data or cooperate with external systems.

Note:

In previous releases, UIM referred to federation using the term ”cooperation” in describing this type of functionality.

The federation data domain cartridges include the following:

  • IP Address Federation

    In the IP address federation cartridge, UIM works with INAM. For example, UIM manages services, and INAM manages IP addresses. When a service resource assignment requires an IP address, INAM is the IP address resource repository from which UIM finds a resource to assign. The cartridge ZIP filename is OracleComms_UIM_IPAddress_Federation.zip.

  • VLAN ID Federation

    In the VLAN ID federation cartridge, UIM works with MSS. For example, MSS manages service configurations, and UIM manages VLAN IDs. When a service resource assignment requires a VLAN ID, UIM is the VLAN ID resource repository from which MSS finds a resource to assign. The cartridge ZIP filename is OracleComms_UIM_VLAN_ID_Federation.zip.

  • Connectivity Federation

    In the connectivity federation cartridge, UIM works generically with an external system to manage connectivity resources. For example, UIM sends a Work Order to an external system, such as MSS, to request a lease on connections. The cartridge ZIP filename is OracleComms_UIM_Connectivity_Federation.zip.

  • Objectel Federation

    In the objectel federation cartridge set, UIM demonstrates connectivity interfacing with Objectel for MetroEthernet service fulfillment scenarios. The cartridge ZIP filename is OracleComms_UIM_Objectel_Federation.zip.

Note:

The federation protocol cartridges are not utilized in these federation data domain cartridges. These federation protocol cartridges use an alternative communication infrastructure to interface with the external systems.

Accessing the Federation Data Domain Cartridges

You can download the federation data domain cartridges from the Oracle Software Delivery Cloud. Within the cartridge pack ZIP file, these cartridges will be located in the Federation/Data Domains directory.

See UIM Cartridge Guide for instructions on how to download the cartridge pack ZIP file.

You can access detailed information about these federation data domain cartridges in the following technical white papers, located within the cartridges:

  • UIM_Cooperation_Technical_Spec_Intro.pdf

  • UIM_Cooperation_Technical_Spec_VLAN_ID.docx

  • UIM_Cooperation_Technical_Spec_Connectivity.docx

Additionally, the connectivity topic contains the following sequence diagrams:

  • UIM_Cooperation_Technical_Spec_ConnectivitySeqDiagCreateLease.pdf

  • UIM_Cooperation_Technical_Spec_ConnectivitySeqDiagDisconnect.pdf

Using the Federation Data Domain Cartridges

The IP Address and VLAN ID federation cartridges are fully functional and can be deployed with minimal customizations: You must import the cartridge into Oracle Communications Design Studio and:

  • Update the properties files to reflect your environment

  • Update CooperationConstants class to reflect your environment

  • Rebuild the cartridge to include your updates

The connectivity federation cartridge is also functional; however, in addition to minimal customizations listed above, you must also:

  • Configure your UIM environment to specify the external system

Creating New or Extending Existing Federation Data Domain Cartridges

You can also use a federation data domain cartridge as an example to follow when creating a new cartridge, or you can modify an existing federation data domain cartridge to suit your requirements. Whether you are creating a new cartridge or modifying an existing federation cartridge, you must avoid deploying cartridges that contain same-named rulesets, extension points, or ruleset extension points. Doing so results in the last cartridge deployed overriding any same-named cartridge content that was previously deployed. See "Avoiding Federation Cartridge Conflicts".

Note:

Follow the guidelines in UIM Cartridge Guide when creating or extending federation data domain cartridges.

Federation Solution Considerations

When planning a federation solution, you need to consider the following actions.

Creating New Specifications

If you are extending a federation data domain cartridge by creating a new specification, Oracle recommends that you follow the specification naming convention used in the federation data domain cartridges. The naming convention dictates that specification names end with (E) to designate the specifications that represent external objects. For example, if you intend to name your new specification:

  • INAMIPAddress, instead name it INAMIPAddress(E)

  • VLANIDForM6, instead name it VLANIDForM6(E)

  • M6NetworkSystem, instead name it M6NetworkSystem(E)

While this naming convention is not required, it makes it possible for end users to immediately recognize which objects are external.

Accessing a New External System

Accessing a new external system may be part of a new federation solution. For example, your solution may require UIM to have a federated view of System-X. In this scenario, UIM must be able to query SES and include object references to System-X.

When accessing System-X:

  • Determine which items to retrieve from System-X. In this example, Component-X has been the determined item to retrieve from System-X.

  • Determine how Component-X is to be represented in UIM. For example, Component-X can be represented by any externally-enabled entity such as CustomObject, CustomNetworkAddress, and so forth.

  • Determine the mechanism that is to retrieve the information from the System-X. For example, API calls, direct database queries, and so forth.

  • Determine the specification names for these objects.

  • Create the necessary Custom Object, Custom Network Address, Pipe, Business Interaction, and Service specifications in Design Studio.

  • Create a new Java manager interface that contains the method signatures that support the desired behavior.

  • Modify the ruleset logic to call the new Java Manager and its methods. Ruleset logic can be added directly in the DRL or GROOVY file, or in a new Java class that the DRL or GROOVY file calls. Keep in mind that you cannot debug a DRL file. You can debug a Groovy file, and you can debug a Java class called by either a DRL or Groovy file. See Chapter 8, "Extending UIM Through Rulesets" for more information.

When accessing System-X and using the federation data domain cartridges:

  • Create a file that contains any constants you may need for accessing a new external system. For example, see the CooperationConstants.java source file. This file is located in each of the federation data domain cartridges, in the src/oracle/communications/inventory/techpack/cooperation/data/common directory, where data is either ipaddress, vlanid, or connectivity, depending on the federation data domain cartridge.

    In the constants file:

    • Add new constants for any new specification names.

    • Add new constants for the interface to System-X. For example, host, port, user ID, and password.

    • Add new constants for the external system and the component. For example, System-X and Component-X.

  • Create a file that contains a list of all externally-enabled entities, and that includes mapping information of each entity to the external system and component. For example, see the ExternalEntitiesRegistry.java source file. This file is located in each of the federation data domain cartridges, in the src/oracle/communications/inventory/techpack/cooperation/data/common directory, where data is either ipaddress, vlanid, or connectivity, depending on the federation data domain cartridge.

  • Create a new Java implementation class that contains the logic that supports the desired behavior. Add any new error messages to the dataCooperation.properties file, where data is ipaddress, vlanid, or connectivity.