perfsonar-dev - r1412 - trunk/perfsonar/src/org/perfsonar/service/measurementArchive/storageManager
Subject: perfsonar development work
List archive
r1412 - trunk/perfsonar/src/org/perfsonar/service/measurementArchive/storageManager
Chronological Thread
- From:
- To:
- Subject: r1412 - trunk/perfsonar/src/org/perfsonar/service/measurementArchive/storageManager
- Date: Thu, 13 Jul 2006 07:40:56 -0400
Author: roman
Date: 2006-07-13 07:40:55 -0400 (Thu, 13 Jul 2006)
New Revision: 1412
Modified:
trunk/perfsonar/src/org/perfsonar/service/measurementArchive/storageManager/MetadataConfigurationStorageManager.java
Log:
Changes required to use Maciej's new implementation of xmldb access.
Modified:
trunk/perfsonar/src/org/perfsonar/service/measurementArchive/storageManager/MetadataConfigurationStorageManager.java
===================================================================
---
trunk/perfsonar/src/org/perfsonar/service/measurementArchive/storageManager/MetadataConfigurationStorageManager.java
2006-07-13 11:37:48 UTC (rev 1411)
+++
trunk/perfsonar/src/org/perfsonar/service/measurementArchive/storageManager/MetadataConfigurationStorageManager.java
2006-07-13 11:40:55 UTC (rev 1412)
@@ -5,6 +5,7 @@
package org.perfsonar.service.measurementArchive.storageManager;
+import org.perfsonar.commons.auxiliary.AuxiliaryComponent;
import org.perfsonar.commons.auxiliary.AuxiliaryComponentManager;
import org.perfsonar.commons.auxiliary.ComponentNames;
import
org.perfsonar.commons.auxiliary.components.configuration.ConfigurationComponent;
@@ -14,17 +15,18 @@
import org.perfsonar.service.commons.exceptions.RequestException;
import org.perfsonar.service.commons.exceptions.DataFormatException;
+import org.perfsonar.service.commons.storage.StorageManager;
import org.perfsonar.service.commons.storage.NMWGStorageManager;
-import
org.perfsonar.service.commons.storage.xmldb.exist.ExistDbXmlStorageManager;
-import
org.perfsonar.service.commons.storage.xmldb.exist.ExistDbXmlDataRepository;
-
import org.ggf.ns.nmwg.base.v2_0.Message;
import org.ggf.ns.nmwg.base.v2_0.Metadata;
import org.ggf.ns.nmwg.base.v2_0.Data;
import org.ggf.ns.nmwg.base.v2_0.Key;
+import java.util.Map;
+import java.util.Collection;
+
/**
* This class contains methods to manage metadata configuration data.
*
@@ -38,8 +40,10 @@
- private ExistDbXmlStorageManager existDbXmlStorageManager = null;
+ private StorageManager existDbXmlStorageManager = null;
+ private static String xmldbAccess = "http";
+
protected LoggerComponent logger = null;
protected ConfigurationComponent configuration = null;
@@ -59,13 +63,29 @@
try {
- AuxiliaryComponentManager.
- getInstance().
- loadComponent(
- "ma.xmldb",
-
"org.perfsonar.service.commons.storage.xmldb.exist.ExistDbXmlStorageManager");
+ MetadataConfigurationStorageManager.xmldbAccess =
+ ((ConfigurationComponent)
+ AuxiliaryComponentManager.
+ getInstance().
+ getComponent(ComponentNames.CONFIG)).
+
getProperty("component.ma.xmldb.db_access");
+
- ((ExistDbXmlStorageManager)
+ if
(MetadataConfigurationStorageManager.xmldbAccess.equals("xmlrpc"))
+ AuxiliaryComponentManager.
+ getInstance().
+ loadComponent(
+ "ma.xmldb",
+
"org.perfsonar.service.commons.storage.xmldb.exist.ExistDbXmlStorageManager");
+ else
+ AuxiliaryComponentManager.
+ getInstance().
+ loadComponent(
+ "ma.xmldb",
+
"org.perfsonar.service.commons.storage.xmldb.existHttp.ExistDbXmlStorageManager");
+
+
+ ((AuxiliaryComponent)
AuxiliaryComponentManager.
getInstance().
getComponent("ma.xmldb"))
@@ -140,7 +160,7 @@
public void initStorage(Key dataRepository) throws SystemException {
- existDbXmlStorageManager = (ExistDbXmlStorageManager)
+ existDbXmlStorageManager = (StorageManager)
AuxiliaryComponentManager.
getInstance().
getComponent("ma.xmldb");
@@ -225,17 +245,31 @@
if (xmlResults[i].trim().equals("")) continue;
- Metadata metadata =
- (Metadata) transformations.transformResults(xmlResults[i],
"metadata");
+ String xmlResult =
+ "<nmwg:message
xmlns:nmwg=\"http://ggf.org/ns/nmwg/base/2.0/\"> "
+ + xmlResults[i]
+ + "</nmwg:message>";
- message.addChild(metadata);
- Data data = getData(metadata.getId());
+ //logger.debug("MetadataConfigurationStorageManager.fetch: xml
result: "
+ // + xmlResult);
- if (data == null)
- continue;
+ Map metadatas =
+ transformations.transformResults(xmlResult, "metadata");
- message.addChild(data);
+ logger.debug("MetadataConfigurationStorageManager.fetch: "
+ + "number of metadata elements fetched from "
+ + "the metadata configuration: " + metadatas.size());
+ Collection<Metadata> collection = metadatas.values();
+ for (Metadata md : collection) {
+
+ message.addChild(md);
+ Data data = getData(md.getId());
+ if (data == null) continue;
+ message.addChild(data);
+
+ }
+
}
return message;
@@ -361,13 +395,22 @@
if (xmlResults.length == 0) return null;
+ if (xmlResults[0].trim().equals("")) return null;
- Data data =
- (Data) transformations.transformResults(xmlResults[0], "data");
+ Map datas = transformations.transformResults(xmlResults[0], "data");
- return data;
+ logger.debug("MetadataConfigurationStorageManager.getData: "
+ + "number of data elements fetched from "
+ + "the metadata configuration: " +
datas.size());
+ Collection<Data> collection = datas.values();
+ for (Data d : collection) {
+ return d;
+ }
+
+ return null;
+
}
- r1412 - trunk/perfsonar/src/org/perfsonar/service/measurementArchive/storageManager, svnlog, 07/13/2006
Archive powered by MHonArc 2.6.16.