With Raffaele:
authormtadel <mtadel@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 23 Sep 2008 09:14:54 +0000 (09:14 +0000)
committermtadel <mtadel@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 23 Sep 2008 09:14:54 +0000 (09:14 +0000)
In AliEveEventManager::Open() use the existing CDB default storage if
it is already set. This means one can do:

alieve
  a = AliCDBManager::Instance()
  a->SetDefaultStorage("alien://folder=/alice/data/2008/LHC08c/OCDB/")
  .x anyscan_init.C

EVE/EveBase/AliEveEventManager.cxx

index 1bd4373..c532542 100644 (file)
@@ -22,6 +22,7 @@
 #include <AliRawReaderDate.h>
 #include <AliMagFMaps.h>
 #include <AliCDBManager.h>
+#include <AliCDBStorage.h>
 #include <AliHeader.h>
 #include <AliGeomManager.h>
 
@@ -369,9 +370,17 @@ void AliEveEventManager::Open()
 
   {
     AliCDBManager* cdb = AliCDBManager::Instance();
-    cdb->SetDefaultStorage(fgCdbUri);
-    if (cdb->IsDefaultStorageSet() == kFALSE)
-      throw (kEH + "CDB initialization failed.");
+    if (cdb->IsDefaultStorageSet() == kTRUE)
+    {
+      Warning(kEH, "CDB already set - using the old storage:\n  '%s'",
+             cdb->GetDefaultStorage()->GetURI().Data());
+    }
+    else
+    {
+      cdb->SetDefaultStorage(fgCdbUri);
+      if (cdb->IsDefaultStorageSet() == kFALSE)
+       throw (kEH + "CDB initialization failed.");
+    }
     cdb->SetRun(runNo);
   }