Extension Toolkit - Developer’s Guide

     Previous  Next    Contents    View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Document Roadmap

Document Scope and Audience

Guide to This Document

Terminology

Related Documentation

Overview of the Extension Toolkit

The Eclipse Plug-in

The Sample Traffic Path

The Testing Tools Suite

Using the Eclipse Plug-in for Extension Toolkit

About the Eclipse plug-in for the Extension Toolkit

Configure Eclipse

Prerequisites

Basic configuration of Eclipse environment

Configuration of the Eclipse plug-in for the Extension Toolkit

Using the Eclipse plug-in

Generating a traffic path project

Adding a plug-in to a traffic path project

Removing a plug-in from a traffic path project

Creating a plug-in project for an existing Network Gatekeeper application-facing interface

Description of a Generated Project

Generated project

Traffic path project

Plug-in project for an existing interface

Build files and targets for a traffic path project

Deployment build files

Traffic path build file

Plug-in build file

Generated classes

ManagedPlugin

ManagedPlugin Skeleton

PluginImpl

PluginImpl skeleton

RequestFactory Skeleton

Prepare and deploy the extension

The Traffic Path Example

About the traffic path example

Sequence diagrams

Application to Network

Network to Application

Web Service interface definition

Interface: SendData

Operation: sendData

Interface: NotificationManager

Operation: startEventNotification

Operation: stopEventNotification

Interface: NotificationListener

Operation: notifyDataReception

Web Services Layer

Service Capability Layer

Plug-in Layer

Plug-in Components

Network Interface

Plug-in Manager Registration

Operation and management

Storage

Policy Enforcement

Example SLAs

EDR Generation

CDR Generation

Alarm Generation

Logging

Statistics Generation

Classes in the plug-in

context.ContextTranslatorImpl

managed_plugin.ManagedPluginImpl

management.ConfigurationStoreHandler

management.Management

management.MBean

management.MBeanImpl

notification.NotificationData

notification.NotificationHandler

notification.NotificationHandlerImpl

notification.south.adapter.OutboundAdapter

notification.south.adapter.OutboundRegistry

notification_manager.north.NotificationManagerPluginImpl

send_data.north.SendDataPluginImpl

send_data.south.adapter.InboundAdapter

send_data.south.adapter.InboundAdapterImpl

send_data.south.adapter.PluginSouthImpl

store.StoreHelper

store.FilterImpl

org.netex.OutboundProxyBean

Policy

Overview

Policy Request Data

Adding a New Rule

Mapping PolicyRequest Data

Creating a New Rule File by Extending an Existing File: an Example

List the Current Services’ Rule Files

Select the Service Whose Rule File You Wish to Extend

Add a New Extended Rule

Load the New Rule File

Using RequestContext Parameters Defined in Service Level Agreements

Extending Service Level Agreements

Update the SLA Schema

Load the new SLA schema into the Policy Service

Update and reload the rule files

Update the appropriate SLAs

Load the updated SLAs

Core and Core Utilities

Core and Core Utilities

Core

Interface: ServiceDeployable

Interface: ServiceDeployableExt

Interface: ServiceContext and SLEEContext

Core utilities

Class: InstanceFactory

Class: ClusterHelper

Service: Event Channel Service

Interface: SLEEEventChannel

Interface: EventChannelListener

Service: Time Service

Interface: SLEETimeManager

Interface: SLEETimerListener

Other APIs

Plug-in

Interface: Plugin

Interface: PluginNorth

Interface: PluginNorthCallback

Interface: PluginSouth

Class: ServiceType

Interface: ContextMapperInfo

Interface: RequestContext

Class: ManagedPlugin

Class: AbstractManagedPlugin

Class: RequestFactory

Class: RequestInfo

Management

EDR

Service Correlation

Interface: ExternalInvocation

Class: ExternalInvocatorFactory

Class: ServiceCorrelation

Implementing the ExternalInvocation Interface

Parameter Tunneling

Storage Services

ConfigurationStore

Interfaces

StorageService

Store configuration file

<store>

<db_table>

<query>

<provider-mapping>

<providers>

Using shared libraries

Annotations, EDRs, Alarms, and CDRs

About aspects and annotations

How aspects are applied

Context aspect

EDR Generation

Exception scenarios

Adding data to the RequestContext

Using translators

Trigger an EDR programmatically

EDR Content

Using send lists

RequestContext and EDR

Categorizing EDRs

The EDR descriptor

Special characters

Values provided

Boolean semantic of the filters

Example filters

Example 1: filter

Example 2: Alarm filter

Example 3: Alarm filter

Example 4: filter

Example 5: filter with corresponding code for manually triggering a matching EDR

Check-list for EDR generation

Frequently Asked Questions about EDRs and EDR filters

Alarm generation

Trigger an alarm programmatically

Alarm content

CDR generation

Triggering a CDR

Trigger a CDR programmatically

CDR content

Additional_info column

Out-of-the box (OOTB) CDR support

Extending Statistics

Making Traffic Paths Manageable

Overview

Create Standard JMX MBeans

Create a Java Interface

Implement the Interface

Register the MBeans with the Runtime MBean Server

Use the Configuration Store to Persist Values

Testing Your Traffic Path

Overview

How It Works

Application-Initiated (MT)

Network-Initiated (MO)

Setting up the Testing Tools

Prepare to generate the Web Services client stub

Prepare to generate the callback Web Service, if necessary

Implement the TestAgentResult object

Deploy the callback Web Services and the Listener Test Agent to a separate ear file

Create the test case

Implement the notification matching functionality in the test case

Implement the EDR matching functionality in the test case

Edit the properties files, as necessary

Overview of Testing Tools Component Packages

Adapting 2.2 Style Traffic Paths

Adapting a 2.2 Style Plug-in for a 3.0 Backwards Compatible Traffic Path

Adapting a 2.2 Style Traffic Path Based on a 3.0 Supported Application Facing Interface

Merge the 2.2 Web Services implementation

Implement the Managed Plugin class

Adapting a 2.2 Style Traffic Path Based on a non-3.0 Supported, Web Services-based, Application Facing Interface

SLA Parameters and Policy enforcement for new plug-ins

sendMessage

getMessageDeliveryStatus

getMessage

getReceivedMessages

getMessageURIs

startMessageNotification

stopMessageNotification

notifyMessageReception

notifyMessageDeliveryReceipt

chargeAmount

refundAmount

chargeVolume

getAmount

refundVolume

chargeVolume

releaseReservation

reserveAmount

reserveAdditionalAmount

chargeReservation

getAmount

releaseReservation

reserveAdditionalVolume

reserveVolume

getLocation

getLocationForGroup

getTerminalDistance

endNotification

startGeographicalNotification

startPeriodicNotification

locationEnd

locationError

locationNotification

Checklist


  Back to Top       Previous  Next