Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //File: NotificationIRPSystem.idl
- //The IRP document version number is "Notification IRP V1.2.0"
- #ifndef _NotificationIRPSystem_idl_
- #define _NotificationIRPSystem_idl_
- #include "CosNotifyChannelAdmin.idl"
- #include "ManagedGenericIRPConstDefs.idl"
- #include "ManagedGenericIRPSystem.idl"
- #include "NotificationIRPConstDefs.idl"
- // This statement must appear after all include statements
- #pragma prefix "3gppsa5.org"
- /* ## Module: NotificationIRPSystem
- This module implements capabilities of Notification IRP.
- ================================================================
- */
- module NotificationIRPSystem
- {
- /*
- System fails to complete the operation. System can provide reason
- to qualify the exception. The semantics carried in reason
- is outside the scope of this IRP.
- */
- exception GetNotificationIRPVersions { string reason; };
- exception GetNotificationIRPOperationsProfile { string reason; };
- exception GetNotificationIRPNotificationProfile { string reason; };
- exception Attach { string reason; };
- exception DetachException { string reason; };
- exception GetSubscriptionStatus { string reason; };
- exception ChangeSubscriptionFilter { string reason; };
- exception GetNotificationCategories { string reason; };
- exception GetSubscriptionIds { string reason; };
- exception AlreadySubscribed {};
- exception AtLeastOneNotificationCategoryNotSupported {};
- interface NotificationIRP
- {
- /*
- Return the list of all supported Notification IRP versions
- Each IRPVersion is defined by the rule in TS 32.311 clause titled
- "IRP document version number string"
- */
- ManagedGenericIRPConstDefs::VersionNumberSet get_notification_IRP_versions
- (
- )
- raises (GetNotificationIRPVersions);
- /*
- Return the list of all supported operations and their supported
- parameters for a specific Notification IRP version.
- */
- ManagedGenericIRPConstDefs::MethodList
- get_notification_IRP_operations_profile (
- in ManagedGenericIRPConstDefs::VersionNumber
- notification_irp_version
- )
- raises (GetNotificationIRPOperationsProfile,
- ManagedGenericIRPSystem::OperationNotSupported,
- ManagedGenericIRPSystem::InvalidParameter);
- /*
- Return the list of all supported notifications.
- Agent should always throw a ManagedGenericIRPSystem::OperationNotSupported
- exception.
- Similar method, such as get_alarm_IRP_notification_profile,
- is supported in other IRP versions such as Alarm IRP.
- */
- ManagedGenericIRPConstDefs::MethodList
- get_notification_IRP_notification_profile (
- in ManagedGenericIRPConstDefs::VersionNumber
- notification_irp_version
- )
- raises (GetNotificationIRPNotificationProfile,
- ManagedGenericIRPSystem::OperationNotSupported,
- ManagedGenericIRPSystem::InvalidParameter);
- /*
- Obtain the list of all supported notification categories.
- */
- NotificationIRPConstDefs::NotificationCategorySet
- get_notification_categories (
- out NotificationIRPConstDefs::NotificationTypesSet
- notification_type_list
- )
- raises (GetNotificationCategories,
- ManagedGenericIRPSystem::OperationNotSupported);
- NotificationIRPConstDefs::SubscriptionId attach_push (
- in string manager_reference,
- in unsigned long time_tick,
- in NotificationIRPConstDefs::NotificationCategorySet
- notification_categories,
- in ManagedGenericIRPConstDefs::StringTypeOpt filter
- )
- raises (Attach, ManagedGenericIRPSystem::ParameterNotSupported,
- ManagedGenericIRPSystem::InvalidParameter, AlreadySubscribed,
- AtLeastOneNotificationCategoryNotSupported);
- NotificationIRPConstDefs::SubscriptionId attach_push_b (
- in string manager_reference,
- in unsigned long time_tick,
- in NotificationIRPConstDefs::NotificationCategorySet
- notification_categories,
- in ManagedGenericIRPConstDefs::StringTypeOpt filter,
- out CosNotifyChannelAdmin::SequenceProxyPushSupplier system_reference
- )
- raises (Attach, ManagedGenericIRPSystem::OperationNotSupported,
- ManagedGenericIRPSystem::ParameterNotSupported,
- ManagedGenericIRPSystem::InvalidParameter,
- AlreadySubscribed, AtLeastOneNotificationCategoryNotSupported);
- NotificationIRPConstDefs::SubscriptionId attach_pull (
- in string manager_reference,
- in unsigned long time_tick,
- in NotificationIRPConstDefs::NotificationCategorySet
- notification_categories,
- in ManagedGenericIRPConstDefs::StringTypeOpt filter,
- out CosNotifyChannelAdmin::SequenceProxyPullSupplier system_reference
- )
- raises (Attach, ManagedGenericIRPSystem::OperationNotSupported,
- ManagedGenericIRPSystem::ParameterNotSupported,
- ManagedGenericIRPSystem::InvalidParameter,
- AlreadySubscribed, AtLeastOneNotificationCategoryNotSupported);
- /*
- Replace the present filter constraint with the one provided.
- */
- void change_subscription_filter (
- in NotificationIRPConstDefs::SubscriptionId subscription_id,
- in string filter
- )
- raises (ChangeSubscriptionFilter,
- ManagedGenericIRPSystem::OperationNotSupported,
- ManagedGenericIRPSystem::InvalidParameter);
- /*
- Check the current state of the subscription.
- */
- NotificationIRPConstDefs::NotificationCategorySet get_subscription_status
- (
- in NotificationIRPConstDefs::SubscriptionId subscription_id,
- out ManagedGenericIRPConstDefs::StringTypeOpt filter_in_effect,
- out NotificationIRPConstDefs::SubscriptionState subscription_state,
- out unsigned long time_tick
- )
- raises (GetSubscriptionStatus,
- ManagedGenericIRPSystem::OperationNotSupported,
- ManagedGenericIRPSystem::InvalidParameter);
- NotificationIRPConstDefs::SubscriptionIdSet get_subscription_ids (
- in string manager_reference
- )
- raises (GetSubscriptionIds,
- ManagedGenericIRPSystem::OperationNotSupported,
- ManagedGenericIRPSystem::InvalidParameter);
- /*
- Terminates the subscription with the agent.
- */
- void detach (
- in string manager_reference,
- in NotificationIRPConstDefs::SubscriptionId subscription_id
- )
- raises (DetachException,
- ManagedGenericIRPSystem::ParameterNotSupported,
- ManagedGenericIRPSystem::InvalidParameter);
- };
- };
- #endif //_NotificationIRPSystem_idl_
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement