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_