A.1 IDL specification (file name “GenericIRPManagementConstDefs.idl”)

32.3133GPPCommon Object Request Broker Architecture (CORBA) Solution Set (SS)Generic Integration Reference Point (IRP) managementRelease 9Telecommunication managementTS

//File: GenericIRPManagementConstDefs.idl

#ifndef _GENERIC_IRP_MANAGEMENT_CONST_DEFS_IDL_

#define _GENERIC_IRP_MANAGEMENT_CONST_DEFS_IDL_

#include <TimeBase.idl>

// This statement must appear after all include statements

#pragma prefix "3gppsa5.org"

/* ## Module: GenericIRPManagementConstDefs

This module contains definitions commonly used among all IRPs.

==============================================================

*/

module GenericIRPManagementConstDefs

{

/*

* Definition imported from CosTime.

* The time refers to time in Greenwich Time Zone.

* It also consists of a time displacement factor in the form of minutes of

* displacement from the Greenwich Meridian.

*/

typedef TimeBase::UtcT IRPTime;

typedef string DN;

typedef sequence <DN> DNList;

enum Signal {OK, FULL_FAILURE, PARTIAL_FAILURE};

enum Result {SUCCESS, FAILURE};

/*

* This holds a list of notification Ids

*/

typedef sequence <long> NotifIdSet;

/*

* This holds identifiers of notifications that are correlated.

*/

struct CorrelatedNotification

{

DN source;// Contains DN of MO that emitted the set of notifications

// DN string format in compliance with Name Convention for

// Managed Object.

// This may be a zero-length string. In this case, the MO

// is identified by the value of the MOI attribute

// of the Structured Event, i.e., the notification.

NotifIdSet notif_id_set; // Set of related notification ids

};

/*

* The VersionNumber is a string that identifies the IRP specification name

* and its version number. See definition "IRP document version number

* string" or "IRPVersion".

* The VersionNumberSet is a sequence of such VersionNumber. It is returned

* by get_XXX_IRP_versions(). The sequence order has no significance.

*/

typedef string VersionNumber;

typedef sequence <VersionNumber> VersionNumberSet;

typedef string MethodName;

typedef string ParameterName;

typedef sequence <ParameterName> ParameterList;

/*

* The Method defines the structure to be returned as part of

* get_supported_operations_profile(). The name shall be the actual method

* name (ex. "attach_push", "change_subscription_filter", etc.)

* The parameter_list contains a list of strings. Each string shall be

* the actual parameter name (ex. "manager_reference", "filter", etc.)

*/

struct Method

{

MethodName name;

ParameterList parameter_list;

};

/*

* List of all methods and their associated parameters.

*/

typedef sequence <Method> MethodList;

typedef string NotificationName;

struct Notification

{

NotificationName name;

ParameterList parameter_list;

};

typedef sequence <Notification> NotificationList;

/*

* Defines the name of an attribute of a Managed Object

*/

typedef string MOAttributeName;

/*

* Defines the value of an attribute of a Managed Object in form of a CORBA

* Any. Apart from basic datatypes already defined in CORBA, the allowed

* attribute value types are defined in the AttributeTypes module.

*/

typedef any MOAttributeValue;

/*

* Represents an attribute: "name" is the attribute name

* and "value" is the attribute value.

*/

struct MOAttribute

{

MOAttributeName name;

MOAttributeValue value;

};

typedef sequence <MOAttribute> MOAttributeSet;

typedef string ManagerIdentifier;

/*

* The following are types carrying an optional parameter.

* If the boolean is TRUE, then the value is present.

* Otherwise the value is absent.

*/

union StringOpt switch (boolean)

{

case TRUE: string value;

};

union ShortOpt switch (boolean)

{

case TRUE: short value;

};

union UnsignedShortOpt switch (boolean)

{

case TRUE: unsigned short value;

};

union LongOpt switch (boolean)

{

case TRUE: long value;

};

union UnsignedLongOpt switch (boolean)

{

case TRUE: unsigned long value;

};

union IRPTimeOpt switch (boolean)

{

case TRUE: GenericIRPManagementConstDefs::IRPTime value;

};};

#endif // _GENERIC_IRP_MANAGEMENT_CONST_DEFS_IDL_