You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oodt.apache.org by ri...@apache.org on 2013/10/29 23:51:32 UTC
svn commit: r1536923 -
/oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/util/XmlStructFactory.java
Author: riverma
Date: Tue Oct 29 22:51:32 2013
New Revision: 1536923
URL: http://svn.apache.org/r1536923
Log:
OODT-655: Ensure XmlStructFactory transcribes product type met and extractor info
Modified:
oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/util/XmlStructFactory.java
Modified: oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/util/XmlStructFactory.java
URL: http://svn.apache.org/viewvc/oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/util/XmlStructFactory.java?rev=1536923&r1=1536922&r2=1536923&view=diff
==============================================================================
--- oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/util/XmlStructFactory.java (original)
+++ oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/util/XmlStructFactory.java Tue Oct 29 22:51:32 2013
@@ -19,6 +19,7 @@ package org.apache.oodt.cas.filemgr.util
//JDK imports
import java.util.ArrayList;
+import java.util.Enumeration;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Iterator;
@@ -369,6 +370,51 @@ public final class XmlStructFactory {
.getVersioner());
typeElem.appendChild(versionerClassPathElem);
+ // add extractor info
+ Element metExtractorsElem = document.createElement("metExtractors");
+ for (Object specObject : type.getExtractors()) {
+ ExtractorSpec spec = (ExtractorSpec) specObject;
+ Element extractorElem = document.createElement("extractor");
+ extractorElem.setAttribute("class", spec.getClassName());
+
+ if (spec.getConfiguration() != null) {
+ Element extractorConfigElem = document.createElement("configuration");
+ Enumeration e = spec.getConfiguration().propertyNames();
+
+ while (e.hasMoreElements()) {
+ String key = (String) e.nextElement();
+
+ Element propertyElem = document.createElement("property");
+ propertyElem.setAttribute("name", key);
+ propertyElem.setAttribute("value", spec.getConfiguration().getProperty(key));
+
+ extractorConfigElem.appendChild(propertyElem);
+ }
+
+ extractorElem.appendChild(extractorConfigElem);
+ }
+
+ metExtractorsElem.appendChild(extractorElem);
+ }
+ typeElem.appendChild(metExtractorsElem);
+
+ // add type metadata
+ Element metElem = document.createElement("metadata");
+ for (String key : type.getTypeMetadata().getAllKeys()) {
+ Element keyValElem = document.createElement("keyval");
+ Element keyElem = document.createElement("key");
+ Element valElem = document.createElement("val");
+
+ keyElem.appendChild(document.createTextNode(key));
+ valElem.appendChild(document.createTextNode(
+ type.getTypeMetadata().getMetadata(key)));
+ keyValElem.appendChild(keyElem);
+ keyValElem.appendChild(valElem);
+
+ metElem.appendChild(keyValElem);
+ }
+ typeElem.appendChild(metElem);
+
root.appendChild(typeElem);
}