TAO's Notification Service
TAO's Notification Service
Options to Notify_Service
The Notify_Service driver program options are:
Command
Description
-Factory factory_name
Uses the as the default name for the Channel Factory.
The default is "NotifyEventChannelFactory".
-Boot
Flag asking that the factory_name be registered
in the IOR table.
The option is disabled by default.
See the "Using the Boot option" section in the README for details.
-NameSvc
Registers the Factory and if specified, an Event
Channel with the Naming Service.
if this option is used, a Naming Service must
be accessible.
This option is enabled by default.
-NoNameSvc
Asks to skip any registration with the
Naming Service.
This option is disabled by default.
-IORoutput file_name
The IOR is output to the file file_name.
By default, the IOR is printed out.
-Channel
If this option is specified, a EventChannel is
created and registered with the Naming Service.
This option is disabled by default.
-ChannelName channel_name
Specifes the channel_name to register with the
Naming Service.
The default is "NotifyEventChannel".
-ORBRunThreads threads
Specifies the number of threads that will run the ORB::run method.
The Notify_Service driver can be used to load the CosNotification service or it's Real-Time CORBA extension, the RT-Notification.
By using the svc.conf file, the appropriate service is loaded.
To load the CosNotification do:
dynamic TAO_Notify_Service Service_Object * TAO_CosNotification:_make_TAO_CosNotify_Service () ""
or
static TAO_CosNotify_Service ""
To load the RT-Notification Service, do:
dynamic TAO_Notify_Service Service_Object * TAO_RT_Notification:_make_TAO_RT_Notify_Service () ""
If your application links to the RT-Notification library, you can configure the RT-Notification statically via:
static TAO_RT_Notify_Service ""
The service objects also accept the following options to control concurrency in the Notification.
Note that the Notification extensions allow threads to be specified at the EventChannel, Admin and Proxy levels via QoS parameters at run-time.
Option
Description
-DispatchingThreads [thread_count]
Specifies the number of threads for dispatching.
-SourceThreads [thread_count]
Specifies the number of threads for ProxyConsumer filter evaluation.
-ListenerThreads [thread_count]
Specifies the number of threads for ProxySupplier filter evaluation.
-AsynchUpdates
Send subscription and publication updates asynchronously.
-NoUpdates
Do not send any subscription and publication updates.
-AllocateTaskperProxy
Allocate threads for the -LookupThreads and -ListenerThreads per proxy
See the README for further explaination.
Feature matrix for the Cos Notification Service
Supported Interfaces
CosNotification::QoSAdmin
CosNotification::AdminPropertiesAdmin
CosNotifyComm::NotifyPublish
CosNotifyComm::NotifySubscribe
CosNotifyComm::PushConsumer
CosNotifyComm::PushSupplier
CosNotifyComm::StructuredPushConsumer
CosNotifyComm::StructuredPushSupplier
CosNotifyComm::SequencePushConsumer
CosNotifyComm::SequencePushSupplier
CosNotifyFilter::Filter
CosNotifyFilter::MappingFilter
CosNotifyFilter::FilterFactory
CosNotifyFilter::FilterAdmin
CosNotifyChannelAdmin::ProxyConsumer
CosNotifyChannelAdmin::ProxySupplier
CosNotifyChannelAdmin::ProxyPushConsumer
CosNotifyChannelAdmin::StructuredProxyPushConsumer
CosNotifyChannelAdmin::SequenceProxyPushConsumer
CosNotifyChannelAdmin::ProxyPushSupplier
CosNotifyChannelAdmin::StructuredProxyPushSupplier
CosNotifyChannelAdmin::SequenceProxyPushSupplier
CosNotifyChannelAdmin::ConumerAdmin
CosNotifyChannelAdmin::SupplierAdmin
CosNotifyChannelAdmin::EventChannel
CosNotifyChannelAdmin::EventChannelFactory
UnSupported Interfaces
CosNotifyComm::PullConsumer
CosNotifyComm::PullSupplier
CosNotifyComm::StructuredPullConsumer
CosNotifyComm::StructuredPullSupplier
CosNotifyComm::SequencePullConsumer
CosNotifyComm::SequencePullSupplier
CosNotifyChannelAdmin::ProxyPullSupplier
CosNotifyChannelAdmin::StructuredProxyPullSupplier
CosNotifyChannelAdmin::SequenceProxyPullSupplier
CosNotifyChannelAdmin::ProxyPullConsumer
CosNotifyChannelAdmin::StructuredProxyPullConsumer
CosNotifyChannelAdmin::SequenceProxyPullConsumer
Interfaces Extensions for RTCORBA support
NotifyExt::EventChannelFactory
NotifyExt::ConsumerAdmin
NotifyExt::SupplierAdmin
Interface : CosNotification::QoSAdmin
Base Interface(s) : none
Method
Supported
Tested
Notes
get_qos
Yes
No
set_qos
Yes
Yes, see Ordering
Discarding
validate_qos
No
QoS Properties support on all interfaces supporting CosNotification::QoSAdmin
EventReliability : Not supported
ConnectionReliability : Not supported
Priority : Supported Per Message, Priority applied to Channel,
Admin or proxy Objects are NOT applied to the events.
StartTime : Not supported
StopTime : Not Supported
Timeout : Supported Per Message, Timeouts applied to Channel,
Admin or proxy Objects are NOT applied to the events.
StartTimeSupported : Not Supported
StopTimeSupported : Not Supported
MaxEventsPerConsumer : Supported (Only applies to ProxySuppliers)
OrderPolicy : Supported policies - PriorityOrder, AnyOrder, FifoOrder,
LifoOrder, DeadlineOrder
DiscardPolicy : : Supported policies - PriorityOrder, AnyOrder, FifoOrder,
LifoOrder, DeadlineOrder
MaximumBatchSize : Supported and applied to SequenceProxySuppliers
PacingInterval : Supported and applied to SequenceProxySuppliers
Interface : CosNotification::AdminPropertiesAdmin
Base Interface(s) : none
Method
Supported
Tested
Notes
get_admin
Yes
No
set_admin
Yes
Yes, see Events
Interface : CosNotifyComm::NotifyPublish
Base Interface(s) : none
Method
Supported
Tested
Notes
offer_change
Yes
Yes, see Updates
Interface : CosNotifyComm::NotifySubscribe
Base Interface(s) : none
Method
Supported
Tested
Notes
subscription_change
Yes
see Updates
Interface : CosNotifyComm::PushConsumer
Base Interface(s) : CosNotifyComm::NotifyPublish
, CosEventComm::PushConsumer
Method
Supported
Tested
Notes
CosEventComm::PushConsumer::push
Yes
Yes, see MultiTypes,Simple
CosEventComm::PushConsumer::disconnect_push_consumer
Yes
Yes, see ConnectDisconnect
Interface : CosNotifyComm::PullConsumer
Not Supported .
Interface : CosNotifyComm::PushSupplier
Base Interface(s) : CosNotifyComm::NotifySubscribe , CosEventComm::PushSupplier
Method
Supported
Tested
Notes
CosEventComm::PushConsumer::disconnect_push_supplier
Yes
Yes, see ConnectDisconnect
Interface : CosNotifyComm::PullSupplier
Not Supported .
Interface : CosNotifyComm::StructuredPushConsumer
Base Interface(s) CosNotifyComm::NotifyPublish
Method
Supported
Tested
Notes
push_structured_event
Yes
Yes, see MultiTypes
disconnect_structured_push_consumer
Yes
Yes, see ConnectDisconnect
Interface : CosNotifyComm::StructuredPullConsumer
Not Supported .
Interface : CosNotifyComm::StructuredPullSupplier
Not Supported .
Interface : CosNotifyComm::StructuredPushSupplier
Base Interface(s)
CosNotifyComm::NotifySubscribe
Method
Supported
Tested
Notes
disconnect_structured_push_supplier
Yes
Yes, see ConnectDisconnect
Interface : CosNotifyComm::SequencePushConsumer
Base Interface(s) CosNotifyComm::NotifyPublish
Method
Supported
Tested
Notes
push_structured_events
Yes
Yes, see MultiTypes
disconnect_sequence_push_consumer
Yes
Yes, see ConnectDisconnect
Interface : CosNotifyComm::SequencePullConsumer
Not Supported .
Interface : CosNotifyComm::SequencePullSupplier
Not Supported .
Interface : CosNotifyComm::SequencePushSupplier
Base Interface(s)
CosNotifyComm::NotifySubscribe
Method
Supported
Tested
Notes
disconnect_sequence_push_supplier
Yes
Yes, see ConnectDisconnect
Interface : CosNotifyFilter::Filter
Base Interface(s) none
Method
Supported
Tested
Notes
constraint_grammar
Yes
No
add_constraints
Yes
Yes, see Filter
modify_constraints
Yes
No
get_constraints
Yes
No
get_all_constraints
Yes
No
remove_all_constraints
Yes
No
destroy
Yes
No
match
Yes
No
match_structured
Yes
yes, called internally by Notification during
execution of Structured_Filter
match_typed
No
No
attach_callback
No
No
detach_callback
No
No
get_callbacks
No
No
Interface : CosNotifyFilter::MappingFilter
Not Supported .
Interface : CosNotifyFilter::FilterFactory
Base Interface(s) none
Method
Supported
Tested
Notes
create_filter
Yes
Yes, see Filter
create_mapping_filter
No
Interface : CosNotifyFilter::FilterAdmin
Base Interface(s)
Method
Supported
Tested
Notes
add_filter
Yes
Yes, see Filter
remove_filter
Yes
Yes, see Filter
get_filter
Yes
No
get_all_filters
Yes
Yes, see Filter
remove_all_filters
Yes
Yes, see Filter
Interface : CosNotifyChannelAdmin::ProxyConsumer
Base Interface(s) CosNotification::QoSAdmin ,
CosNotifyFilter::FilterAdmin
Method
Supported
Tested
Notes
MyType
Yes
No
MyAdmin
Yes
No
obtain_subscription_types
Yes
Yes, see Updates
Only CosNotifyChannelAdmin::ALL_NOW_UPDATES_ON tested
validate_event_qos
No
Interface : CosNotifyChannelAdmin::ProxySupplier
Base Interface(s) CosNotification::QoSAdmin ,
CosNotifyFilter::FilterAdmin
Method
Supported
Tested
Notes
MyType
Yes
No
MyAdmin
Yes
No
priority_filter
No
lifetime_filter
No
obtain_offered_types
Yes
Yes, see Updates
Only CosNotifyChannelAdmin::ALL_NOW_UPDATES_ON tested
validate_event_qos
No
Interface : CosNotifyChannelAdmin::ProxyPushConsumer
Base Interface(s) CosNotification::ProxyConsumer ,
CosNotifyComm::PushConsumer
Interface : CosNotifyChannelAdmin::StructuredProxyPushConsumer
Base Interface(s)
CosNotification::ProxyConsumer ,
CosNotifyComm::StructuredPushConsumer
Interface : CosNotifyChannelAdmin::SequenceProxyPushConsumer
Base Interface(s)
CosNotification::ProxyConsumer ,
CosNotifyComm::SequencePushConsumer
Interface : CosNotifyChannelAdmin::ProxyPullSupplier
Not Supported .
Interface : CosNotifyChannelAdmin::StructuredProxyPullSupplier
Not Supported .
Interface : CosNotifyChannelAdmin::SequenceProxyPullSupplier
Not Supported .
Interface : CosNotifyChannelAdmin::ProxyPullConsumer
Not Supported .
Interface : CosNotifyChannelAdmin::StructuredProxyPullConsumer
Not Supported .
Interface : CosNotifyChannelAdmin::SequenceProxyPullConsumer
Not Supported .
Interface : CosNotifyChannelAdmin::ProxyPushSupplier
Base Interface(s) CosNotification::ProxySupplier,
CosNotifyComm::PushSupplier
Method
Supported
Tested
Notes
connect_any_push_consumer
Yes
Yes, see MultiTypes,ConnectDisconnect
suspend_connection
Yes
No
resume_connection
Yes
No
Interface : CosNotifyChannelAdmin::StructuredProxyPushSupplier
Base Interface(s) CosNotification::ProxySupplier,
CosNotifyComm::StructuredPushSupplier
Method
Supported
Tested
Notes
connect_structured_push_consumer
Yes
Yes, see MultiTypes,ConnectDisconnect
suspend_connection
Yes
No
resume_connection
Yes
No
Interface : CosNotifyChannelAdmin::SequenceProxyPushSupplier
Base Interface(s)
CosNotification::ProxySupplier ,
CosNotifyComm::SequencePushSupplier
Method
Supported
Tested
Notes
connect_sequence_push_consumer
Yes
Yes, see MultiTypes,ConnectDisconnect
suspend_connection
Yes
No
resume_connection
Yes
No
Interface : CosNotifyChannelAdmin::ConsumerAdmin
Base Interface(s)
CosNotification::QoSAdmin
, CosNotifyComm::NotifySubscribe
, CosNotifyFilter::FilterAdmin
, CosEventChannelAdmin::ConsumerAdmin
Method
Supported
Tested
Notes
CosEventChannelAdmin::ConsumerAdmin::obtain_push_supplier
Yes
No
CosEventChannelAdmin::ConsumerAdmin::obtain_pull_supplier
No
MyID
Yes
No
MyChannel
Yes
No
MyOperator
Yes
No
priority_filter
No
lifetime_filter
No
pull_suppliers
No
push_suppliers
Yes
No
get_proxy_supplier
Yes
Yes, see Updates
obtain_notification_pull_supplier
No
obtain_notification_push_supplier
Yes
Yes, see
MultiTypes, ConnectDisconnect
destroy
Yes
Yes, see LifeCycle, IdAssignment
Interface : CosNotifyChannelAdmin::SupplierAdmin
Base Interface(s)
CosNotification::QoSAdmin
, CosNotifyComm::NotifyPublish
, CosNotifyFilter::FilterAdmin
, CosEventChannelAdmin::SupplierAdmin
Method
Supported
Tested
Notes
CosEventChannelAdmin::SupplierAdmin::obtain_push_consumer
Yes
No
CosEventChannelAdmin::SupplierAdmin::obtain_pull_consumer
No
MyID
Yes
No
MyChannel
Yes
No
MyOperator
Yes
No
pull_consumers
No
push_consumers
Yes
No
get_proxy_consumer
Yes
Yes, see Updates
obtain_notification_pull_supplier
No
obtain_notification_push_consumer
Yes
Yes, see MultiTypes, ConnectDisconnect
destroy
Yes
Yes, see LifeCycle, IdAssignment
Interface : CosNotifyChannelAdmin::EventChannel
Base Interface(s)
CosNotification::QoSAdmin
,
CosNotification::AdminPropertiesAdmin
, CosEventChannelAdmin::EventChannel
Method
Supported
Tested
Notes
CosEventChannelAdmin::EventChannel::for_consumers
Yes
No
CosEventChannelAdmin::EventChannel::for_suppliers
Yes
No
CosEventChannelAdmin::EventChannel::destroy
Yes
yes, see Events, Filter
MyFactory
Yes
No
default_consumer_admin
Yes
Yes, see Events
default_supplier_admin
Yes
Yes, see Events
default_filter_factory
Yes
Yes, see Filter
new_for_consumers
Yes
Yes, see Simple,Events
new_for_suppliers
Yes
Yes, see Simple,Events
get_consumeradmin
Yes
Yes, see IdAssignment
get_supplieradmin
Yes
Yes, see IdAssignment
get_all_consumeradmins
Yes
No
get_all_supplieradmins
Yes
No
AdminProperties supported at the EventChannel are:
MaxQueueLength, MaxConsumers, MaxSuppliers, RejectNewEvents
see AdminProperties
Interface : CosNotifyChannelAdmin::EventChannelFactory
Base Interface(s) : none
Method
Supported
Tested
Notes
create_channel
Yes
Yes, see Events,Simple
get_all_channels
Yes
No
get_event_channel
Yes
Yes, see IdAssignment
Interface : NotifyExt::EventChannelFactory
Base Interface(s) : CosNotifyChannelAdmin::EventChannelFactory
Method
Supported
Tested
Notes
destroy
Yes
Yes, see Destroy
Interface : NotifyExt::ConsumerAdmin
Base Interface(s) : CosNotifyChannelAdmin::ConsumerAdmin
Method
Supported
Tested
Notes
obtain_notification_push_supplier_with_qos
Yes
Yes, see Lanes
Interface : NotifyExt::SupplierAdmin
Base Interface(s) : CosNotifyChannelAdmin::SupplierAdmin
Method
Supported
Tested
Notes
obtain_notification_push_consumer_with_qos
Yes
Yes, see Lanes
The additional QoS properties supported are:
ThreadPoolParams
ThreadPoolLanesParams
see the NotifyExt.idl file for the QoS definitions.
Scripting Options for Notification Service Testing framework
The Notification Service Testing framework uses the Service Configurator to load various command objects.
The Command_Builder object is used to load the target objects.
To test the various Notification features we then write scripts to rapidly reproduce test cases.
The Notify_Test_Driver program reads a svc.conf file and executes the commands specified.
The following options can specified to the Driver program:
Command
Description
-Timeout timeout_period_in_seconds
Specify the timeout period for this test
-IORoutput output_file_name
Output the IOR of the Activation Manager .
This is used by a client to signal its peer.
-IORinput file://input_file_name
Input the IOR of the peer's Activation Manager .
This is used to signal the peer.
-Skip_Priority_Levels_Check
Skip the check for multiple priority levels.
See the *.conf files in Lanes
and
ThreadPool
for examples of the test framework in use.
The options that can be specified to each target object are as follows:
Target Object : EventChannel
Loading Syntax: dynamic TAO_Notify_EventChannel_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_Notify_EventChannel_Command_Factory () ""
Command
Parameters
Description
-Create
Name_of_channel Name_of_EventChannelFactory [COLLOCATED]
Create an Event Channel
Example : static Command_Builder "EventChannel -Create ec1 NotifyEventChannelFactory"
Command
Parameters
Description
-Destroy
Name_of_channel
Destroy an Event Channel
Example : static Command_Builder "EventChannel -Destroy ec1"
Command
Parameters
Description
-Set_QoS
Name_of_channel [QoS_Options]
Set QoS parameters on an event channel
QoS_Options = -ThreadPool [-Threads thread_pool_size (default= 1) ]
[-Priority default_priority (default=ACE_DEFAULT_THREAD_PRIORITY)]
|
-Lanes lane_count [-Lane priority static_threads dynamic_threads]*
Example : : static Command_Builder "EventChannel -Set_QoS -ThreadPool Threads 2 -Priority 2"
Example : : static Command_Builder "EventChannel -Set_QoS -Lanes 2 -Lane 10 1 0 -Lane 30 2 1"
Target Object : ConsumerAdmin
Loading Syntax: dynamic TAO_Notify_ConsumerAdmin_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_Notify_ConsumerAdmin_Command_Factory () ""
Command
Parameters
Description
-Create
Name_of_Admin
Name_of_EventChannel
[-AND_OP | OR_OP (default = CosNotifyChannelAdmin::OR_OP)]
Create a ConsumerAdmin
Example : : static Command_Builder "ConsumerAdmin -Create ca1 ec1 -AND_OP"
Command
Parameters
Description
-Subscription
Name_of_Admin
+added_type1 +added_type2 ... -removed_type3 -removed_type4 ...
Send subscription updates to the ConsumerAdmin. Note that domain name is set to "*".
Example : : static Command_Builder "ConsumerAdmin -Subscription ca1 +Red +Green -Blue"
Command
Parameters
Description
-Set_QoS
Name_of_Admin [QoS_Options]
Set QoS options for ConsumerAdmin
QoS_Options = -ThreadPool [-Threads thread_pool_size (default= 1) ]
[-Priority default_priority (default=ACE_DEFAULT_THREAD_PRIORITY)]
|
-Lanes lane_count [-Lane priority static_threads dynamic_threads]*
Example : : static Command_Builder "ConsumerAdmin -Set_Qos -ThreadPool Threads 2 -Priority 2"
Example : : static Command_Builder "ConsumerAdmin -Set_Qos -Lanes 2 -Lane 10 1 0 -Lane 30 2 1"
Target Object : SupplierAdmin
Loading Syntax: dynamic TAO_Notify_SupplierAdmin_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_Notify_SupplierAdmin_Command_Factory () ""
Command
Parameters
Description
-Create
Name_of_Admin
Name_of_EventChannel
[-AND_OP | OR_OP (default = CosNotifyChannelAdmin::OR_OP)]
Create a SupplierAdmin
Example : : static Command_Builder "SupplierAdmin -Create sa1 ec1 -AND_OP"
Command
Parameters
Description
-Offer
Name_of_Admin
+added_type1 +added_type2 ... -removed_type3 -removed_type4 ...
Send offer updates to the SupplierAdmin. Note that domain name is set to "*".
Example : : static Command_Builder "SupplierAdmin -Offer ca1 +Red +Green -Blue"
Command
Parameters
Description
-Set_QoS
Name_of_Admin [QoS_Options]
Set QoS options for SupplierAdmin
QoS_Options = -ThreadPool [-Threads thread_pool_size (default= 1) ]
[-Priority default_priority (default=ACE_DEFAULT_THREAD_PRIORITY)]
|
-Lanes lane_count [-Lane priority static_threads dynamic_threads]*
Example : : static Command_Builder "SupplierAdmin -Set_Qos -ThreadPool Threads 2 -Priority 2"
Example : : static Command_Builder "SupplierAdmin -Set_Qos -Lanes 2 -Lane 10 1 0 -Lane 30 2 1"
Target Object : PeriodicConsumer
Loading Syntax: dynamic TAO_Notify_Periodic_Consumer_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_Notify_Periodic_Consumer_Command_Factory () ""
Command
Parameters
Description
-Create
Name_of_Consumer
[-Relay relay_destination]
[-Direct]
[-Admin Name_of_ConsumerAdmin]
[-POA name_of_POA (default = RootPOA)]
[-Proxy proxy_name]
[-Set_QoS [Qos_Options]]
[-MaxCount expected_number_of_events]
[-Check_Priority]
Create a PeriodicConsumer. The consumer is activated in the POA specified.
Example : : static Command_Builder "PeriodicConsumer -Create c1 ca1 -POA myPOA -Proxy ca1_proxy -MaxCount 10"
Command
Parameters
Description
-Subscription
Name_of_Consumer
+added_type1 +added_type2 ... -removed_type3 -removed_type4 ...
static Command_Builder "PeriodicConsumer -Subscription ca1 +Red +Green -Blue"
Example : : Send subscription updates to its proxy. Note that domain name is set to "*".
Command
Parameters
Description
-Disconnect
Name_of_Consumer
Disconnect the Consumer from the EventChannel.
Example : : static Command_Builder -PeriodicConsumer "Disconnect ca1"
Command
Parameters
Description
-Deactivate
Name_of_Consumer
Deactivate the Consumer from its POA
Example : : static Command_Builder "-PeriodicConsumer -Deactivate ca1"
Command
Parameters
Description
-Status
Name_of_Consumer
Print the status of the consumer.
Checks if the proxy is alive.
Example : : static Command_Builder "-PeriodicConsumer -Status ca1"
Command
Parameters
Description
-Set_QoS
Name_of_consumer [QoS_Options]
Set QoS parameters on a Periodic Consumer. The actual QoS settings are applied to the corresponding ProxySupplier.
QoS_Options = -ThreadPool [-Threads thread_pool_size (default= 1) ]
[-Priority default_priority (default=ACE_DEFAULT_THREAD_PRIORITY)]
|
-Laness lane_count [-Lane priority static_threads dynamic_threads]*
Example : : static Command_Builder "PeriodicConsumer -Set_QoS -ThreadPool Threads 2 -Priority 2"
Example : : static Command_Builder "PeriodicConsumer -Set_QoS -Lanes 2 -Lane 10 1 0 -Lane 30 2 1"
Target Object : PeriodicSupplier
Loading Syntax: dynamic TAO_Notify_Periodic_Supplier_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_Notify_Periodic_Supplier_Command_Factory () ""
Command
Parameters
Description
-Create
Name_of_Supplier
[-Direct direct_target]
[-Admin Name_of_ConsumerAdmin]
[-POA name_of_POA (default = RootPOA)]
[-Proxy proxy_name]
[-Set_QoS [Qos_Options]]
-EventType type_of_event
-FilterLongData name long_filterable_data
-Priority supplier_thread_priority
-Period sending_period (in microseconds)
-ExecTime estimated_time_per_send_operation
-Phase supplier_thread_starting_phase
-Iter number_of_events-to_send
-Load hint_to_consumer
-RunTime time_to_run_in_sec
Create a PeriodicSupplier.
The supplier is activated in the POA specified.
The -Create command spawns a thread that sends periodic events.
Example : : static Command_Builder "PeriodicSupplier -Create s1 sa1_ec1 -Proxy s1_proxy -EventType RED -FilterLongData Temp 3 -Priority 0 -Period 10000 -ExecTime 10000 -Phase 0 -Iter 1 -Load 1 "
Command
Parameters
Description
-Offer
Name_of_Supplier
+added_type1 +added_type2 ... -removed_type3 -removed_type4 ...
static Command_Builder "PeriodicSupplier -Offer sa1 +Red +Green -Blue"
Example : : Send offer updates to its proxy. Note that domain name is set to "*".
Command
Parameters
Description
-Disconnect
Name_of_Supplier
Disconnect the Supplier from the EventChannel.
Example : : static Command_Builder -PeriodicSupplier "Disconnect sa1"
Command
Parameters
Description
-Deactivate
Name_of_Supplier
Deactivate the Supplier from its POA
Example : : static Command_Builder "-PeriodicSupplier -Deactivate ca1"
Command
Parameters
Description
Status
Name_of_Supplier
Print the status of the consumer.
Checks if the proxy is alive.
Example : : static Command_Builder "-PeriodicSupplier -Status sa1"
Command
Parameters
Description
-Set_QoS
Name_of_Supplier [QoS_Options]
Set QoS parameters on a Periodic Supplier. The actual QoS settings are applied to the corresponding ProxyConsumer.
QoS_Options = -ThreadPool [-Threads thread_pool_size (default= 1) ]
[-Priority default_priority (default=ACE_DEFAULT_THREAD_PRIORITY)]
|
-Laness lane_count [-Lane priority static_threads dynamic_threads]*
Example : : static Command_Builder "PeriodicSupplier -Set_QoS -ThreadPool Threads 2 -Priority 2"
Example : : static Command_Builder "PeriodicSupplier -Set_QoS -Lanes 2 -Lane 10 1 0 -Lane 30 2 1"
Target Object : Filter
Loading Syntax: dynamic TAO_Notify_Filter_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_Notify_Filter_Command_Factory () ""
Command
Parameters
Description
-CreateFactory
Filter_Factory_Name
Event_Channel_Name
Obtain the default FilterFactory from the EventChannel.
Example : : static Command_Builder "Filter -CreateFactory ff ec1"
Command
Parameters
Description
-CreateFilter
Filter_Name
Filter_Factory_Name
Create a Filter
Example : : static Command_Builder "Filter -CreateFilter f1 ff"
Command
Parameters
Description
-Add_Constraint
Filter_Name
Constraint_Expression
Add a constraint to a filter.
Example : : static Command_Builder "Filter -Add_Constraint f1 'Temp > 2'"
Command
Parameters
Description
-AddFilter
Filter_Name
FilterAdmin_Name
Add a filter to an Admin.
The FilterAdmin can be the name of any Admin or Proxy objects.
Example : : static Command_Builder "Filter -Add_Filter f1 sa1_ec1"
Command
Parameters
Description
-Destroy
Filter_Name
Destroy the Filter.
Example : : static Command_Builder "Filter –Destroy ff "
Target Object : Application
Loading Syntax for RTCORBA Application:
dynamic TAO_Notify_RT_Application_Command_Factory Service_Object * TAO_RT_NotifyTests:_make_TAO_Notify_RT_Application_Command_Factory () ""
Loading Syntax for non-RTCORBA Application:
dynamic TAO_Notify_Application_Command_Factory Service_Object * TAO_NotifyTests:_make_TAO_Notify_Application_Command_Factory () ""
Command
Parameters
Description
-Init
Init the Application
Example : : static Command_Builder "Application -Init"
Command
Parameters
Description
-Run
Run all the suppliers and consumers.
Example : : static Command_Builder "Application -Run"
Command
Parameters
Description
-WaitForEvents
Wait till all the suppliers have send all there events and all the consumers have received the expected count of events.
Example : : static Command_Builder "Application –Wait_For_Events"
Command
Parameters
Description
-Shutdown
Shutdown the ORB.
Example : : static Command_Builder "Application –Shutdown"
Command
Parameters
Description
-DumpStats
[-Samples]
Dump performance statistics.
if the -Samples option is specified all the latency samples are generated.
Data files are created in the current directory with the following names:
Supplier_{supplier_name}.dat
Consumer_{consumer_name}.dat
Example : : static Command_Builder "Application –DumpStats"
Command
Parameters
Description
-SignalPeer
Signal another waiting instance of the test.
Example : static Command_Builder "Application –SignalPeer":
Command
Parameters
Description
-WaitToStart
Wait for another instance to signal.
Example :static Command_Builder "Application –WaitToStart"
Target Object : POA
Loading Syntax for RTCORBA Application:
dynamic TAO_Notify_RT_POA_Command_Factory Service_Object* TAO_RT_NotifyTests:_make_TAO_Notify_RT_POA_Command_Factory () ""
Command
Parameters
Description
-Create
POA_Name
-PriorityModel {CLIENT|SERVER} default_priority (defaults : CLIENT_PROPAGATED, Priority = 0)
-Lanes lane_count [-Lane priority static_threads dynamic_threads>]*
-Bands band_count [-Band low_priority high_priority]*
-ThreadPool static_threads priority
Create an RT POA with the specified name and options of
Example : : static Command_Builder "POA -Create poa_test -PriorityModel CLIENT 1 -Lanes 1 -Lane -15 1 0"
Command
Parameters
Description
-Destroy
POA_Name
Destroy a POA
Example : : static Command_Builder "POA –Destroy”