4 The Infrastructure API

Much of the underlying information in the database is managed by the Oracle Communications MetaSolv Solution Infrastructure subsystem.

Specific operations for exporting lists of information from the database are provided by the Infrastructure API. These lists of information include:

  • Structured formats and structured format components

  • Geographic areas and types

  • Code categories and code category values, including languages

  • Network locations

Additional operations are provided and used to manage end-user and network location information. See "NetworkLocationSubSession" for more information.

The CORBA server name used by the Infrastructure API is INFRASTRUCTURESERVER.

Implementation Concepts

This section describes the implementation concepts for the Infrastructure API.

Infrastructure Operational Differences

This section describes the operational differences between the Infrastructure subsystem and the API.

Latitude and Longitude Fields Are Not Calculated and Validated

Unlike the Infrastructure subsystem in MetaSolv Solution, the Infrastructure API does not allow for calculation of the Latitude and Longitude fields if data is entered in the Vertical and Horizontal fields of the associateLocationRelationships operation. Validation also does not occur if data is entered into the Latitude and Longitude fields.

Switch Network Area Field Defaults to First Switch Network Area

The Infrastructure API does not support the Switch Network Area field selection in the queryNetworkLocations_V2 operation.

If there is only one switch network area in the Switch Network Area field, the Switch Network Area field is defaulted to it. If there are more than one switch network areas in the Switch Network Area field, the first switch network area listed in the database, populates that field.

Query Across All Address Formats

Unlike the Infrastructure subsystem in MetaSolv Solution, the Infrastructure API does not allow you to query for all address formats when using the queryNetworkLocation_V2 operation.

Key MetaSolv Solution Concepts

To understand the information made available through the Infrastructure API, you must understand certain key concepts used in MetaSolv Solution. In particular, you should understand how MetaSolv Solution uses these kinds of information:

  • Code categories and code category values

  • Geographic areas and types

  • Network locations

  • Structured formats and structured format components

  • Customized attributes (CAs) - CAs are what MetaSolv Solution users use to add an attribute (or property, or value) to a building block. They offer a way to add company-specific information to MetaSolv Solution. They are custom because your company's unique business processes and technological practices dictate how CAs are used. Several CAs are included in the data that comes with MetaSolv Solution, and those CAs are immediately available for association to building blocks. MetaSolv Solution users can also create new CAs.

    Building blocks are the only parts of the software with which CAs can be associated. Templates, elements, connections, and connection allocations are the four building block types from which MetaSolv Solution users can select building blocks for association with a CA. Building block types are predefined and unchangeable.

Infrastructure API Files

These IDL files are used in the Infrastructure API:

  • WDIInfrastructure.idl

  • WDIInfrastructureTypes.idl

  • WDINetworkLocation.idl

  • WDINetworkLocationTypes.idl

  • WDINetworkLocationTypes_v2.idl

  • WDI.idl

  • WDIUtil.idl

Infrastructure Interface

Figure 4-1 shows the relationship of the interfaces within the Infrastructure API.

Figure 4-1 Infrastructure API Interfaces

Description of Figure 4-1 follows
Description of ''Figure 4-1 Infrastructure API Interfaces''

WDIManager

Table 4-1 lists the operations available in the WDIManager interface of the WDIInfrastructure.idl file.

Table 4-1 WDIManager Interface Operations in the Infrastructure API

Operation Description

startInfrastructureSession

Obtains the object reference of the InfrastructureSession

destroyInfrastructureSession

Terminates the InfrastructureSession

startTransaction

commit

rollback

destroyTransaction

Terminates the transaction

startNetworkLocationSubSession

Returns the NetworkLocationSubSession

destroyNetworkLocationSubsession

Destroys the NetworkLocationSubsession


Note:

See "WDIManager Interface" for more information on the WDIManager interface.

InfrastructureSession Interface

Table 4-2 lists the operations that comprise the InfrastructureSession in the WDIInfrastructure.idl file.

Table 4-2 Infrastructure API InfrastructureSession Interface Operations

Operation WDIInfrastructure::WDINotification Operations

getMaximumReturnedRows

Implemented by caller to return maximum number of records for Infrastructure API server to return for certain queries (0 = no limit).

getStructureTypes

getStructureTypesSucceeded

operationFailed

getStructureFormatsGivenType

getStructureFormatsGivenTypeSucceeded

operationFailed

getStructureFormatsGivenTypeAndArea

getStructureFormatsGivenTypeAndAreaSucceeded

operationFailed

getComponentsGivenStructureFormat

getComponentsGivenStructureFormatSucceeded

operationFailed

getValidValuesGivenStructureFormat

 Component

getValidValuesGivenStructureFormatComponent

 Succeeded

operationFailed

getGeoAreaTypes

getGeoAreaTypesSucceeded

operationFailed

getGeoAreaTypesGivenCountry

getGeoAreaTypesGivenCountrySucceeded

operationFailed

getGeoAreasGivenType

getGeoAreasGivenTypeSucceeded

operationFailed

getGeoAreasGivenTypeAndCountry

getGeoAreasGivenTypeAndCountrySucceeded

operationFailed

getRelatedGeoAreasGivenAreaAndType

getRelatedGeoAreasGivenAreaAndTypeSucceeded

operationFailed

getLanguages

getLanguagesSucceeded

operationFailed

getCodeCategories

getCodeCategoriesSucceeded

operationFailed

getCodeCategoryValues

getCodeCategoryValuesSucceeded

operationFailed

queryConditionCode

queryConditionCodeSucceeded

operationFailed

getConditionCode

getConditionCodeSucceeded

operationFailed

getNetworkAreasGivenLocation

getNetworkAreasGivenLocationSucceeded

operationFailed

startNetworkLocationSubSession

Obtains the object reference of the NetworkLocationSubSession

destroyNetworkLocationSubSession

Terminates the NetworkLocationSubSession

getCaUsageSetInfoFromServiceItem

getCaUsageSetInfoFromServiceItemSucceeded

operationFailed

getCaUsageSetInfoFromTemplate

getCaUsageSetInfoFromTemplateSucceeded

operationFailed

getCaUsageSetInfoFromElement

getCaUsageSetInfoFromElementSucceeded

operationFailed

getCaUsageSetInfoFromConnector

getCaUsageSetInfoFromConnectorSucceeded

operationFailed

getMultipleCaUsageSetInfo

getMultipleCaUsageSetInfoSucceeded

operationFailed


InfrastructureSession Operation Descriptions

This section describes the operations defined in the WDIInfrastructure.IDL file.

Query Operation

  • queryConditionCode

    Retrieves a list of condition codes that can be added to a mounting position or a port address. Criteria for the search is passed in the ConditionCode structure. See the ConditionCode structure in WDIInfrastructureTypes.idl for rules concerning the criteria. A WDITransaction object is intentionally not passed for this operation and assumes responsibility for transaction management.

Export Operations

  • getStructureTypes

    Retrieves a list of all structure types in the database.

  • getStructureFormatsGivenType

    Retrieves a list of active structure formats bound by the input structure type.

  • getStructureFormatsGivenTypeAndArea

    Retrieves a list of active structure formats bound by the input structure type for a given input geographic area identifier.

  • getComponentsGivenStructureFormat

    Retrieves a list of active structured format components based on the input active structured format.

  • getValidValuesGivenStructureFormatComponent

    Retrieves a list of active valid values based on the input structured format component identifier.

  • getGeoAreaTypes

    Retrieves a list of all geographic area types in the database.

  • getGeoAreaTypesGivenCountry

    Retrieves a list of geographic area types used by the input country name.

  • getGeoAreasGivenType

    Retrieves a list of the active geographic areas bound by the input geographic area type.

  • getGeoAreasGivenTypeAndCountry

    Retrieves a list of the active geographic areas used by the input country name and bound by the input geographic area type.

  • getRelatedGeoAreasGivenAreaAndType

    Retrieves a list of the active geographic areas related to the input geographic area and bound by the input geographic area type.

  • getLanguages

    Retrieves a list of all languages in the database.

  • getCodeCategories

    Retrieves a list of code categories bound by the input language code.

  • getCodeCategoryValues

    Retrieves a list of code category values bound by the input code category number and language code. Only values with an effective from date on or before the current date, and values with a populated effective to date after the current date are returned. A null value is not returned.

  • getConditionCode

    Retrieves the condition code, description, and warning type for a given condition code. The conditionCode parameter is required, and must contain a valid condition code, or an error is returned. This operation is intentionally not passed a WDITransaction object and assumes responsibility for transaction management.

  • getNetworkAreasGivenLocation

    Retrieves network areas based on the location ID passed in.

  • getNetworkAreasGivenLocation

    Retrieves network areas based on the location ID passed in.

  • getCAUsageSetInfoFromServiceItem

    Retrieves CA usages based on the service item id passed in.

  • getCAUsageSetInfoFromTemplate

    Retrieves CA usages based on the template id passed in.

  • getCAUsageSetInfoFromElement

    Retrieves CA usages based on the element type passed in.

  • getCAUsageSetInfoFromConnector

    Retrieves CA usages based on the connector id passed in.

  • getMultipleCaUsageSetInfo

    Retrieves CA usages for multiple items passed in.

Export Customized Attribute Process Point IDs

The export customized attribute (CA) operations require you to enter a value for the process point ID. The following list describes the various process points in the application where CAs may be exported or rendered for display or update.

Table 4-3 lists the process point IDs.

Table 4-3 Process Point IDs

Export Customize Attribute Operation Process Point ID Description

Activation

60

Used during connection design change to request CAs for Connections.

Billing API

71

Used by the Billing API to request CAs.

Change Connection Design

60

Used during connection design change to request CAs for Connections.

Connection Design History

62

Used during connection design to display CAs for Connections history.

Disconnect Connection Design

61

Used during connection design for disconnect to request CAs for Connections.

GLR-Network Design Properties

58

Used by the GLR to show properties for a Connection.

Network Design - New

55

Used by Network Design to request CAs for a Network System or Network Element.

New Connection Design

59

Used during connection design to request CAs for New Connections.

Ordering - Change

51

Used by the Optimized Dialog to request CAs for a Change Order for an existing Network System, Network Element, or Connection.

Ordering - Disconnect

52

Used by the Optimized Dialog to request CAs for a Change Order for a disconnect of a Network System, Network Element, or Connection.

Ordering - New

50

Used by the Optimized Dialog to request CAs for a New Network System, New Network Element, or New Connection.


processPointId is an input for several Infrastructure export methods:

//getCaUsageSetInfoFromServiceItem- Retrieves ca usages based on the service item
//id passed in.
     void getCaUsageSetInfoFromServiceItem(
         in MetaSolv::CORBA::WDI::WDITransaction aWDITransaction,
         in WDINotification aWDINotification,
         in long serviceItemId,
         in long processPointId,
         in long referenceNumber)
         raises(MetaSolv::CORBA::WDI::WDIExcp);

//getCaUsageSetInfoFromTemplate- Retrieves ca usages based on the template
//id passed in.
     void getCaUsageSetInfoFromTemplate(
         in MetaSolv::CORBA::WDI::WDITransaction aWDITransaction,
         in WDINotification aWDINotification,
         in long templateId,
         in long processPointId,
         in long referenceNumber)
         raises(MetaSolv::CORBA::WDI::WDIExcp);

//getCaUsageSetInfoFromElement- Retrieves ca usages based on the element name
//passed in.
     void getCaUsageSetInfoFromElement(
         in MetaSolv::CORBA::WDI::WDITransaction aWDITransaction,
         in WDINotification aWDINotification,
         in string elementType,
         in long processPointId,
         in long referenceNumber)
         raises(MetaSolv::CORBA::WDI::WDIExcp);

//getCaUsageSetInfoFromConnector- Retrieves ca usages based on the connector id
//passed in.
     void getCaUsageSetInfoFromConnector(
         in MetaSolv::CORBA::WDI::WDITransaction aWDITransaction,
         in WDINotification aWDINotification,
         in long connectorId,
         in long processPointId,
         in long referenceNumber)
         raises(MetaSolv::CORBA::WDI::WDIExcp);

//getMultpleCaUsageSetInfo- Retrieves ca usages for multiple items passed in.
     void getMultipleCaUsageSetInfo(
         in MetaSolv::CORBA::WDI::WDITransaction aWDITransaction,
         in WDINotification aWDINotification,
         in MetaSolv::CORBA::WDIInfrastructureTypes::CaInputItemSeqitems,
         in long processPointId,
         in long referenceNumber)
         raises(MetaSolv::CORBA::WDI::WDIExcp); 

NetworkLocationSubSession

The NetworkLocationSubSession is a subsession in the Infrastructure API that manages network location database transactions in the Infrastructure subsystem.

The NetworkLocationSubSession includes the following functionality described in detail in later sections:

  • Associate and disassociate location relationships with a network location

  • Associate and disassociate network areas from an end-user location

  • Associate and disassociate tandem types from a network location

  • Disassociate Secondary LSO's from an end-user location.

  • Query, create, update and delete end-user locations

  • Query, create, update and delete network locations

  • Query network areas

The NetworkLocationSubSession interacts solely with the Infrastructure server which is responsible for commit and rollback functionality. The WDITransaction parameter is not a part of any operation used within this API. Prior operations that used the WDITransaction parameter are deprecated and replaced with new versioned operations.

NetworkLocationSubSession Interface Operations

Table 4-4 lists the operations in the NetworkLocationSubSession of the WDINetworkLocation.IDL file.

Table 4-4 Network Location Operations

Operation WDINotifications

queryNetworkLocations

This operation has been deprecated from the WDIEquipment.IDL and is replaced by queryNetworkLocations_V2

networkLocationQuerySucceeded - Deprecated

networkLocationQueryFailed - Deprecated

getNetworkLocation

This operation has been deprecated from the WDIEquipment.IDL and is replaced by getLocation

networkLocationGetSucceeded - Deprecated

networkLocationGetFailed - Deprecated

queryNetworkLocations_V2

queryNetworkLocationsSucceeded_v2

(replaces networkLocationQuerySucceeded)

operationFailed

(replaces networkLocationQueryFailed)

queryEnduserLocations

queryEnduserLocationSucceeded

operationFailed

queryNetworkAreas

queryNetworkAreaSucceeded

operationFailed

getLocation

getLocationSucceeded

(replaces networkLocationGetSucceeded)

operationFailed (replaces networkLocationGetFailed)

createLocation

createLocationSucceeded

operationFailed

updateLocation

updateLocationSucceeded

operationFailed

deleteLocation

deleteLocationSucceeded

operationFailed

getServingOfficeTypes

getServingOfficeTypesSucceeded

operationFailed

getCentralOfficeExchangeAreas

getCentralOfficeExchangeAreasSucceeded

operationFailed

getNetworkLocationCategories

getNetworkLocationCategoriesSucceeded

operationFailed

getNetworkLocationTypes

getNetworkLocationTypesSucceeded

operationFailed

getNetworkLocationRelationshipTypes

getNetworkLocationRelationshipTypesSucceeded

operationFailed

getTandemTrafficCodes

getTandemTrafficCodesSucceeded

operationFailed

getLocationCodeFormats

getLocationCodeFormatsSucceeded

operationFailed

getTandemServices

getTandemServicesSucceeded

operationFailed

getBuildingLocations

getBuildingLocationsSucceeded

operationFailed

getAssociatedNetworkAreas

getAssociatedNetworkAreasSucceeded

operationFailed

getAvailableNetworkAreas

getAvailableNetworkAreasSucceeded

operationFailed

getTelephoneNumberSwitchLocations

getTelephoneNumberSwitchLocationsSucceeded

operationFailed

getDataSwitchLocations

getDataSwitchLocationsSucceeded

operationFailed

getTandemLocations

getTandemLocationsSucceeded

operationFailed

getIncorporatedCodes

getIncorporatedCodesSucceeded

operationFailed

getMultipleAddressPatterns

getMultipleAddressPatternsSucceeded

operationFailed

associateLocationRelationships

associateLocationRelationshipsSucceeded

operationFailed

unassociateLocationRelationships

unassociateLocationRelationshipsSucceeded

operationFailed

associateTandemTypes

associateTandemTypesSucceeded

operationFailed

unassociateTandemTypes

unassociateTandemTypesSucceeded

operationFailed

associateNetworkAreas

associateNetworkAreasSucceeded

operationFailed

unassociateNetworkAreas

unassociateNetworkAreasSucceeded

operationFailed

unassociateSecondaryLSOs

unassociateSecondaryLSOsSucceeded

operationFailed


NetworkLocationSubSession Operation Descriptions

This section describes the operations defined in the WDINetworkLocation.IDL file.

Query Operations

  • queryNetwork Locations (Deprecated from the WDIEquipment.IDL)

    Requests and returns all network locations that match specific criteria.

  • queryNetworkLocations_V2

    Requests and returns network locations for specific criteria, limiting the number of records returned.

  • queryEnduserLocations

    Requests and returns end-user locations based on specific criteria.

  • queryNetworkAreas

    Requests and returns network areas based on specific criteria.

Get Operations

  • getNetworkLocation (Deprecated from the WDIEquipment.IDL)

    Retrieves a specific network location based on its network location ID.

  • getLocation

    Retrieves an existing network or end-user location, or end-user location with network location alias.

  • getServingOfficeTypes

    Retrieves servicing office types used with network location.

  • getCentralOfficeExchangeAreas

    Retrieves central office exchange area values for use with network location.

  • getNetworkLocationCategories

    Retrieves network location category values.

  • getNetworkLocationTypes

    Retrieves types of network locations.

  • getNetworkLocationsRelationshipTypes

    Retrieves types of network location relationships for use with network locations.

  • getTandemTrafficCodes

    Retrieves tandem traffic code values used with network locations.

  • getTandemServices

    Retrieves tandem service values used in network locations.

  • getBuildingLocations

    Retrieves location codes for locations that are in buildings.

  • getAssociatedNetworkAreas

    Retrieves network area associated with a particular end-user location.

  • getAvailableNetworkAreas

    Retrieves available network areas that can be associated with a particular end-user location. This parameter is optional when creating an end-user location. This operation requires that a TN switch is associated with the end-user location.

  • getTelephoneNumberSwitchLocations

    Retrieves location codes for telephone number switches used in end-user locations.

    The client application must specify a partial value that the API uses to filter values and return location codes meeting this criteria. The telephoneNumberSwitchLocation operation is optional when creating an end-user location. The user must specify at least a partial value for the search. An end-user location can be created without a TN switch.

  • getLocationCodeFormats

    Retrieves location code formats for network locations.

  • getDataSwitchLocations

    Retrieves location codes for data switches used in end-user locations.

    The client application must specify a partial value that the API uses to filter values and return location codes for data switches meeting this criteria. The getDataSwitchLocations operation is operational when creating an end-user location. You must specify at least a partial value for the search. An end-user location can be created without the getDataSwitchLocations operation.

  • getTandemLocations

    Retrieves location code values for tandem locations for network locations.

  • getIncorporatedCodes

    Retrieves incorporated codes (inside incorporated area, outside incorporated area, and none) used to create a new end-user location.

  • getMultipleAddressPatterns

    Retrieves patterns (odd, even, or both) for a range of end-user locations. The user provides the start and end range, and indicate if those within the range are odd numbered, even numbered, or both.

Create Operation

  • createLocation

    Creates a new network, end-user location, or end-user location with network location alias and store it on the database.

Update Operation

  • updateLocation

    Applies updates to a network, end-user location, or end-user location with network location alias in the database.

Delete Operation

  • deleteLocation

    Removes a network or end-user location from the database. If the location is an end-user location with a network location alias, the user can choose to delete both the network and end-user location entries, delete just the end-user location entry, or delete the network location alias.

    Note:

    When network location type is B for an end-user location with a network location code alias, the user can delete just the alias, delete just the end-user, or delete both the end-user and network location entries.

Associate Operations

  • associateLocationRelationships

    Associates location relationships to a network location.

  • associateTandemTypes

    Associates tandem types to a network location.

  • associateNetworkAreas

    Associates network areas with a new or existing end-user location. Association of network areas to an end-user location can occur at the time the location is created. However, this class provides a more direct path for this association process so that existing end-user locations can have the association done without having to go through the update process. It assumes that a telephone number (TN) switch is specified for this end-user location. A TN switch must be set for the end-user location or an error will occur.

Unassociate Operations

  • unassociateLocationRelationships

    Removes location relationships from a network location.

  • unassociateTandemTypes

    Removes tandem types from a network location.

  • unassociateNetworkAreas

    Removes network area associations from an end-user location. The switch network area will not be removed or disassociated through this process.

  • unassociateSecondaryLSOs

    This operation unassociates secondary local servicing offices associated with an end-user location. Since end-user location is a type of network location, address and related formatting are identical to that of network location.

Process Flows

This section contains sample process flows for each type of signal: solicited and unsolicited. Use the sample flow as a template for developing your own process flows.

Solicited Messages

A solicited message is a message initiated by the MetaSolv Solution API servers. The Infrastructure API does not support solicited messages at this time.

Unsolicited Messages

An unsolicited message is a message initiated by the third-party software. The Infrastructure API plays the role of the server, and a third-party application plays the role of the client with the exception of the callback processing.

Sample Unsolicited Message Process Flow for Exporting Infrastructure Information

The overall process flow for exporting infrastructure information is as follows:

  1. The third-party application binds to the MetaSolv Solution Application Server to get a WDIRoot object reference.

  2. The third-party application invokes the connect operation of the WDIRoot interface, which yields a WDIManager object reference.

  3. The third-party application invokes the startTransaction operation of the WDIRoot interface to get a WDITransaction object reference and starts a database transaction.

  4. The third-party application invokes the startInfrastructureSession operation of the WDIManager interface to get an InfrastructureSession object reference.

  5. The third-party application instantiates a third-party implementation of a WDINotification object.

  6. The third-party application invokes the desired operation of the InfrastructureSession object, passing the WDINotification object.

  7. The Infrastructure server either returns the requested data structure asynchronously through invocation of the appropriate Succeeded operation of the WDINotification object, or returns exception information through invocation of the operationFailed operation of the WDINotification object.

  8. The third-party application invokes the destroyInfrastructureSession operation of the WDIManager interface.

  9. The third-party application invokes the destroyTransaction operation of the WDIManager interface.

  10. The third-party application invokes the disconnect operation of the WDIRoot interface.