summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsjiang <sjiang@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2006-11-03 03:07:37 +0000
committersjiang <sjiang@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2006-11-03 03:07:37 +0000
commit66e515605425947b2708cb39254b30ad5bc39de0 (patch)
treeae22c443ae711f901236f66ee864cb511e7b6601
parentbef237aa1a11eabe50c203e8eeb1b9a0428cae85 (diff)
downloadATCD-66e515605425947b2708cb39254b30ad5bc39de0.tar.gz
ChangeLog Tag: Fri Nov 3 03:03:24 UTC 2006 Shanshan Jiang <shanshan.jiang@vanderbilt.edu>
-rw-r--r--CIAO/ChangeLog7
-rw-r--r--CIAO/DAnCE/NodeApplicationManager/Containers_Info_Map.cpp62
-rw-r--r--CIAO/DAnCE/RepositoryManager/PC_Updater.cpp7
3 files changed, 64 insertions, 12 deletions
diff --git a/CIAO/ChangeLog b/CIAO/ChangeLog
index 4afc69a27be..9da2ca32eb9 100644
--- a/CIAO/ChangeLog
+++ b/CIAO/ChangeLog
@@ -1,3 +1,10 @@
+Fri Nov 3 03:03:24 UTC 2006 Shanshan Jiang <shanshan.jiang@vanderbilt.edu>
+
+ * DAnCE/NodeApplicationManager/Containers_Info_Map.cpp
+ * DAnCE/RepositoryManager/PC_Updater.cpp
+ Modified these files to differentiate the location field of
+ deploymentplan for different platforms.
+
Thu Nov 2 22:54:12 UTC 2006 Jeff Parsons <j.parsons@vanderbilt.edu>
* CIDLC/ServnatSourceGenerator.cpp:
diff --git a/CIAO/DAnCE/NodeApplicationManager/Containers_Info_Map.cpp b/CIAO/DAnCE/NodeApplicationManager/Containers_Info_Map.cpp
index 01808650980..49419d9d94e 100644
--- a/CIAO/DAnCE/NodeApplicationManager/Containers_Info_Map.cpp
+++ b/CIAO/DAnCE/NodeApplicationManager/Containers_Info_Map.cpp
@@ -13,7 +13,7 @@
#include "ace/OS_NS_sys_stat.h" //for filesize and mkdir
#include "ace/OS_NS_string.h" //for string functions
-
+#include "iostream"
namespace CIAO
{
Containers_Info_Map::
@@ -465,11 +465,6 @@ is_shared_component (ACE_CString & name)
ACE_CString &arti_name,
ACE_CString &path)
{
-
- ACE_DEBUG ((LM_INFO,
- "Attempting to download %s\n",
- location));
-
// Figure out the file name.
char* name = const_cast<char*> (location);
char* p = 0;
@@ -506,9 +501,17 @@ is_shared_component (ACE_CString & name)
return false;
}
+ ACE_CString new_name (name);
+
+#if defined (ACE_WIN32)
+ new_name += "d.dll";
+#else
+ new_name = "lib" + new_name + ".so";
+#endif
+
path = HTTP_DOWNLOAD_PATH;
path += "/";
- path += name;
+ path += new_name;
if (!this->write_to_disk (path.c_str (), *mb))
{
@@ -529,9 +532,50 @@ is_shared_component (ACE_CString & name)
CIAO::Containers_Info_Map::retrieve_via_HTTP (const char* URL,
ACE_Message_Block &mb)
{
+ ACE_CString loc (URL);
+
+ // Figure out the file name.
+ char* name_ = const_cast<char*> (URL);
+ char* p = 0;
+
+ while (true)
+ {
+ p = ACE_OS::strstr (name_, "/");
+
+ if (0 == p)
+ {
+ p = ACE_OS::strstr (name_, "\\");
+ }
+
+ if (0 == p)
+ {
+ break;
+ }
+ else
+ {
+ name_ = ++p;
+ continue;
+ }
+ }
+
+ ACE_CString name (name_);
+ loc = loc.substr (0, loc.length() - name.length ());
+
+#if defined (ACE_WIN32)
+ name += "d.dll";
+#else
+ name = "lib" + name + ".so";
+#endif
+
+ loc = loc + name;
+
+ ACE_DEBUG ((LM_INFO,
+ "Attempting to download %s\n",
+ loc.c_str ()));
+
URL_Parser *parser = TheURL_Parser::instance ();
- if (!parser->parseURL (const_cast<char*> (URL)))
- return false;
+ if (!parser->parseURL (const_cast<char*> (loc.c_str ())))
+ return false;
// Create a client
HTTP_Client client;
diff --git a/CIAO/DAnCE/RepositoryManager/PC_Updater.cpp b/CIAO/DAnCE/RepositoryManager/PC_Updater.cpp
index 164a151cd6f..8515f11479a 100644
--- a/CIAO/DAnCE/RepositoryManager/PC_Updater.cpp
+++ b/CIAO/DAnCE/RepositoryManager/PC_Updater.cpp
@@ -171,6 +171,8 @@ void PC_Updater::clear_list ()
void PC_Updater::update (::Deployment::ImplementationArtifactDescription &iad)
{
+ const char* location = CORBA::string_dup (iad.location[0]);
+
//create an interator
ACE_Double_Linked_List_Iterator<ZIP_File_Info> iter (this->file_list_);
@@ -190,8 +192,8 @@ void PC_Updater::clear_list ()
if (name)
{
ACE_CString loc (this->server_path_);
- loc += "/";
- loc += full_path;
+ loc += "/implementations/";
+ loc += location;
iad.location[0] = CORBA::string_dup (loc.c_str ());
@@ -201,7 +203,6 @@ void PC_Updater::clear_list ()
}
iter++;
}
- const char* location = iad.location[0];
ACE_ERROR ((LM_ERROR,
"[PC_Updater::update] Unable to update: %s!\n",