summaryrefslogtreecommitdiff
path: root/modules/CIAO/tools/Config_Handlers/CRDD_Handler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'modules/CIAO/tools/Config_Handlers/CRDD_Handler.cpp')
-rw-r--r--modules/CIAO/tools/Config_Handlers/CRDD_Handler.cpp66
1 files changed, 66 insertions, 0 deletions
diff --git a/modules/CIAO/tools/Config_Handlers/CRDD_Handler.cpp b/modules/CIAO/tools/Config_Handlers/CRDD_Handler.cpp
new file mode 100644
index 00000000000..03da34467eb
--- /dev/null
+++ b/modules/CIAO/tools/Config_Handlers/CRDD_Handler.cpp
@@ -0,0 +1,66 @@
+// $Id$
+
+#include "CRDD_Handler.h"
+#include "Any_Handler.h"
+#include "Basic_Deployment_Data.hpp"
+#include "ciao/Deployment_DataC.h"
+#include "Property_Handler.h"
+
+#include "ciao/CIAO_common.h"
+
+namespace CIAO
+{
+ namespace Config_Handlers
+ {
+
+ CRDD_Handler::CRDD_Handler (void)
+ {
+ }
+
+ CRDD_Handler::~CRDD_Handler (void)
+ {
+ }
+
+ ///This method takes a <Deployment::ConnectionResourceDeploymentDescription>
+ ///and maps the values from the passed in XSC
+ ///ConnectionResourceDeploymentDescription to its members.
+ void CRDD_Handler::get_ConnectionResourceDeploymentDescription (Deployment::ConnectionResourceDeploymentDescription& toconfig,
+ const ConnectionResourceDeploymentDescription& desc)
+ {
+ CIAO_TRACE("CRDD_Handler::get_ConnectionResourceDD");
+
+ toconfig.targetName = desc.targetName ().c_str ();
+ toconfig.requirementName = desc.requirementName ().c_str ();
+ toconfig.resourceName = desc.resourceName ().c_str ();
+
+ std::for_each (desc.begin_property (),
+ desc.end_property (),
+ Property_Functor (toconfig.property));
+ }
+
+ ConnectionResourceDeploymentDescription
+ CRDD_Handler::connection_resource_depl_desc (
+ const ::Deployment::ConnectionResourceDeploymentDescription& src)
+ {
+ CIAO_TRACE("CRDD_Handler::get_ConnectionResourceDeploymentDescription- reverse");
+ XMLSchema::string< ACE_TCHAR > tname ((src.targetName));
+ XMLSchema::string< ACE_TCHAR > reqname ((src.requirementName));
+ XMLSchema::string <ACE_TCHAR> resname ((src.resourceName));
+
+ ConnectionResourceDeploymentDescription crdd (tname,
+ reqname,
+ resname);
+
+ for (CORBA::ULong i = 0;
+ i != src.property.length ();
+ ++i)
+ {
+ crdd.add_property (Property_Handler::get_property (src.property[i]));
+ }
+
+
+ return crdd;
+ }
+
+ }
+}