diff options
Diffstat (limited to 'TAO/CIAO/tools/Config_Handlers/RDD_Handler.cpp')
-rw-r--r-- | TAO/CIAO/tools/Config_Handlers/RDD_Handler.cpp | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/TAO/CIAO/tools/Config_Handlers/RDD_Handler.cpp b/TAO/CIAO/tools/Config_Handlers/RDD_Handler.cpp index 7a9fe8bca08..6d3518b6ac3 100644 --- a/TAO/CIAO/tools/Config_Handlers/RDD_Handler.cpp +++ b/TAO/CIAO/tools/Config_Handlers/RDD_Handler.cpp @@ -3,6 +3,8 @@ #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 { @@ -10,29 +12,41 @@ namespace CIAO { void RDD_Handler::resource_deployment_descr ( - const ResourceDeploymentDescription &src, - ::Deployment::ResourceDeploymentDescription &dest) + 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 (); - Any_Handler::extract_into_any (src.resourceValue (), - dest.resourceValue); + std::for_each (src.begin_property (), + src.end_property (), + Property_Functor (dest.property)); } ResourceDeploymentDescription RDD_Handler::resource_deployment_descr ( - const ::Deployment::ResourceDeploymentDescription &src) + const ::Deployment::ResourceDeploymentDescription &src) { + CIAO_TRACE("RDD_Handler::resource_deployment_descr - reverse"); + XMLSchema::string< char > reqname ((src.requirementName)); - XMLSchema::string< char > resname ((src.resourceName)); - Any resval (Any_Handler::get_any (src.resourceValue)); + 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])); + } - ResourceDeploymentDescription rdd (reqname,resname,resval); return rdd; } |