A.1 IDL specification (file name "FileTransferIRPConstDefs.idl")

32.3433GPPCommon Object Request Broker Architecture (CORBA) Solution Set (SS)File Transfer (FT) Integration Reference Point (IRP)Telecommunication managementTS

//File: FileTransferIRPConstDefs.idl

#ifndef _FILE_TRANSFER_IRP_CONST_DEFS_IDL_

#define _FILE_TRANSFER_IRP_CONST_DEFS_IDL_

#include <TimeBase.idl>

// This statement must appear after all include statements

#pragma prefix "3gppsa5.org"

/* ## Module: FileTransferIRPConstDefs

This module contains commonly used definitions for FileTransferIRP.

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

*/

module FileTransferIRPConstDefs

{

enum Result {OK, FAILURE};

typedef TimeBase::UtcT UTCTime;

enum LocationChoice {DIRECTORY, URL};

//The FileLocation may be a directory path or a URL

union FileLocation switch (LocationChoice)

{

case DIRECTORY: string file_location_directory;

/* e.g. \\202.112.101.1\D:\user\performanceFiles\<fileName> */

case URL: string file_location_url;

/* e.g. ftp://nms.telecom_org.com/datastore/<fileName> */

};

typedef unsigned long FileSize; //the unit is byte

typedef string FileCompression;

typedef string FileFormat;

struct FileInfo

{

FileLocation file_location;

FileSize file_size;

UTCTime file_ready_time;

UTCTime file_expiration_time;

FileCompression file_compression;

FileFormat file_format;

};

typedef sequence<FileInfo> FileInfoList;

const short PM_MANAGEMENT_DATA_TYPE = 1; //Performance Management

const short CM_MANAGEMENT_DATA_TYPE = 2; //Configuration Management

const short IM_MANAGEMENT_DATA_TYPE = 3; //Inventory Management

const short TM_MANAGEMENT_DATA_TYPE = 4; //Test Management

const short CT_MANAGEMENT_DATA_TYPE = 5; //Subscriber & Equipment Trace

const short NL_MANAGEMENT_DATA_TYPE = 6; //Notification Log

const short CG_MANAGEMENT_DATA_TYPE = 7; //Charging

const short OT_MANAGEMENT_DATA_TYPE = 8; //Other Types

/*

Define the parameters specified in the notifyFileReady

and notifyFilePreparationError notifications.

*/

interface AttributeNameValue

{

const string FILE_INFO_LIST = "FILE_INFO_LIST";

const string ADDITIONAL_TEXT = "ADDITIONAL_TEXT";

const string REASON = "REASON";

};

};

#endif // _FILE_TRANSFER_IRP_CONST_DEFS_IDL_