12.6.2.2 Transferring Framework Data



 

Introduction

 

The data associated with the various modules present in Web NMS are referred to as framework data. This data is transferred from the Central to Distributed Mediation Server and vice versa as a result of client requests and response. The data that is transferred can be customized based on the user-specific requirements. The following sections explains how the customization of the framework data is possible.

 

How It Works

  1. The ModuleDataCustomizer interface implementation detail is provided in DataCustomization.xml located in <Central Home>/conf and <DMS Home>/conf directories respectively.

  2. On initialization, both these servers read this configuration file to initiate customization.

The modules for which customization can be performed  and the corresponding nodes in the XML file are

 

 

Module Name

Node Name

Event/Alert

Event

Topology

Topology

Performance

Performance

 

How to Implement

 

To customize the data

  1. The Distributed Mediation Server and Central server read the DataCustomization.xml file, present in the conf directory, on initialization and identify the customization implementation class for each module.

  2. If the DataCustomization.xml is not configured for any customization, the Central server and the Distributed Mediation Server assume that no customization is needed.

  3. The getCustomizedData() method in ModuleDataCustomizer interface is invoked before the data is transferred to the counterpart.

  4. The user implementation processes the data and the modified data is returned.

  5. If the data need to be dropped, NULL should be returned.

 

The getCustomizedData() method of ModuleDataCustomizer interface has the following signature,

 

DataObject getCustomizedData(String moduleName, DataObject dataObject, boolean isFromDMS);

 

The parameters are

The getCustomizedData() method returns the modified Data Object. The method implementation should contain the logic for customizing the data that is to be transferred to the counterpart. The implementation of the ModuleDataCustomizer interface can be done in two ways, a single implementation for handling all modules or different implementations handling different modules. The entry in the DataCustomization.xml file present in the conf directory depends on the type of implementation and is explained as follows:

<default_customizer> ..</default_customizer> tags.

At the Central server, the DataCustomization.xml file should contain the entry for the implementation for the Central server; and on the Distributed Mediation Server, the DataCustomization.xml file should contain the entry for the implementation for the Distributed Mediation Server.

 

Example: Let Central server customization be UserImplCentral and Distributed Mediation Server  customization be UserImplDMS. In this case, the entry in the DataCustomization.xml file will be as follows:

 

 

 Central server  :  <default_customizer>com.test.UserImplCentral</default_customizer>

 

 Distributed Mediation Server  : <default_customizer>com.test.UserImplDMS</default_customizer>

           <Module>

                <name> ...</name>

                 <customizer> ...</customizer>

           </Module>

 

Example: Let the Central server customization for handling Events and Topology be UserEventImplCentral and UserTopoImplCentral, respectively. Let the Distributed Mediation Server  customization for handling Events and Topology be UserEventImplDMS and UserTopoImplDMS. In this case, the entry in the DataCustomization.xml file will be as follows:

 

 Central server  :

<Module>

                <name> Event </name>

                 <customizer> com.test.UserEventImplCentral </customizer>

           </Module>

<Module>

                <name> Topology </name>

                 <customizer> com.test.UserTopoImplCentral </customizer>

           </Module>

 

 Distributed Mediation Server  :

<Module>

                <name> Event </name>

                 <customizer> com.test.UserEventImplDMS </customizer>

           </Module>

<Module>

                <name> Topology </name>

                 <customizer> com.test.UserTopoImplDMS </customizer>

           </Module>

 

 

Note: In Central Server, there is no provision to have Distributed Mediation Server-specific implementations. There can be only one implementation in the Central server for all the Distributed Mediation servers present.

 

Sample Scenarios    

      

Scenario One: Data is being transferred from the Distributed Mediation Server to the Central server. The order of events is as follows:

 

Distributed Mediation Server

Central Server

 

Scenario Two: Data is being transferred from the Central server to the Distributed Mediation Server. The order of events is as follows:

 

Central server

Distributed Mediation Server    

  In short,

 

 Server

Data from Distributed Mediation Server to Central Server

Data from Central Server to Distributed Mediation Server

Distributed Mediation Server

Will convert DataObject to Modified DataObject

Will extract DataObject  from Modified DataObject

Central server

Will extract DataObject from Modified DataObject

Will convert DataObject to Modified DataObject

 

Warning:

  • User implementations can append a child element or add an attribute to the DataObject element, but user should not modify the base Web NMS properties, as that will lead to undesirable results and affect the data synchronization between Central server and Distributed Mediation Server.

  • When the data is dropped by returning NULL, the data synchronization between Central server and Distributed Mediation Server will be affected.

 

 



Copyright © 1996-2004, AdventNet Inc. All Rights Reserved.