Description: The Monfox DynamicTMN Java ASN.1 API provides the API classes for constructing, accessing and manipulating Abstract Syntax Notation One (ASN.1) values
DynamicTMN®: Java ASN.1 API (Abstract Syntax Notation One)
[Company] [Products] [Services] [Support] [Contact Us]
Home
 
 

DynamicTMN® Java ASN.1 API

 

Java Abstract Syntax Notation One (ASN.1) API

Overview | Classes | Examples | Standards | Related Components

The DynamicTMN® Java ASN.1 API includes the complete set of Abstract Syntax Notation One (ASN.1) value API classes used by the DynamicTMN® product suite. These API classes provide the set of generic, high-level interfaces used in constructing, accessing and manipulating ASN.1 values for use with other DynamicTMN® APIs.


 

   ASN.1 API Overview

 top   

The DynamicTMN® Java ASN.1 API has a developer-friendly interface with a variety of methods for populating and accessing ASN.1 values. The ASN.1 API may be used standalone to perform ASN.1/BER encoding and decoding, with the CMIS API to populate and evaluate CMIS message parameters, or with the GDMO Manager API and GDMO Agent API to populate and access GDMO attribute, action and notification information. The ASN.1 APIs features include:

  • high-level ASN.1 value classes for all ASN.1 builtin types
  • metadata driven ASN.1 Basic Encoding Rules (BER) coder/decoder
  • metadata based named OID resolution with reverse name lookup
  • convenience classes and methods for ease of use
  • ASN.1 Value Notation (AVN) string parsing/generation
  • choice of string based AVN or convenience APIs
  • configurable output formats
  • smart BER buffer caching for optimized performance

 

   ASN.1 API Classes

 top   

The ASN.1 API classes correspond to the different ASN.1 types defined in the ASN.1 syntax standard (X.208/X.680). For example, some of the ASN.1 value classes are:

AbstractData      : Common base superclass
BOOLEAN           : ASN.1 BOOLEAN values
NULL              : ASN.1 NULL values
REAL              : ASN.1 REAL values
ENUMERATED        : ASN.1 ENUMERATED values
BIT_STRING        : ASN.1 BIT STRING values
INTEGER           : ASN.1 INTEGER values
AbstractString    : ASN.1 String/OCTET STRING values
OBJECT_IDENTIFIER : ASN.1 OBJECT IDENTIFIER values
CHOICE            : ASN.1 CHOICE values
SEQUENCE_OF       : ASN.1 SEQUENCE OF values
SET_OF            : ASN.1 SET OF values
StructuredData    : ASN.1 SET and SEQUENCE values
AnyData           : ASN.1 ANY DEFINED BY values

The ASN.1 API uses the DynamicTMN® GDMO and ASN.1 Metadata API to validate and generate ASN.1 values and value notation strings.


 

   ASN.1 API Examples

 top   

See the following example which shows the use of the ASN.1 API to construct and access the value for a simple ASN.1 SEQUENCE:


   // -- Example ASN.1 Type 
   // 
   //    Record ::= SEQUENCE
   //               {
   //                   name    GraphicString,                
   //                   age     INTEGER,
   //                   married BOOLEAN
   //               }


   // -- Create a value using the StructuredData class
   
   StructuredData record1 = new StructuredData("Record");
   record1.set("name", "Barney Gumble");
   record1.set("age", 43);
   record1.set("married", false);

   // -- Create a value using ASN.1 value notation --


   String avn =  "{ name 'Montgomery Burns', "
               + "  age   89,"
               + "  married FALSE }";

   AbstractData record2 = AbstractData.Create("Record", avn);

                                  
   // -- Extract fields from the value

   String  name    = record2.getAsString("name");
   int     age     = record2.getAsInt("age");
   boolean married = record2.getAsBool("married");


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


Download DynamicTMN® CMIP SuitSuite Evaluation


 

   Supported Standards

 top   

The DynamicTMN® Java ASN.1 API supports the following standards:

  • Java 2: Java 2 SDK version 1.2 or greater
  • TMF 040: Based on the TMForum ASN.1 API Standard
  • ITU-T X.208/X.680: Abstract Syntax Notation One (ASN.1)
  • ITU-T X.209/X.690: ASN.1 Basic Encoding Rules (BER)

 

   Related Components

 top   

The DynamicTMN® Java ASN1 API uses the following DynamicTMN® API:


Is used by the following DynamicTMN® Java APIs:

As well as is used by by the following DynamicTMN® products:





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

 
 
     

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