summaryrefslogtreecommitdiff
path: root/TAO/CIAO/tools/Config_Handlers/Package_Handlers/PCD_Handler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/CIAO/tools/Config_Handlers/Package_Handlers/PCD_Handler.cpp')
-rw-r--r--TAO/CIAO/tools/Config_Handlers/Package_Handlers/PCD_Handler.cpp31
1 files changed, 19 insertions, 12 deletions
diff --git a/TAO/CIAO/tools/Config_Handlers/Package_Handlers/PCD_Handler.cpp b/TAO/CIAO/tools/Config_Handlers/Package_Handlers/PCD_Handler.cpp
index 922c1fac252..675060fd082 100644
--- a/TAO/CIAO/tools/Config_Handlers/Package_Handlers/PCD_Handler.cpp
+++ b/TAO/CIAO/tools/Config_Handlers/Package_Handlers/PCD_Handler.cpp
@@ -1,19 +1,19 @@
// $Id$
#include "tao/AnyTypeCode/AnyTypeCode_methods.h"
+#include "ciao/CIAO_common.h"
+#include "ciao/Packaging_DataC.h"
+#include "Utils/XML_Helper.h"
+#include "Utils/XercesString.h"
+#include "Utils/Exceptions.h"
#include "Package_Handlers/PCD_Handler.h"
#include "Package_Handlers/CPD_Handler.h"
-#include "Basic_Deployment_Data.hpp"
-#include "ciao/Packaging_DataC.h"
#include "Deployment.hpp"
#include "Property_Handler.h"
#include "Req_Handler.h"
-#include "Utils/XercesString.h"
-#include "Utils/Exceptions.h"
-#include <memory>
-#include "ciao/CIAO_common.h"
+#include "Basic_Deployment_Data.hpp"
-#include <xercesc/util/XMLString.hpp>
+#include <memory>
namespace CIAO
{
@@ -25,13 +25,20 @@ namespace CIAO
PCD_Handler::package_config (const ACE_TCHAR *uri,
::Deployment::PackageConfiguration &toconfig)
{
- xercesc::DOMDocument *dom = XML_HELPER->create_dom (uri);
+ const xercesc::DOMDocument *dom = XML_HELPER->create_dom (uri);
+
+ if (dom == 0)
+ {
+ std::string error ("Unable to open file: ");
+ error += uri;
+ throw Parse_Error (error);
+ }
- XStr root = dom->getDocumentElement ()->getTagName ();
+ XStr root = dom->getDocumentElement ()->getTagName ();
if (root == XStr ("Deployment:topLevelPackageDescription"))
{
- TopLevelPackageDescription tpd (topLevelPackageDescription (dom));
+ TopLevelPackageDescription tpd = topLevelPackageDescription (dom);
PCD_Handler::package_config (tpd.package (),
toconfig);
}
@@ -83,8 +90,8 @@ namespace CIAO
if (pcd->basePackage_p ())
{
toconfig.basePackage.length (1);
- CPD_Handler::component_package_descr (pcd->basePackage (),
- toconfig.basePackage [0]);
+ CPD_Handler::handle_component_package_descr (pcd->basePackage (),
+ toconfig.basePackage [0]);
}
// @@ MAJO: Support other elements present here.