summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordengg <dengg@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2006-10-26 16:43:10 +0000
committerdengg <dengg@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2006-10-26 16:43:10 +0000
commitee7bb57651e440de2f04fe0028c8cb892c8e9c2c (patch)
treeb8d04e1d8f54941a63c2e16747f58d8be48c366c
parentd510f2c0d548b1142d96e731eba2736b5a0feeee (diff)
downloadATCD-ee7bb57651e440de2f04fe0028c8cb892c8e9c2c.tar.gz
Merged from CIAO-events-3 branch.
-rw-r--r--modules/CIAO/ciao/CCM_Event.idl13
-rw-r--r--modules/CIAO/ciao/Deployment_Core.idl9
-rw-r--r--modules/CIAO/ciao/Deployment_Events.idl49
-rw-r--r--modules/CIAO/ciao/Home_Servant_Impl_T.cpp4
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);