summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjules <jules@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2004-10-27 02:14:41 +0000
committerjules <jules@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2004-10-27 02:14:41 +0000
commitef357ea78ec2c9b63fbbd9cc040f3d77a099885f (patch)
tree722abc54d102e7796cea2cab5f98531362722967
parent82620a64f28eadd006bc0cfba3c58bcb6e4c55bb (diff)
downloadATCD-ef357ea78ec2c9b63fbbd9cc040f3d77a099885f.tar.gz
Tue Oct 26 21:00:13 2004 Jules White <Jules@dre.vanderbilt.edu>
-rw-r--r--TAO/CIAO/DAnCE/ChangeLog35
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/ADD_Handler.cpp100
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/ADD_Handler.h34
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/Any_Handler.cpp13
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/Any_Handler.h2
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/CCD_Handler.cpp48
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/CCD_Handler.h4
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/CEPE_Handler.cpp10
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/CEPE_Handler.h5
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/CPD_Handler.cpp68
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/CPD_Handler.h7
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/CRDD_Handler.cpp17
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/CRDD_Handler.h6
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/ComponentPropertyDescription_Handler.cpp17
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/ComponentPropertyDescription_Handler.h3
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/DataType_Handler.cpp57
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/DataType_Handler.h8
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.cpp9
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.h4
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/ID_Handler.cpp9
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/IRDD_Handler.cpp33
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/IRDD_Handler.h4
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.cpp43
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.h4
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/Property_Handler.cpp13
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/Property_Handler.h4
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/RDD_Handler.cpp13
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/RDD_Handler.h3
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/Req_Handler.cpp18
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/Req_Handler.h6
30 files changed, 563 insertions, 34 deletions
diff --git a/TAO/CIAO/DAnCE/ChangeLog b/TAO/CIAO/DAnCE/ChangeLog
index 59d58220593..aea598daaad 100644
--- a/TAO/CIAO/DAnCE/ChangeLog
+++ b/TAO/CIAO/DAnCE/ChangeLog
@@ -1,3 +1,38 @@
+Tue Oct 26 21:00:13 2004 Jules White <Jules@dre.vanderbilt.edu>
+
+ * Config_Handlers/Property_Handler.cpp:
+ * Config_Handlers/Property_Handler.h:
+ * Config_Handlers/PSPE_Handler.cpp:
+ * Config_Handlers/PSPE_Handler.h:
+ * Config_Handlers/RDD_Handler.cpp:
+ * Config_Handlers/RDD_Handler.h:
+ * Config_Handlers/Req_Handler.cpp:
+ * Config_Handlers/Req_Handler.h:
+ * Config_Handlers/IRDD_Handler.cpp:
+ * Config_Handlers/IRDD_Handler.h:
+ * Config_Handlers/ID_Handler.cpp:
+ * Config_Handlers/ID_Handler.h:
+ * Config_Handlers/ERE_Handler.cpp:
+ * Config_Handlers/ERE_Handler.h:
+ * Config_Handlers/DataType_Handler.cpp:
+ * Config_Handlers/DataType_Handler.h:
+ * Config_Handlers/CRDD_Handler.cpp:
+ * Config_Handlers/CRDD_Handler.h:
+ * Config_Handlers/CPD_Handler.cpp:
+ * Config_Handlers/CPD_Handler.h:
+ * Config_Handlers/ComponentPropertyDescription_Handler.cpp:
+ * Config_Handlers/ComponentPropertyDescription_Handler.h:
+ * Config_Handlers/CEPE_Handler.cpp:
+ * Config_Handlers/CEPE_Handler.h:
+ * Config_Handlers/CCD_Handler.cpp:
+ * Config_Handlers/CCD_Handler.h:
+ * Config_Handlers/Any_Handler.cpp:
+ * Config_Handlers/Any_Handler.h:
+ * Config_Handlers/ADD_Handler.cpp:
+ * Config_Handlers/ADD_Handler.h:
+
+ Added methods to map from idl types back to XSC types.
+
Sun Oct 10 22:58:59 2004 Balachandran Natarajan <bala@dre.vanderbilt.edu>
* ExecutionManager/DAM_Map.cpp:
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/ADD_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/ADD_Handler.cpp
index 4284e1243f2..824d3328d49 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/ADD_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/ADD_Handler.cpp
@@ -3,7 +3,7 @@
#include "cdp.hpp"
#include "ciao/Deployment_DataC.h"
#include "Property_Handler.h"
-#include "Singleton_IDREF_Map.h"
+
ACE_RCSID (DAnCE,
ADD_Handler,
@@ -81,11 +81,11 @@ namespace CIAO
++scb)
{
CORBA::ULong l =
- dest.location.length ();
+ dest.source.length ();
- dest.location.length (l + 1);
+ dest.source.length (l + 1);
- dest.location[l] = scb->c_str ();
+ dest.source[l] = scb->c_str ();
}
// @@TODO: See this loop is repeated
@@ -111,9 +111,7 @@ namespace CIAO
{
ACE_CString cstr (src.id ().c_str ());
- bool retval =
- Singleton_IDREF_Map::instance ()->bind_ref (cstr,
- pos);
+ bool retval = bind_ref (cstr,pos);
if (!retval)
{
return false;
@@ -144,6 +142,94 @@ namespace CIAO
return true;
}
+
+ ArtifactDeploymentDescription
+ ADD_Handler::artifact_deployment_descr (
+ const Deployment::ArtifactDeploymentDescription &src)
+ {
+ XMLSchema::string< char > name ((src.name));
+ XMLSchema::string< char > node ((src.node));
+
+ ArtifactDeploymentDescription add (name,node);
+
+ size_t total = src.location.length ();
+ for (size_t i = 0; i < total; ++i)
+ {
+ XMLSchema::string< char > curr ((src.location[i]));
+ add.add_location (curr);
+ }
+
+ total = src.source.length ();
+ for (size_t i = 0; i < total; ++i)
+ {
+ XMLSchema::string< char > curr ((src.source[i]));
+ add.add_source (curr);
+ }
+
+ total = src.execParameter.length ();
+ for (size_t i = 0; i < total; ++i)
+ {
+ add.add_execParameter (
+ Property_Handler::get_property (src.execParameter[i])
+ );
+ }
+
+ return add;
+ }
+
+
+ bool
+ ADD_Handler::bind_ref (ACE_CString& id, size_t index)
+ {
+ int retval =
+ idref_map_.bind (id, index);
+
+ pos_map_.bind (index,id);
+
+ if (retval < 0)
+ return false;
+
+ return true;
+ }
+
+ bool
+ ADD_Handler::find_ref (const ACE_CString& id, size_t val)
+ {
+ int retval =
+ idref_map_.find (id, val);
+
+ if (retval < 0)
+ return false;
+
+ return true;
+ }
+
+ bool
+ ADD_Handler::find_ref (const size_t id, ACE_CString& val)
+ {
+ int retval =
+ pos_map_.find (id,val);
+
+ if (retval < 0)
+ return false;
+
+ return true;
+ }
+
+ bool
+ ADD_Handler::unbind_refs (void)
+ {
+ int retval =
+ idref_map_.unbind_all ();
+
+ pos_map_.unbind_all ();
+
+ if (retval < 0)
+ return false;
+
+ return true;
+ }
+
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/ADD_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/ADD_Handler.h
index 9e017440105..748620f0bb6 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/ADD_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/ADD_Handler.h
@@ -14,6 +14,9 @@
#include "Config_Handlers/Config_Handlers_Export.h"
#include "tao/Basic_Types.h"
+#include "ace/Hash_Map_Manager.h"
+#include "ace/Null_Mutex.h"
+#include "ace/Singleton.h"
#if !defined (ACE_LACKS_PRAGMA_ONCE)
# pragma once
@@ -52,11 +55,42 @@ namespace CIAO
const DeploymentPlan &src,
::Deployment::ArtifactDeploymentDescriptions &dest);
+ static ArtifactDeploymentDescription
+ artifact_deployment_descr (
+ const Deployment::ArtifactDeploymentDescription &src);
+
+
+ static bool
+ bind_ref (ACE_CString& id, size_t index);
+
+ static bool
+ find_ref (const ACE_CString& id, size_t val);
+
+ static bool
+ find_ref (const size_t id, ACE_CString& val);
+
+ static bool
+ unbind_refs (void);
+
private:
static bool artifact_deployment_descr (
const ArtifactDeploymentDescription& desc,
::Deployment::ArtifactDeploymentDescription &dest,
CORBA::ULong l = 0);
+
+ typedef ACE_Hash_Map_Manager<ACE_CString,
+ size_t,
+ ACE_Null_Mutex> IDREF_MAP;
+ typedef ACE_Hash_Map_Manager<size_t,
+ ACE_CString,
+ ACE_Null_Mutex> POS_MAP;
+
+ /// The map used to store and look up the indexes of elements
+ /// referenced by their IDREF.
+ static IDREF_MAP idref_map_;
+ /// The map used to store and look up the IDREFS of elements
+ /// referenced by their index.
+ static POS_MAP pos_map_;
};
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/Any_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/Any_Handler.cpp
index 76aa5fdb4c4..2f36cdae6b5 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/Any_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/Any_Handler.cpp
@@ -1,6 +1,7 @@
// $Id$
#include "Any_Handler.h"
+#include "DataType_Handler.h"
#include "Basic_Deployment_Data.hpp"
#include "tao/Any.h"
@@ -88,5 +89,17 @@ namespace CIAO
toconfig <<=val;
}
}
+
+ Any get_any (const ::CORBA::Any& src)
+ {
+ //MAJO
+ //@Bala ... still haven't figured this one out yet
+ //I was saving it for last...going from corba::any
+ //to xsc DataValue
+ DataType type = DataType_Handler::data_type (src.type ());
+ DataValue value;
+ Any any (type,value);
+ return any;
+ }
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/Any_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/Any_Handler.h
index c4074f4f2d1..3de517147c3 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/Any_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/Any_Handler.h
@@ -47,7 +47,7 @@ namespace CIAO
static void extract_into_any (const Any& desc,
::CORBA::Any& toconfig);
-
+ static Any get_any (const ::CORBA::Any& src);
};
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/CCD_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/CCD_Handler.cpp
index 1b534a50ed4..edc03b214c1 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/CCD_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/CCD_Handler.cpp
@@ -147,5 +147,53 @@ namespace CIAO
return 1;
}
+
+ ComponentInterfaceDescription
+ CCD_Handler::component_interface_descr (
+ const ::Deployment::ComponentInterfaceDescription& src)
+ {
+ ComponentInterfaceDescription cid;
+
+ XMLSchema::string< char > uuid ((src.UUID));
+ XMLSchema::string< char > label ((src.label));
+ XMLSchema::string< char > specifict ((src.specificType));
+
+ cid.UUID (uuid);
+ cid.label (label);
+ cid.specificType (specifict);
+
+ ::CORBA::ULong total = src.supportedType.length ();
+ for (size_t i = 0; i < total; ++i)
+ {
+ XMLSchema::string< char > curr ((src.supportedType[i]));
+ cid.add_supportedType (curr);
+ }
+
+ total = src.idlFile.length ();
+ for (size_t i = 0; i < total; ++i)
+ {
+ XMLSchema::string< char > curr ((src.idlFile[i]));
+ cid.add_idlFile (curr);
+ }
+
+ total = src.configProperty.length ();
+ for (size_t i = 0; i < total; ++i)
+ {
+ cid.add_configProperty (
+ Property_Handler::get_property (
+ src.configProperty[i]));
+ }
+
+ total = src.port.length ();
+ for (size_t i = 0; i < total; ++i)
+ {
+ cid.add_port (
+ CPD_Handler::component_port_description (
+ src.port[i]));
+ }
+
+
+ return cid;
+ }
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/CCD_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/CCD_Handler.h
index b9880694cc6..122af9dc4fb 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/CCD_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/CCD_Handler.h
@@ -47,6 +47,10 @@ namespace CIAO
static bool component_interface_descr (
const ComponentInterfaceDescription &src,
::Deployment::ComponentInterfaceDescription& dest);
+ static ComponentInterfaceDescription
+ component_interface_descr (
+ const ::Deployment::ComponentInterfaceDescription& src);
+
};
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/CEPE_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/CEPE_Handler.cpp
index 418c52f4765..39af0b28dba 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/CEPE_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/CEPE_Handler.cpp
@@ -42,5 +42,15 @@ namespace CIAO
dest.portName =
src.portName ().c_str ();
}
+
+ ComponentExternalPortEndpoint
+ CEPE_Handler::external_port_endpoint (
+ const ::Deployment::ComponentExternalPortEndpoint &src)
+ {
+ //MAJO Unfinished
+ XMLSchema::string< char > portname ((src.portName));
+ ComponentExternalPortEndpoint cepe (portname);
+ return cepe;
+ }
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/CEPE_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/CEPE_Handler.h
index 30ab640a45a..473d40d3a4c 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/CEPE_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/CEPE_Handler.h
@@ -48,6 +48,11 @@ namespace CIAO
static bool external_port_endpoints (
const PlanConnectionDescription &src,
::Deployment::ComponentExternalPortEndpoints &dest);
+
+ static ComponentExternalPortEndpoint
+ external_port_endpoint (
+ const ::Deployment::ComponentExternalPortEndpoint &src);
+
private:
static void external_port_endpoint (
const ComponentExternalPortEndpoint &src,
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/CPD_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/CPD_Handler.cpp
index 00c67a1da37..0fb566a0df3 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/CPD_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/CPD_Handler.cpp
@@ -23,11 +23,77 @@ namespace CIAO
toconfig.supportedType[0] =
desc.supportedType ().c_str ();
}
+
+ if (desc.kind () == CCMComponentPortKind::Facet)
+ toconfig.kind = Deployment::Facet;
+ if (desc.kind () == CCMComponentPortKind::SimplexReceptacle)
+ toconfig.kind = Deployment::SimplexReceptacle;
+ if (desc.kind () == CCMComponentPortKind::MultiplexReceptacle)
+ toconfig.kind = Deployment::MultiplexReceptacle;
+ if (desc.kind () == CCMComponentPortKind::EventEmitter)
+ toconfig.kind = Deployment::EventEmitter;
+ if (desc.kind () == CCMComponentPortKind::EventPublisher)
+ toconfig.kind = Deployment::EventPublisher;
+ if (desc.kind () == CCMComponentPortKind::EventConsumer)
+ toconfig.kind = Deployment::EventConsumer;
- toconfig.provider = !desc.provider ().empty ();
+ toconfig.provider = desc.provider ().empty ();
toconfig.exclusiveProvider = !desc.exclusiveProvider ().empty ();
toconfig.exclusiveUser = !desc.exclusiveUser ().empty ();
toconfig.optional = !desc.optional ().empty ();
}
+
+ ComponentPortDescription
+ CPD_Handler::component_port_description (
+ const Deployment::ComponentPortDescription& src)
+ {
+ ::XMLSchema::string< char > name ((src.name));
+ ::XMLSchema::string< char > stype ((src.specificType));
+
+ ::XMLSchema::string< char > tval ("true");
+ ::XMLSchema::string< char > provider ("");
+ ::XMLSchema::string< char > exclusiveProvider ("");
+ ::XMLSchema::string< char > exclusiveUser ("");
+ ::XMLSchema::string< char > optional ("");
+
+ ComponentPortDescription cpd (
+ name,
+ stype,
+ tval,
+ provider,
+ exclusiveProvider,
+ exclusiveUser,
+ optional,
+ CCMComponentPortKind::Facet);
+
+ if (src.provider)
+ provider = tval;
+ if (src.exclusiveUser)
+ exclusiveUser = tval;
+ if (src.exclusiveProvider)
+ exclusiveProvider = tval;
+ if (src.optional)
+ optional = tval;
+
+ if (src.kind == ::Deployment::Facet)
+ cpd.kind (CCMComponentPortKind::Facet);
+ if (src.kind == ::Deployment::SimplexReceptacle)
+ cpd.kind (CCMComponentPortKind::SimplexReceptacle);
+ if (src.kind == ::Deployment::MultiplexReceptacle)
+ cpd.kind (CCMComponentPortKind::MultiplexReceptacle);
+ if (src.kind == ::Deployment::EventEmitter)
+ cpd.kind (CCMComponentPortKind::EventEmitter);
+ if (src.kind == ::Deployment::EventPublisher)
+ cpd.kind (CCMComponentPortKind::EventPublisher);
+ if (src.kind == ::Deployment::EventConsumer)
+ cpd.kind (CCMComponentPortKind::EventConsumer);
+
+ if (src.supportedType.length () > 0)
+ cpd.supportedType (
+ XMLSchema::string< char > ((src.supportedType[0])));
+
+ return cpd;
+ }
+
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/CPD_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/CPD_Handler.h
index 2f6634f23d1..13ae4f38340 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/CPD_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/CPD_Handler.h
@@ -50,8 +50,11 @@ namespace CIAO
static void component_port_description (
const ComponentPortDescription &desc,
::Deployment::ComponentPortDescription &toconfig);
- };
-
+
+ static ComponentPortDescription
+ component_port_description (
+ const Deployment::ComponentPortDescription& src);
+ };
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/CRDD_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/CRDD_Handler.cpp
index 2131349c09a..da4f6584eb0 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/CRDD_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/CRDD_Handler.cpp
@@ -34,6 +34,23 @@ namespace CIAO
Any_Handler::extract_into_any (desc.resourceValue (),
toconfig.resourceValue);
}
+
+ ConnectionResourceDeploymentDescription
+ CRDD_Handler::connection_resource_depl_desc (
+ const ::Deployment::ConnectionResourceDeploymentDescription& src)
+ {
+ XMLSchema::string< char > tname ((src.targetName));
+ XMLSchema::string< char > reqname ((src.requirementName));
+ XMLSchema::string< char > resname ((src.resourceName));
+ Any resval (Any_Handler::get_any (src.resourceValue));
+
+ ConnectionResourceDeploymentDescription crdd (
+ tname,
+ reqname,
+ resname,
+ resval);
+ return crdd;
+ }
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/CRDD_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/CRDD_Handler.h
index 1cfac7e78e2..ec9b7061494 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/CRDD_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/CRDD_Handler.h
@@ -54,7 +54,11 @@ namespace CIAO
///ConnectionResourceDeploymentDescription to its members.
void get_ConnectionResourceDeploymentDescription (
Deployment::ConnectionResourceDeploymentDescription& toconfig,
- ConnectionResourceDeploymentDescription& desc);
+ ConnectionResourceDeploymentDescription& desc);
+
+ ConnectionResourceDeploymentDescription
+ connection_resource_depl_desc (
+ const ::Deployment::ConnectionResourceDeploymentDescription& src);
};
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/ComponentPropertyDescription_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/ComponentPropertyDescription_Handler.cpp
index 8574a9e8e11..6c56f10a44e 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/ComponentPropertyDescription_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/ComponentPropertyDescription_Handler.cpp
@@ -19,11 +19,20 @@ namespace CIAO
// DataType_Handler.
// @@ There is a lurking bug here.
-#if 0
- DataType_Handler dtypehandler;
+//#if 0
CORBA::TypeCode_ptr tcptr = toconfig.type.in ();
- dtypehandler.get_DataType (tcptr,desc.type ());
-#endif /*if 0*/
+ DataType_Handler::data_type (tcptr,desc.type ());
+//#endif /*if 0*/
+ }
+
+ ComponentPropertyDescription
+ ComponentPropertyDescription_Handler::component_property_description (
+ const ::Deployment::ComponentPropertyDescription &src)
+ {
+ XMLSchema::string< char > name ((src.name));
+ DataType dt (DataType_Handler::data_type (src.type));
+ ComponentPropertyDescription cpd (name,dt);
+ return cpd;
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/ComponentPropertyDescription_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/ComponentPropertyDescription_Handler.h
index 21a565ec37c..c25eab97170 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/ComponentPropertyDescription_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/ComponentPropertyDescription_Handler.h
@@ -50,6 +50,9 @@ namespace CIAO
static void component_property_description (
const ComponentPropertyDescription& desc,
::Deployment::ComponentPropertyDescription& toconfig);
+ static ComponentPropertyDescription
+ component_property_description (
+ const ::Deployment::ComponentPropertyDescription &src);
};
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/DataType_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/DataType_Handler.cpp
index 1cfa7f9b03a..c4b5bce8f01 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/DataType_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/DataType_Handler.cpp
@@ -1,25 +1,25 @@
//$Id$
#include "DataType_Handler.h"
-
+#include "tao/Typecode.h"
namespace CIAO{
namespace Config_Handlers{
- CIAO::Config_Handlers::DataType_Handler::DataType_Handler (void)
+ DataType_Handler::DataType_Handler (void)
{
}
- CIAO::Config_Handlers::DataType_Handler::~DataType_Handler (void)
+ DataType_Handler::~DataType_Handler (void)
{
}
///This method takes a <CIAO::Config_Handlers::DataType>
///and returns the corresponding CORBA::TypeCode.
void
- CIAO::Config_Handlers::DataType_Handler::get_DataType (
+ DataType_Handler::data_type (
CORBA::TypeCode_ptr& type,
- DataType& desc)
+ const DataType& desc)
{
TCKind kind (desc.kind ());
@@ -66,6 +66,53 @@ namespace CIAO{
// type = CORBA::TypeCode::_duplicate (CORBA::_tc_Object);*/
}
+
+ DataType
+ DataType_Handler::data_type (
+ const CORBA::TypeCode_ptr& src)
+ {
+
+ DataType type;
+
+ if (src->kind () == ::CORBA::tk_null)
+ type.kind (TCKind::tk_null);
+ else if (src->kind () == CORBA::tk_short)
+ type.kind (TCKind::tk_short);
+ else if (src->kind () == CORBA::tk_long)
+ type.kind (TCKind::tk_long);
+ else if (src->kind () == CORBA::tk_ushort)
+ type.kind (TCKind::tk_ushort);
+ else if (src->kind () == CORBA::tk_ulong)
+ type.kind (TCKind::tk_ulong);
+ else if (src->kind () == CORBA::tk_float)
+ type.kind (TCKind::tk_float);
+ else if (src->kind () == CORBA::tk_double)
+ type.kind (TCKind::tk_double);
+ else if (src->kind () == CORBA::tk_boolean)
+ type.kind (TCKind::tk_boolean);
+ else if (src->kind () == CORBA::tk_char)
+ type.kind (TCKind::tk_char);
+ else if (src->kind () == CORBA::tk_octet)
+ type.kind (TCKind::tk_octet);
+ else if (src->kind () == CORBA::tk_string)
+ type.kind (TCKind::tk_string);
+ else if (src->kind () == CORBA::tk_longlong)
+ type.kind (TCKind::tk_longlong);
+ else if (src->kind () == CORBA::tk_ulonglong)
+ type.kind (TCKind::tk_ulonglong);
+ else if (src->kind () == CORBA::tk_longdouble)
+ type.kind (TCKind::tk_longdouble);
+ else if (src->kind () == CORBA::tk_wchar)
+ type.kind (TCKind::tk_wchar);
+ else if (src->kind () == CORBA::tk_wstring)
+ type.kind (TCKind::tk_wstring);
+ else if (src->kind () == CORBA::tk_any)
+ type.kind (TCKind::tk_any);
+ else if (src->kind () == CORBA::tk_TypeCode)
+ type.kind (TCKind::tk_TypeCode);
+
+ return type;
+ }
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/DataType_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/DataType_Handler.h
index 7f97f76b1c0..eda2375fcee 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/DataType_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/DataType_Handler.h
@@ -46,9 +46,11 @@ namespace CIAO{
////This method takes a <CIAO::Config_Handlers::DataType>
///and returns the corresponding CORBA::TypeCode.
- void
- get_DataType (CORBA::TypeCode_ptr& type,
- DataType& desc);
+ static void
+ data_type (CORBA::TypeCode_ptr& type,
+ const DataType& desc);
+
+ static DataType data_type (const CORBA::TypeCode_ptr& type);
};
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.cpp
index 50593fb37b9..9bf59ea7edf 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.cpp
@@ -40,5 +40,14 @@ namespace CIAO
dest.location =
src.location ().c_str ();
}
+
+ ExternalReferenceEndpoint
+ ERE_Handler::external_ref_endpoint (
+ const Deployment::ExternalReferenceEndpoint& src)
+ {
+ XMLSchema::string< char > loc ((src.location));
+ ExternalReferenceEndpoint erp (loc);
+ return erp;
+ }
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.h
index e9f69c2462d..5f24e776553 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.h
@@ -49,7 +49,9 @@ namespace CIAO
static bool external_ref_endpoints (
const PlanConnectionDescription &src,
::Deployment::ExternalReferenceEndpoints &dest);
-
+
+ static ExternalReferenceEndpoint external_ref_endpoint (
+ const Deployment::ExternalReferenceEndpoint& src);
private:
static void external_ref_endpoint (
const ExternalReferenceEndpoint &src,
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/ID_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/ID_Handler.cpp
index 8e09f935c03..53cbb280a92 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/ID_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/ID_Handler.cpp
@@ -36,6 +36,15 @@ namespace CIAO
}
+ ImplementationDependency
+ ID_Handler::impl_dependency (
+ const Deployment::ImplementationDependency& src)
+ {
+ XMLSchema::string< char > reqtype ((src.requiredType));
+ ImplementationDependency id (reqtype);
+ return id;
+ }
+
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/IRDD_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/IRDD_Handler.cpp
index 322f930045f..503f4ae7598 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/IRDD_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/IRDD_Handler.cpp
@@ -45,7 +45,7 @@ namespace CIAO
toconfig.resourceUsage = Deployment::PortUsesResource;
if (desc.resourceUsage () ==
ResourceUsageKind::ResourceUsesPort)
- toconfig.resourceUsage = Deployment::ResourceUsesPort;
+ toconfig.resourceUsage asdfasdf = Deployment::ResourceUsesPosdfrt;
toconfig.requirementName=
CORBA::string_dup (desc.requirementName ().c_str ());
@@ -56,10 +56,39 @@ namespace CIAO
Any_Handler::extract_into_any (
desc.resourceValue (),
toconfig.resourceValue);
-
}
+ InstanceResourceDeploymentDescription
+ IRDD_Handler::instance_resource_deployment_descr (
+ const Deployment::InstanceResourceDeploymentDescription& src)
+ {
+ XMLSchema::string< char > reqname ((src.requirementName));
+ XMLSchema::string< char > resname ((src.resourceName));
+ Any resval (Any_Handler::get_any (src.resourceValue));
+
+ InstanceResourceDeploymentDescription irdd (
+ reqname,
+ resname,
+ ResourceUsageKind::None);
+
+ if (src.resourceUsage == Deployment::None)
+ irdd.resourceUsage (ResourceUsageKind::None);
+ if (desc.resourceUsage ==
+ Deployment::InstanceUsesResource)
+ toconfig.resourceUsage = (ResourceUsageKind::InstanceUsesResource);
+ if (desc.resourceUsage ==
+ Deployment::ResourceUsesInstance)
+ toconfig.resourceUsage = (ResourceUsageKind::ResourceUsesInstance);
+ if (desc.resourceUsage ==
+ Deployment::PortUsesResource)
+ toconfig.resourceUsage = (ResourceUsageKind::PortUsesResource);
+ if (desc.resourceUsage ==
+ Deployment::ResourceUsesPort)
+ toconfig.resourceUsage (ResourceUsageKind::ResourceUsesPort);
+
+ return irdd;
+ }
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/IRDD_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/IRDD_Handler.h
index 94ccbf104d2..d1b4a565dd0 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/IRDD_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/IRDD_Handler.h
@@ -58,6 +58,10 @@ namespace CIAO
static void instance_resource_deployment_descr (
const InstanceResourceDeploymentDescription& desc,
Deployment::InstanceResourceDeploymentDescription& toconfig);
+
+ static InstanceResourceDeploymentDescription
+ instance_resource_deployment_descr (
+ const Deployment::InstanceResourceDeploymentDescription& src);
};
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.cpp
index c2409351571..24e8b82c7cc 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.cpp
@@ -48,6 +48,49 @@ namespace CIAO
{
dest.provider = 0;
}
+
+ if (src.kind () == CCMComponentPortKind::Facet)
+ dest.kind = Deployment::Facet;
+ if (src.kind () == CCMComponentPortKind::SimplexReceptacle)
+ dest.kind = Deployment::SimplexReceptacle;
+ if (src.kind () == CCMComponentPortKind::MultiplexReceptacle)
+ dest.kind = Deployment::MultiplexReceptacle;
+ if (src.kind () == CCMComponentPortKind::EventEmitter)
+ dest.kind = Deployment::EventEmitter;
+ if (src.kind () == CCMComponentPortKind::EventPublisher)
+ dest.kind = Deployment::EventPublisher;
+ if (src.kind () == CCMComponentPortKind::EventConsumer)
+ dest.kind = Deployment::EventConsumer;
}
+
+ PlanSubcomponentPortEndpoint
+ PSPE_Handler::sub_component_port_endpoint (
+ const Deployment::PlanSubcomponentPortEndpoint &src)
+ {/*MAJO
+ XMLSchema::string< char > pname ((src.portName));
+ XMLSchema::string< char > tval ("true");
+ XMLSchema::string< char > prov ("");
+
+ if (src.provider)
+ prov = tval;
+
+ PlanSubcomponentPortEndpoint pspe (pname,CCMComponentPortKind::Facet);
+ pspe.provider (prov);
+
+ if (src.kind == ::Deployment::Facet)
+ pspe.kind (CCMComponentPortKind::Facet);
+ if (src.kind == ::Deployment::SimplexReceptacle)
+ pspe.kind (CCMComponentPortKind::SimplexReceptacle);
+ if (src.kind == ::Deployment::MultiplexReceptacle)
+ cpd.kind (CCMComponentPortKind::MultiplexReceptacle);
+ if (src.kind == ::Deployment::EventEmitter)
+ pspe.kind (CCMComponentPortKind::EventEmitter);
+ if (src.kind == ::Deployment::EventPublisher)
+ pspe.kind (CCMComponentPortKind::EventPublisher);
+ if (src.kind == ::Deployment::EventConsumer)
+ pspe.kind (CCMComponentPortKind::EventConsumer);
+
+ return pspe;*/
+ }
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.h
index 96f8ba9fe69..5ff50b80d70 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.h
@@ -49,6 +49,10 @@ namespace CIAO
const PlanConnectionDescription &src,
::Deployment::PlanSubcomponentPortEndpoints &dest);
+ static PlanSubcomponentPortEndpoint
+ sub_component_port_endpoint (
+ const Deployment::PlanSubcomponentPortEndpoint &src);
+
private:
static void sub_component_port_endpoint (
const PlanSubcomponentPortEndpoint &src,
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/Property_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/Property_Handler.cpp
index 60dacce16ed..c2525f5ceeb 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/Property_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/Property_Handler.cpp
@@ -30,5 +30,18 @@ namespace CIAO
toconfig.value);
}
+
+ Property
+ Property_Handler::get_property (
+ const Deployment::Property& src)
+ {
+ ::XMLSchema::string< char > name ((src.name));
+ Any value (Any_Handler::get_any (src.value));
+
+ Property prop (name,value);
+
+ return prop;
+ }
+
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/Property_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/Property_Handler.h
index 253f62b6cbd..5a6eda8d7c0 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/Property_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/Property_Handler.h
@@ -51,7 +51,9 @@ namespace CIAO
/// <CIAO::Config_Handlers::Property> to the CORBA IDL type
/// <Deployment::Property>.
static void get_property (const Property& desc,
- ::Deployment::Property& toconfig);
+ ::Deployment::Property& toconfig);
+ static Property get_property (
+ const ::Deployment::Property& src);
};
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/RDD_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/RDD_Handler.cpp
index e6b2b03b596..7a9fe8bca08 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/RDD_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/RDD_Handler.cpp
@@ -24,6 +24,19 @@ namespace CIAO
}
+ ResourceDeploymentDescription
+ RDD_Handler::resource_deployment_descr (
+ const ::Deployment::ResourceDeploymentDescription &src)
+ {
+ XMLSchema::string< char > reqname ((src.requirementName));
+ XMLSchema::string< char > resname ((src.resourceName));
+ Any resval (Any_Handler::get_any (src.resourceValue));
+
+ ResourceDeploymentDescription rdd (reqname,resname,resval);
+ return rdd;
+ }
+
+
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/RDD_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/RDD_Handler.h
index c87056371da..d2d616aca15 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/RDD_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/RDD_Handler.h
@@ -51,6 +51,9 @@ namespace CIAO
static void resource_deployment_descr (
const ResourceDeploymentDescription& desc,
::Deployment::ResourceDeploymentDescription& toconfig);
+ static ResourceDeploymentDescription
+ resource_deployment_descr (
+ const ::Deployment::ResourceDeploymentDescription &src);
};
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/Req_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/Req_Handler.cpp
index 56dbb7e1eab..6fa0928b637 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/Req_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/Req_Handler.cpp
@@ -30,15 +30,25 @@ namespace CIAO
//Map the XSC Req's property into the next
//position in the IDL Req's sequence.
-#if 0
/// @@ MAJO:
Property_Handler prophandler;
toconfig.property.length (toconfig.property.length () + 1);
Property_Handler::get_property (
- toconfig.property[toconfig.property.length () - 1],
- desc.property ());
-#endif /*if 0*/
+ desc.property (),
+ toconfig.property[toconfig.property.length () - 1]);
}
+
+ Requirement
+ Req_Handler::get_requirement (
+ const Deployment::Requirement& src)
+ {
+ XMLSchema::string< char > name ((src.name));
+ XMLSchema::string< char > res ((src.resourceType));
+ Property prop (
+ Property_Handler::get_property (src.property[0]));
+ Requirement req (name,res,prop);
+ return req;
+ }
}
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/Req_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/Req_Handler.h
index c3a22cc6dc7..27089e207d7 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/Req_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/Req_Handler.h
@@ -50,10 +50,12 @@ namespace CIAO
///This method takes a <Deployment::Requirement>
///and maps the values from the passed in XSC
///Requirement to its members.
- void get_Requirement (
+ static void get_Requirement (
Deployment::Requirement& toconfig,
Requirement& desc);
-
+ static Requirement
+ Req_Handler::get_requirement (
+ const Deployment::Requirement& src);
};
}
}