diff options
author | dengg <dengg@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2006-10-26 16:43:10 +0000 |
---|---|---|
committer | dengg <dengg@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2006-10-26 16:43:10 +0000 |
commit | ee7bb57651e440de2f04fe0028c8cb892c8e9c2c (patch) | |
tree | b8d04e1d8f54941a63c2e16747f58d8be48c366c | |
parent | d510f2c0d548b1142d96e731eba2736b5a0feeee (diff) | |
download | ATCD-ee7bb57651e440de2f04fe0028c8cb892c8e9c2c.tar.gz |
Merged from CIAO-events-3 branch.
-rw-r--r-- | modules/CIAO/ciao/CCM_Event.idl | 13 | ||||
-rw-r--r-- | modules/CIAO/ciao/Deployment_Core.idl | 9 | ||||
-rw-r--r-- | modules/CIAO/ciao/Deployment_Events.idl | 49 | ||||
-rw-r--r-- | modules/CIAO/ciao/Home_Servant_Impl_T.cpp | 4 |
4 files changed, 56 insertions, 19 deletions
diff --git a/modules/CIAO/ciao/CCM_Event.idl b/modules/CIAO/ciao/CCM_Event.idl index 6349682550a..760b95adc85 100644 --- a/modules/CIAO/ciao/CCM_Event.idl +++ b/modules/CIAO/ciao/CCM_Event.idl @@ -28,9 +28,16 @@ module Components { void push_event (in EventBase evt) raises (BadEventType); - /// CIAO-specific operation to help support the capability - /// to subscribe to eventtypes more derived than the type - /// consumed. + // CIAO-specific operation to treat event service as regular event + // sink port. The source_id needs to be passed in to identify the + // source of the publisher port to support event filtering mechanism. + void ciao_push_event (in Components::EventBase evt, + in string source_id) + raises (BadEventType); + + // CIAO-specific operation to help support the capability + // to subscribe to eventtypes more derived than the type + // consumed. boolean ciao_is_substitutable (in string event_repo_id); }; diff --git a/modules/CIAO/ciao/Deployment_Core.idl b/modules/CIAO/ciao/Deployment_Core.idl index 56e1c7aceea..b61836faf7d 100644 --- a/modules/CIAO/ciao/Deployment_Core.idl +++ b/modules/CIAO/ciao/Deployment_Core.idl @@ -4,7 +4,7 @@ #define DEPLOYMENT_CORE_IDL #include "CCM_Component.idl" -#include <ciaosvcs/Events/CIAO_Events_Base/CIAO_Events.idl> +#include "Deployment_Events.idl" // *************** Packaging and Deployment *************** module Deployment @@ -207,6 +207,7 @@ module Deployment typedef sequence<Container> Containers; typedef sequence<CIAO::CIAO_Event_Service> CIAO_Event_Services; + /* /// CIAO specific extension /// This struct captures the installation information of a particular /// CIAO_Event_Service, as defined in <ciaosvcs/Events/CIAO_Events.idl> @@ -220,6 +221,7 @@ module Deployment /// CIAO specific extension typedef sequence<ESInstallationInfo> ESInstallationInfos; + */ interface NodeApplication : Application { @@ -243,10 +245,11 @@ module Deployment ::Components::RemoveFailure); /// CIAO specific extension - /// This operation will create one or more CIAO_Event_Service objects + /// This operation will create one CIAO_Event_Service object /// within the NodeApplication, which will be used to mediate the /// communication of CCM events - CIAO_Event_Services install_es (in ESInstallationInfos es_infos) + CIAO::CIAO_Event_Service install_es ( + in CIAO::DAnCE::EventServiceDeploymentDescription es_info) raises (InstallationFailure); /// CIAO specific extensions diff --git a/modules/CIAO/ciao/Deployment_Events.idl b/modules/CIAO/ciao/Deployment_Events.idl index 1d4d431287c..95774dba3f7 100644 --- a/modules/CIAO/ciao/Deployment_Events.idl +++ b/modules/CIAO/ciao/Deployment_Events.idl @@ -13,19 +13,13 @@ #include <orb.idl> +// EventServiceType definition +#include <ciaosvcs/Events/CIAO_Events_Base/CIAO_Events.idl> + module CIAO { module DAnCE { - /// CIAO specific extension to describe pub/sub services in the deployment - enum EventServiceType - { - EC, - RTEC, - NOTIFY, - RTNOTIFY - }; - /// Each element in the EventSourceSet denotes a event source id typedef string EventSourceId; @@ -46,8 +40,39 @@ module CIAO FilterType type; EventSourceSet sources; }; + typedef sequence<EventFilter> EventFilters; + + struct AddrServer + { + string name; + unsigned short port; + string address; + }; + typedef sequence<AddrServer> AddrServers; + + struct UDPSender + { + string name; + string addr_serv_id; + }; + typedef sequence<UDPSender> UDPSenders; - typedef sequence < EventFilter > EventFilters; + struct UPDReceiver + { + string name; + string addr_serv_id; + boolean is_multicast; + unsigned short listen_port; + }; + typedef sequence<UPDReceiver> UPDReceivers; +/* + struct EventHandler + { + string name; + boolean is_multicast; + }; + typedef sequence<EventHandler> EventHandlers; + */ /// CIAO specific extension to describe pub/sub services in the deployment struct EventServiceDeploymentDescription @@ -58,8 +83,10 @@ module CIAO string svc_cfg_file; EventFilters filters; + AddrServers addr_servs; + UDPSenders senders; + UPDReceivers receivers; }; - typedef sequence < EventServiceDeploymentDescription > EventServiceDeploymentDescriptions; }; diff --git a/modules/CIAO/ciao/Home_Servant_Impl_T.cpp b/modules/CIAO/ciao/Home_Servant_Impl_T.cpp index 12ce1132f10..ee7af2c4072 100644 --- a/modules/CIAO/ciao/Home_Servant_Impl_T.cpp +++ b/modules/CIAO/ciao/Home_Servant_Impl_T.cpp @@ -194,7 +194,7 @@ namespace CIAO ACE_ENV_ARG_PARAMETER); ACE_CHECK_RETURN (COMP_SVNT::_stub_type::_nil ()); - typedef typename COMP_SVNT::_stub_type stub_type; + typedef typename COMP_SVNT::_stub_type stub_type; COMP_SVNT *svt = 0; ACE_NEW_RETURN (svt, COMP_SVNT (exe, @@ -213,7 +213,7 @@ namespace CIAO ACE_ENV_ARG_PARAMETER); ACE_CHECK_RETURN (COMP_SVNT::_stub_type::_nil ()); - typedef typename COMP_SVNT::_stub_type stub_type; + typedef typename COMP_SVNT::_stub_type stub_type; typename COMP_SVNT::_stub_var_type ho = stub_type::_narrow (objref.in () ACE_ENV_ARG_PARAMETER); |