C H A P T E R  4

Netra CT Element Management Agent API

This chapter contains the application programming interfaces (API) of the Netra CT element management agent software and includes the following sections:


Interface Overview

Netra CT management agent uses the Java Dynamic Management Kit (JDMK) framework as a Java API which provides the management capability for the Netra CT system.

JDMK supports JMX, which is a standard set of APIs for network and client management. JDMK provides an extended API along with different communication protocol adapters such as Remote Method Invocation (RMI), HTTP, HTML, and Simple Network Management Protocol (SNMP).

These protocol adapters are used to communicate with instances of JDMK agents; Netra CT management agent supports SNMP and RMI communication protocols.

You can find an introduction to the JDMK, tutorials, code samples, and APIs on the Sun Developer Network web site: http://java.sun.com

Summary of JDMK

JDMK's API and development tools can help you develop distributed management applications. The JDMK allows resources of one host to be monitored from another host.

A resource can be any entity, physical or virtual, that you want to monitor through your network. Physical resources include network elements, and virtual resources include applications operating on a host. A resource can be seen through its management interface, where its attributes, operations, and notifications are accessible by a management agent.

In order for a management agent to monitor a resource, the resource must be developed as a managed bean (MBean), which is Java object that represents the resource's management interface. If the resource itself is a Java application, it can be its own MBean. Otherwise, an MBean is a Java representation of a device.

In the JDMK model, a Java Dynamic Management agent follows the client-server model, in which an agent responds to the management requests from any number of client applications that wish to access its resources. The central component of an agent is the MBean server, which is a registry for MBean instances and provides the framework that allows agent services to interact with MBeans.

The JDMK provides protocol connector interfaces that allow remote applications to access agent applications and their resources. Remote method invocation (RMI) and HTTP are two such JDMK supported protocols that enable a Java client application running on one system to access the resources and methods of another Java server application running on a different system.

FIGURE 4-1 displays the location of the RMI/HTTP protocols between an agent application and a remote manager application.


FIGURE 4-1 Key Components of the Java Dynamic Management Kit

Image displaying RMI's location between an agent application and a remote manager application.


In FIGURE 4-1, a resource and an agent service are registered as MBeans with the agent application's MBean server. The application agent also contains a connector server for the RMI/HTTP protocols. The remote manager application is a Java application running on a distant host system. The manager contains the RMI/HTTP connector client and proxy MBeans representing the resource and service. When the RMI/HTTP connector client establishes the connection with the agent's RMI/HTTP connector server, the other components of the application can issue management requests to the agent.

Typically, you would first determine the management interface of your resource, that is, the information needed to manage it. This information is expressed as attributes and operations. An attribute is a value of any type that a manager can get or set remotely. An operation is a method with any signature and any return type that the manager can invoke remotely.

As specified by the Java Management extensions for instrumentation, all attributes and operations are explicitly listed in an MBean interface. This Java interface defines the full management interface of an MBean. The interface must have the same name as the class that implements it, followed by the MBean suffix. Since the interface and its implementation are usually in different files, two files make up a standard MBean. For example, the management interface of the class SimpleStandard (in the file SimpleStandard.java) is defined in the interface SimpleStandardMBean (in the file SimpleStandardMBean.java).

For a complete discussion of JDMK components and protocols, refer to the Java Dynamic Management Kit documentation set found on the Solaris documentation website, http://docs.sun.com. For additional information of JDMK and the RMI/HTTP protocol, refer to the documentation, tutorials, code samples, and APIs found on the Java Developers website: http://developer.java.sun.com.

Viewing the Netra CT Management Agent API Online

The entire Netra CT RMI API specification can be viewed online as cross-referenced HTML pages. By default, these HTML pages are installed in the following directory:

/opt/SUNWnetract/mgmt2.0/docs/api/com/sun/ctmgx/moh

You can view an index of all of these pages by opening the following link in an web browser:

file:///opt/SUNWnetract/mgmt2.0/docs/api/index.html

You can view additional Java API specification on the java.sun.com webpage at:

http://java.sun.com/apis.html


How the API Sections are Organized

The following sections in this chapter list the classes of the Netra CT RMI application programming interface.

Each class, interface, inner class, and inner interface has its own separate section. Each of these sections have three subsections consisting of a class or interface description, summary tables, and detailed member descriptions of the following:

Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.


Netra CT Management Agent Interfaces and Classes

TABLE 4-1 lists the management agent interfaces and TABLE 4-2 lists the management agent classes included in the Netra CT RMI API. In these tables, the term expose refers to the encapsulation of the object's variables inside a nucleus. This encapsulation allows for exposing (allowing access to) or hiding (denying access to) an object's access methods, which provides for greater modularity.

Detailed descriptions of the interfaces reside in the /opt/SUNWnetract/mgmt2.0/docs/api directory.

 


TABLE 4-1 Netra CT Management Agent Interfaces

Interface

Description

AlarmCardPluginMBean

Describes the management interface of the AlarmCardPluginMBean

AlarmSeverityProfileMBean

Describes the management interface of the AlarmSeverityProfileMBean.

CgtpServiceMBean

Describes the management interface of the CgtpServiceMBean.

ContainmentTreeMBean

Describes the management interface of the ContainmentTreeMBean.

CpiSlotMBean

Describes the management interface of the CpiSlotMBean objects.

CpuCardEquipmentMBean

Describes the management interface for the CpuCardEquipmentMBean.

CpuPluginMBean

Describes the management interface of the CpuPluginMBean board objects as perceived from the alarm card MOH.

DaemonMBean

Describes the interface for the DaemonMBean.

EFDMBean

Describes the management interface of the EFDMBean.

EquipmentHolderMBean

Describes the management interface of the EquipmentHolderMBean.

EquipmentMBean

Describes the interface of the EquipmentMBean.

EtherIfStatsMBean

Describes the management interface of the EtherIfStatsMBean I/O Statistics Monitoring service.

FullLogMBean

Describes the interface of the FullLogMBean

IpServiceMBean

Describes the interface of IpServiceMBean, the UNIX File System (UFS) service.

LOLMBean

Describes the management interface of LOLMBean, the Latest Occurrence Log MBean

NEMBean

Describes the management interface of the NEMBean.

NetworkInterfaceMBean

Describes the management interface for NetworkInterfaceMBean.

NfsServiceMBean

Describes the management interface of NfsServiceMBean, the Network File System (NFS) Monitor service.

NumericSensorMBean

Describes the interface for NumericSensorMBean.

PlugInUnitMBean

Describes the management interface of the PlugInUnitMBean.

RnfsServiceMBean

Describes the interface of RnfsServiceMBean, the Reliable Network File System (RNFS) Monitor service.

SensorMBean

Describes the interface for the SensorMBean.

SlotMBean

Describes the management interface of the SlotMBean.

SoftwareMonitorMBean

Describes the interface of the SoftwareMonitorMBean.

SoftwareServiceMBean

Describes the interface of SoftwareServiceMBean.

TcpServiceMBean

Describes the interface of TcpServiceMBean, the Transmission Control Protocol (TCP) service.

TerminationPointMBean

Describes the management interface of the TerminationPointMBean.

UdpServiceMBean

Describes the interface of UdpServiceMBean, the User Datagram Protocol (UDP) service.

UfsServiceMBean

Describes the interface of UfsServiceMBean, the UNIX File System (UFS) service.


TABLE 4-2 Netra CT Management Agent Classes

Class

Description

AdministrativeState

Defines the AdministrativeState of the device.

AlarmNotification

The AlarmNotification class represents an alarm notification emitted by an MBean.

AlarmNotificationFilter

Allows you to filter AlarmNotification notifications by selecting the types and severities of interest.

AlarmSeverity

Defines the AlarmSeverity objects for use with AlarmNotification.

AlarmType

This class is an enumeration of predefined AlarmType, user need to use one of the predefined types to construct an AlarmNotification object.

AttributeChangeNotification

Provides definitions of the AttributeChangeNotification sent by MBeans.

AttributeChangeNotificationFilter

The filtering of the AttributeChangeNotificationFilter is performed on the name of the observed attribute.

AuthClient

AuthClient class defines the client utility routines, particularly for authentication.

AvailabilityStatus

Defines the AvailabilityStatus of the plug-in unit object.

EquipmentHolderType

Describes the management interface of the EquipmentHolderType.

LogFullAction

Describes the action to perform when LogFullAction indicates the log is full.

MohNames

Defines MohNames, the public constants or static variables for MOH user to communicate to the MBean server.

ObjectCreationNotification

Defines ObjectCreationNotification, the creation notifications sent by MBeans.

ObjectDeletionNotification

Defines ObjectDeletionNotification, the deletion notifications sent by MBeans.

OperationalState

Defines the OperationalState of a device, equipment, or plug-in.

SlotStatus

Defines SlotStatus, the status of the slot object.

StateChangeNotification

Defines StateChangeNotification, the state change notifications sent by MBeans.

StateChangeNotificationFilter

Describes StateChangeNotificationFilter, the filtering performed on the name of the observed attribute.