summaryrefslogtreecommitdiff
path: root/modules/CIAO/tools/Config_Handlers/RDD_Handler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'modules/CIAO/tools/Config_Handlers/RDD_Handler.cpp')
-rw-r--r--modules/CIAO/tools/Config_Handlers/RDD_Handler.cpp57
1 files changed, 57 insertions, 0 deletions
diff --git a/modules/CIAO/tools/Config_Handlers/RDD_Handler.cpp b/modules/CIAO/tools/Config_Handlers/RDD_Handler.cpp
new file mode 100644
index 00000000000..374c0e4993f
--- /dev/null
+++ b/modules/CIAO/tools/Config_Handlers/RDD_Handler.cpp
@@ -0,0 +1,57 @@
+// $Id$
+
+#include "RDD_Handler.h"
+#include "Basic_Deployment_Data.hpp"
+#include "ciao/Deployment_DataC.h"
+#include "Any_Handler.h"
+#include "ciao/CIAO_common.h"
+#include "Property_Handler.h"
+
+namespace CIAO
+{
+ namespace Config_Handlers
+ {
+ void
+ RDD_Handler::resource_deployment_descr (
+ const ResourceDeploymentDescription &src,
+ ::Deployment::ResourceDeploymentDescription &dest)
+ {
+ CIAO_TRACE("RDD_Handler::resource_deployment_descr");
+
+ dest.requirementName =
+ src.requirementName ().c_str ();
+
+ dest.resourceName=
+ src.resourceName ().c_str ();
+
+ std::for_each (src.begin_property (),
+ src.end_property (),
+ Property_Functor (dest.property));
+
+ }
+
+ ResourceDeploymentDescription
+ RDD_Handler::resource_deployment_descr (
+ const ::Deployment::ResourceDeploymentDescription &src)
+ {
+ CIAO_TRACE("RDD_Handler::resource_deployment_descr - reverse");
+
+ XMLSchema::string< char > reqname ((src.requirementName));
+ XMLSchema::string< char > resname ((src.resourceName.in ()));
+
+ ResourceDeploymentDescription rdd (reqname,resname);
+
+ for (CORBA::ULong i = 0;
+ i != src.property.length ();
+ ++i)
+ {
+ rdd.add_property (Property_Handler::get_property (src.property[i]));
+ }
+
+ return rdd;
+ }
+
+
+ }
+
+}