summaryrefslogtreecommitdiff
path: root/TAO/CIAO/tools/Config_Handlers/IRDD_Handler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/CIAO/tools/Config_Handlers/IRDD_Handler.cpp')
-rw-r--r--TAO/CIAO/tools/Config_Handlers/IRDD_Handler.cpp150
1 files changed, 79 insertions, 71 deletions
diff --git a/TAO/CIAO/tools/Config_Handlers/IRDD_Handler.cpp b/TAO/CIAO/tools/Config_Handlers/IRDD_Handler.cpp
index 36ab6231001..110297ce783 100644
--- a/TAO/CIAO/tools/Config_Handlers/IRDD_Handler.cpp
+++ b/TAO/CIAO/tools/Config_Handlers/IRDD_Handler.cpp
@@ -5,8 +5,8 @@
#include "IRDD_Handler.h"
#include "Basic_Deployment_Data.hpp"
#include "ciao/Deployment_DataC.h"
-#include "Any_Handler.h"
-
+#include "Property_Handler.h"
+#include "ciao/CIAO_common.h"
namespace CIAO
@@ -25,90 +25,98 @@ namespace CIAO
void
IRDD_Handler::instance_resource_deployment_descr (
- const InstanceResourceDeploymentDescription& desc,
- Deployment::InstanceResourceDeploymentDescription& toconfig)
+ const InstanceResourceDeploymentDescription& desc,
+ Deployment::InstanceResourceDeploymentDescription& toconfig)
throw (Config_Error)
{
-
+ CIAO_TRACE("IRDD_Handler::instance_resource_deployment_descr");
+
switch (desc.resourceUsage ().integral ())
- {
- case ResourceUsageKind::None_l:
- toconfig.resourceUsage = Deployment::None;
- break;
-
- case ResourceUsageKind::InstanceUsesResource_l:
- toconfig.resourceUsage = Deployment::InstanceUsesResource;
- break;
-
- case ResourceUsageKind::ResourceUsesInstance_l:
- toconfig.resourceUsage = Deployment::ResourceUsesInstance;
- break;
-
- case ResourceUsageKind::PortUsesResource_l:
- toconfig.resourceUsage = Deployment::PortUsesResource;
- break;
-
- case ResourceUsageKind::ResourceUsesPort_l:
- toconfig.resourceUsage = Deployment::ResourceUsesPort;
- break;
-
- default:
- throw Config_Error (desc.requirementName (),
- "Unknown ResourceUsageKind.");
- break;
- }
-
+ {
+ case ResourceUsageKind::None_l:
+ toconfig.resourceUsage = Deployment::None;
+ break;
+
+ case ResourceUsageKind::InstanceUsesResource_l:
+ toconfig.resourceUsage = Deployment::InstanceUsesResource;
+ break;
+
+ case ResourceUsageKind::ResourceUsesInstance_l:
+ toconfig.resourceUsage = Deployment::ResourceUsesInstance;
+ break;
+
+ case ResourceUsageKind::PortUsesResource_l:
+ toconfig.resourceUsage = Deployment::PortUsesResource;
+ break;
+
+ case ResourceUsageKind::ResourceUsesPort_l:
+ toconfig.resourceUsage = Deployment::ResourceUsesPort;
+ break;
+
+ default:
+ throw Config_Error (desc.requirementName (),
+ "Unknown ResourceUsageKind.");
+ break;
+ }
+
toconfig.requirementName = desc.requirementName ().c_str ();
-
+
toconfig.resourceName= desc.resourceName ().c_str ();
-
- Any_Handler::extract_into_any (desc.resourceValue (),
- toconfig.resourceValue);
-
+
+ toconfig.property.length (desc.count_property ());
+ std::for_each (desc.begin_property (),
+ desc.end_property (),
+ Property_Functor (toconfig.property));
}
InstanceResourceDeploymentDescription
IRDD_Handler::instance_resource_deployment_descr (
- const Deployment::InstanceResourceDeploymentDescription& src)
+ const Deployment::InstanceResourceDeploymentDescription& src)
throw (Config_Error)
{
+ CIAO_TRACE("IRDD_Handler::instance_resource_deployment_descr - reverse");
+
XMLSchema::string< char > reqname ((src.requirementName));
XMLSchema::string< char > resname ((src.resourceName));
- Any resval (Any_Handler::get_any (src.resourceValue));
-
+
InstanceResourceDeploymentDescription irdd (ResourceUsageKind::None,
- reqname,
- resname,
- resval);
-
+ reqname,
+ resname);
+
switch (src.resourceUsage)
- {
- case Deployment::None:
- irdd.resourceUsage (ResourceUsageKind::None);
- break;
-
- case Deployment::InstanceUsesResource:
- irdd.resourceUsage (ResourceUsageKind::InstanceUsesResource);
- break;
-
- case Deployment::ResourceUsesInstance:
- irdd.resourceUsage (ResourceUsageKind::ResourceUsesInstance);
- break;
-
- case Deployment::PortUsesResource:
- irdd.resourceUsage (ResourceUsageKind::PortUsesResource);
- break;
-
- case Deployment::ResourceUsesPort:
- irdd.resourceUsage (ResourceUsageKind::ResourceUsesPort);
- break;
-
- default:
- throw Config_Error (src.resourceName.in (),
- "Unknown ResourceUsageKind.");
- break;
- }
-
+ {
+ case Deployment::None:
+ irdd.resourceUsage (ResourceUsageKind::None);
+ break;
+
+ case Deployment::InstanceUsesResource:
+ irdd.resourceUsage (ResourceUsageKind::InstanceUsesResource);
+ break;
+
+ case Deployment::ResourceUsesInstance:
+ irdd.resourceUsage (ResourceUsageKind::ResourceUsesInstance);
+ break;
+
+ case Deployment::PortUsesResource:
+ irdd.resourceUsage (ResourceUsageKind::PortUsesResource);
+ break;
+
+ case Deployment::ResourceUsesPort:
+ irdd.resourceUsage (ResourceUsageKind::ResourceUsesPort);
+ break;
+
+ default:
+ throw Config_Error (src.resourceName.in (),
+ "Unknown ResourceUsageKind.");
+ break;
+ }
+
+ for (CORBA::ULong i = 0; i < src.property.length (); ++i)
+ {
+ irdd.add_property (Property_Handler::get_property (src.property[i]));
+ }
+
+
return irdd;
}
}