Description: The Monfox DynamicTMN Java CMIS Messaging API provides the communication and messaging interface for sending and receiving Common Management Information Service (CMISE) messages using the Common Management Information Protocol (CMIP).
Java CMIS Messaging API
[Company] [Products] [Services] [Support] [Contact Us]
Home
 
 

DynamicTMN® Java CMIS Messaging API


Java CMIS API

 
Overview | Classes | Examples | Standards | Related Components

The Java CMIS Messaging API includes a complete set of Common Management Information Service (CMIS) oriented communication and messaging classes for sending and receiving Common Management Information Protocol (CMIP) messages.


 

   CMIS Messaging API Overview

 top   

The Java CMIS Messaging API provides high-level classes for the complete set of CMIS messages and CMIP parameter types as defined in the ITU standards. The API also defines a set of communications and association management classes which simplify the development of CMIS level manager and agent applications. The primary API features include:

  • an easy to use CMIS service level messaging API
  • support for both CMIS manager and agent development
  • support for all standard CMIS messages
  • support for listener based CMIS notification dispatching
  • support for listener based CMIS indication dispatching
  • support for pending requests for response processing
  • fully configurable message processing (queueing, threading)
  • a completed set of CMIS message classes
  • all standard CMIP parameter classes
  • transport independent association classes
  • manager role naming service for association management
  • easily extensible to add custom protocol tranport providers
  • simplified object naming syntax (ex: "/managedElementId=191")

 

   CMIS Messaging API Classes

 top   

The Java CMIS Messaging API service message classes correspond to the different CMIS services defined in the Common Management Information Service ITU standard (X.710). For example, some of the Java CMIS message classes are:

M_GET_Req      : M-GET Request
M_GET_Ind      : M-GET Indication
M_GET_Cnf      : M-GET Confirmation
M_GET_Rsp      : M-GET Response

M_SET_Req      : M-SET Request
M_SET_Ind      : M-SET Indication
M_SET_Cnf      : M-SET Confirmation
M_SET_Rsp      : M-SET Response

... and so on for M-CREATE, M-DELETE, M-ACTION, 
... M-EVENT-REPORT and M-CANCEL-GET

In addition to the message classes, the CMIS Messaging API provides high-level parameter and error classes for the CMIP datatypes defined in the Common Management Information Protocol ITU standard (X.710). Some of the parameter and error classes are:

ObjectClass           AttributeId 
ObjectInstance        EventTypeId
Scope                 ActionTypeId
Filter                Attribute
Mode                  Modification
AttributeList         GetListError
Sync                  SetListError

And finally, the API includes high-level CMIS communications classes for managing associations with remote agents and handling messages sent and received by your application. These communications classes are listed below:

AgentHandle             : handle to a remote agent
Assocation              : association with remote entity
AE                      : local application entity
CMISE                   : CMIS messing 'sending' interface
Notification            : incoming notification
NotificationListener    : CMIS event listener
IndicationListener      : CMIS indication listener
M_GET_PendingIndication : represents uncompleted indication
M_GET_PendingRequest    : represents outstanding request

... and so on for the other CMIS services

For a complete set of API Javadoc, developer guides, agent simulators and much more, please click here to download the DynamicTMN® CMIP Suite evaluation package.


 

   CMIS Messaging API Examples

 top   

The following example demonstrates the use of the CMIS Messaging API to create an association, send an M-GET request, receive the M-GET response, and view the results:


   // -- create an M-GET request to retrieve 2
   // -- attributes from the specified network element
   // --
   M_GET_Req req = new M_GET_Req("managedElement", 
                                 "/managedElementId=1");
   req.addAttrid("locationName");
   req.addAttrid("administrativeState");

   // -- get the AgentHandle from the API's naming service
   // -- for the remote agent based on the object instance
   // --
   NamingService nameserv   = TMNFramework.GetNamingService();
   AgentHandle agent_handle = 
	       nameserv.getAgentHandle(req.getObjectInstance());

   // -- create and return association to the agent
   // --
   Association assoc = agent_handle.getValidAssociation();

   // --  send the M-GET request to the agent
   // --
   M_GET_PendingRequest pr = assoc.cmise().send(req, 10);

   // --  block awaiting the M-GET confirmation (response)
   // --
   M_GET_Cnf cnf = pr.cnf();

    
   if ( ! (cnf.isError() || cnf.isReject()) )
   {
      Attribute.Iterator iter = cnf.getAttributes();
      while(iter.hasNext())
      {
         Attribute attr = iter.next();

          AttributeId  id = attr.getAttributeId(); 
          AbstractData val = attr.getAttributeValue(); 
          System.out.println("(" + id + " = " + val + ")");
     }
   }
   else
   {
      System.out.println("error: " + cnf);
   }


For a complete set of API examples, API Javadoc, developer guides, agent simulators and much more, please download the DynamicTMN® CMIP Suite evaluation package.


Download DynamicTMN® CMIP Suite Evaluation

 

   Supported Standards

 top   

The CMIS Messaging API implements the following standards:

  • TMF 041: Based on the TMForum CMIS API Standard
  • ITU-T X.219: Remote Operations (ROSE) Service Definition
  • ITU-T X.229: Remote Operations (ROSE) Protocol
  • ITU-T X.710: Common Management Information Service (CMIS)
  • ITU-T X.711: Common Management Information Protocol (CMIP)
  • RFC1006: OSI over TCPIP (CMIP over TCPIP)

 

   Related DynamicTMN® Components

 top   

The Java CMIS Messaging API uses the following Java APIs:


Is used by the following DynamicTMN® Java APIs:

And is included in the following DynamicTMN® products:



Download DynamicTMN® CMIP Suite Evaluation


Java is a trademark of Sun Microsystems, Inc (Java™). DynamicTMN®, DynamicSNMP® and DynamicTL1® are registered trademarks of Monfox, LLC. DynamicOSI™ is a trademark of Monfox, LLC. Other other logos, trademarks and brands are the property of their respective owners.

 
 
     

Monfox Home NEW Copyright©1997-2011, Monfox, LLC, -- ALL RIGHTS RESERVED -- Webmaster