summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjules <jules@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2004-09-11 23:19:53 +0000
committerjules <jules@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2004-09-11 23:19:53 +0000
commitfc9fcaed99b705ebe3a09b70604ef7dc6ff8883b (patch)
tree72a8c841523df2a79ba350f63110e97925f3cf85
parent5eae61d92e7fc389e937fddf556e14088f4788da (diff)
downloadATCD-fc9fcaed99b705ebe3a09b70604ef7dc6ff8883b.tar.gz
Sat Sep 11 18:15:12 2004 Jules White <jules@dre.vanderbilt.edu>
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.cpp31
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.h64
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/PCD_Handler.cpp33
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.cpp15
-rw-r--r--TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.h4
5 files changed, 136 insertions, 11 deletions
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.cpp
new file mode 100644
index 00000000000..682af106120
--- /dev/null
+++ b/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.cpp
@@ -0,0 +1,31 @@
+// $Id$
+
+#include "ERE_Handler.h"
+#include "Basic_Deployment_Data.hpp"
+#include "ciao/Deployment_DataC.h"
+
+namespace CIAO
+{
+ namespace Config_Handlers
+ {
+
+ ERE_Handler::ERE_Handler (void)
+ {
+ }
+
+ ERE_Handler::~ERE_Handler (void)
+ {
+ }
+
+ ///This method takes a <Deployment::ExternalReferenceEndpoint>
+ ///and maps the values from the passed in XSC
+ ///ExternalReferenceEndpoint to its members.
+ void ERE_Handler::get_ExternalReferenceEndpoint (
+ Deployment::ExternalReferenceEndpoint& toconfig,
+ ExternalReferenceEndpoint& desc)
+ {
+ toconfig.location = CORBA::string_dup (desc.location ().c_str ());
+ }
+
+ }
+}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.h
new file mode 100644
index 00000000000..cd83b55adb4
--- /dev/null
+++ b/TAO/CIAO/DAnCE/Config_Handlers/ERE_Handler.h
@@ -0,0 +1,64 @@
+//==============================================================
+/**
+ * @file ERE_Handler.h
+ *
+ * $Id$
+ *
+ * @author Jules White <jules@dre.vanderbilt.edu>
+ */
+//================================================================
+
+#ifndef CIAO_CONFIG_HANDLERS_ERE_HANDLER_H
+#define CIAO_CONFIG_HANDLERS_ERE_HANDLER_H
+#include /**/ "ace/pre.h"
+
+#include "Config_Handlers_export.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+namespace Deployment
+{
+ struct ExternalReferenceEndpoint;
+}
+
+namespace CIAO
+{
+
+ namespace Config_Handlers
+ {
+
+ struct ExternalReferenceEndpoint;
+
+ /*
+ * @class ERE_Handler
+ *
+ * @brief Handler class for <ExternalReferenceEndpoint> types.
+ *
+ * This class defines handler methods to map values from
+ * XSC ExternalReferenceEndpoint objects, parsed from
+ * the descriptor files, to the corresponding CORBA IDL type.
+ *
+ */
+
+ class Config_Handlers_Export ERE_Handler{
+
+ public:
+
+ ERE_Handler (void);
+ virtual ~ERE_Handler (void);
+
+ ///This method takes a <Deployment::ExternalReferenceEndpoint>
+ ///and maps the values from the passed in XSC
+ ///ExternalReferenceEndpoint to its members.
+ void get_ExternalReferenceEndpoint (
+ Deployment::ExternalReferenceEndpoint& toconfig,
+ ExternalReferenceEndpoint& desc);
+
+ };
+ }
+}
+
+#include /**/ "ace/post.h"
+#endif /* CIAO_CONFIG_HANDLERS_ERE_HANDLER_H*/
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/PCD_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/PCD_Handler.cpp
index 3e3c33bc848..a849aa90f00 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/PCD_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/PCD_Handler.cpp
@@ -3,6 +3,8 @@
#include "PCD_Handler.h"
#include "Req_Handler.h"
#include "CEPE_Handler.h"
+#include "PSPE_Handler.h"
+#include "ERE_Handler.h"
#include "Basic_Deployment_Data.hpp"
#include "ciao/Deployment_DataC.h"
@@ -73,6 +75,37 @@ namespace CIAO
*port);
}
+ //Configure the PlanSubcomponentPortEndpoint's.
+ PSPE_Handler pspehandler;
+
+ for (PlanConnectionDescription::internalEndpoint_iterator
+ ipoint (desc.begin_internalEndpoint ());
+ ipoint != desc.end_internalEndpoint ();
+ ++ipoint)
+ {
+ toconfig.internalEndpoint.length (
+ toconfig.internalEndpoint.length () + 1);
+
+ pspehandler.get_PlanSubcomponentPortEndpoint (
+ toconfig.internalEndpoint [toconfig.internalEndpoint.length () - 1],
+ *ipoint);
+ }
+
+ //Configure the ExternalReferenceEndpoint's.
+ ERE_Handler erehandler;
+
+ for (PlanConnectionDescription::externalReference_iterator
+ ipoint (desc.begin_externalReference ());
+ ipoint != desc.end_externalReference ();
+ ++ipoint)
+ {
+ toconfig.externalReference.length (
+ toconfig.externalReference.length () + 1);
+
+ erehandler.get_ExternalReferenceEndpoint (
+ toconfig.externalReference [toconfig.externalReference.length () - 1],
+ *ipoint);
+ }
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.cpp b/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.cpp
index 88a1180a6d5..9ce53d4c0bf 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.cpp
+++ b/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.cpp
@@ -2,7 +2,7 @@
#include "PSPE_Handler.h"
#include "Basic_Deployment_Data.hpp"
-
+#include "ciao/Deployment_DataC.h"
namespace CIAO
{
@@ -28,15 +28,12 @@ namespace CIAO
if (desc.provider_p ())
{
- toconfig.provider.length (
- toconfig.provider.length () + 1);
- toconfig.provider[toconfig.provider.length () - 1] =
- CORBA::string_dup (desc.provider ().c_str ());
+ toconfig.provider = !(desc.provider ().empty ());
}
-
-
-
-
+ else
+ {
+ toconfig.provider = 0;
+ }
}
diff --git a/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.h b/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.h
index 3ea3a8428f7..d8d43495cf8 100644
--- a/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.h
+++ b/TAO/CIAO/DAnCE/Config_Handlers/PSPE_Handler.h
@@ -20,7 +20,7 @@
namespace Deployment
{
- struct PlanConnectionDescription;
+ struct PlanSubcomponentPortEndpoint;
}
namespace CIAO
@@ -29,7 +29,7 @@ namespace CIAO
namespace Config_Handlers
{
- struct PlanConnectionDescription;
+ struct PlanSubcomponentPortEndpoint;
/*
* @class PSPE_Handler