You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oodt.apache.org by bf...@apache.org on 2012/03/19 19:35:12 UTC
svn commit: r1302586 - in /oodt/trunk/pge/src:
main/java/org/apache/oodt/cas/pge/PGETaskInstance.java
main/java/org/apache/oodt/cas/pge/metadata/PgeTaskMetKeys.java
test/org/apache/oodt/cas/pge/TestPGETaskInstance.java
Author: bfoster
Date: Mon Mar 19 18:35:12 2012
New Revision: 1302586
URL: http://svn.apache.org/viewvc?rev=1302586&view=rev
Log:
- CAS-PGE PgeMetadata can now be dumped to an xml file after initialization
--------------
OODT-422
Modified:
oodt/trunk/pge/src/main/java/org/apache/oodt/cas/pge/PGETaskInstance.java
oodt/trunk/pge/src/main/java/org/apache/oodt/cas/pge/metadata/PgeTaskMetKeys.java
oodt/trunk/pge/src/test/org/apache/oodt/cas/pge/TestPGETaskInstance.java
Modified: oodt/trunk/pge/src/main/java/org/apache/oodt/cas/pge/PGETaskInstance.java
URL: http://svn.apache.org/viewvc/oodt/trunk/pge/src/main/java/org/apache/oodt/cas/pge/PGETaskInstance.java?rev=1302586&r1=1302585&r2=1302586&view=diff
==============================================================================
--- oodt/trunk/pge/src/main/java/org/apache/oodt/cas/pge/PGETaskInstance.java (original)
+++ oodt/trunk/pge/src/main/java/org/apache/oodt/cas/pge/PGETaskInstance.java Mon Mar 19 18:35:12 2012
@@ -22,6 +22,7 @@ import static org.apache.oodt.cas.pge.me
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.ATTEMPT_INGEST_ALL;
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.CRAWLER_CRAWL_FOR_DIRS;
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.CRAWLER_RECUR;
+import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.DUMP_METADATA;
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.INGEST_CLIENT_TRANSFER_SERVICE_FACTORY;
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.INGEST_FILE_MANAGER_URL;
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.MET_FILE_EXT;
@@ -118,6 +119,9 @@ public class PGETaskInstance implements
// Initialize Logger.
initializePgeLogger();
+ // Write out PgeMetadata.
+ dumpMetadataIfRequested();
+
// Setup the PGE.
createExeDir();
createOuputDirsIfRequested();
@@ -275,6 +279,24 @@ public class PGETaskInstance implements
return instanceId;
}
+ protected void dumpMetadataIfRequested() throws Exception {
+ if (Boolean.parseBoolean(pgeMetadata
+ .getMetadata(DUMP_METADATA))) {
+ new SerializableMetadata(pgeMetadata.asMetadata())
+ .writeMetadataToXmlStream(new FileOutputStream(
+ getDumpMetadataPath()));
+ }
+ }
+
+ protected String getDumpMetadataPath() throws Exception {
+ return new File(pgeConfig.getExeDir()).getAbsolutePath() + "/"
+ + getDumpMetadataName();
+ }
+
+ protected String getDumpMetadataName() throws Exception {
+ return "pgetask-metadata.xml";
+ }
+
protected void createExeDir() throws Exception {
log(Level.INFO, "Creating PGE execution working directory: ["
+ pgeConfig.getExeDir() + "]");
Modified: oodt/trunk/pge/src/main/java/org/apache/oodt/cas/pge/metadata/PgeTaskMetKeys.java
URL: http://svn.apache.org/viewvc/oodt/trunk/pge/src/main/java/org/apache/oodt/cas/pge/metadata/PgeTaskMetKeys.java?rev=1302586&r1=1302585&r2=1302586&view=diff
==============================================================================
--- oodt/trunk/pge/src/main/java/org/apache/oodt/cas/pge/metadata/PgeTaskMetKeys.java (original)
+++ oodt/trunk/pge/src/main/java/org/apache/oodt/cas/pge/metadata/PgeTaskMetKeys.java Mon Mar 19 18:35:12 2012
@@ -52,6 +52,12 @@ public enum PgeTaskMetKeys {
"PGETask_PropertyAdderClasspath",
true),
/**
+ * List of {@link ConfigFilePropertyAdder}s classpaths to be run.
+ */
+ DUMP_METADATA(
+ "PGETask/DumpMetadata",
+ "PGETask/DumpMetadata"),
+ /**
* Set by CAS-PGE to the number of milliseconds it took CAS-PGE to run.
*/
PGE_RUNTIME(
Modified: oodt/trunk/pge/src/test/org/apache/oodt/cas/pge/TestPGETaskInstance.java
URL: http://svn.apache.org/viewvc/oodt/trunk/pge/src/test/org/apache/oodt/cas/pge/TestPGETaskInstance.java?rev=1302586&r1=1302585&r2=1302586&view=diff
==============================================================================
--- oodt/trunk/pge/src/test/org/apache/oodt/cas/pge/TestPGETaskInstance.java (original)
+++ oodt/trunk/pge/src/test/org/apache/oodt/cas/pge/TestPGETaskInstance.java Mon Mar 19 18:35:12 2012
@@ -19,6 +19,7 @@ package org.apache.oodt.cas.pge;
//OODT static imports
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.NAME;
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.CONFIG_FILE_PATH;
+import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.DUMP_METADATA;
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.PGE_CONFIG_BUILDER;
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.PROPERTY_ADDERS;
import static org.apache.oodt.cas.pge.metadata.PgeTaskMetKeys.REQUIRED_METADATA;
@@ -117,6 +118,7 @@ public class TestPGETaskInstance extends
assertEquals("1",
pgeTask.pgeMetadata
.getMetadata(MockConfigFilePropertyAdder.RUN_COUNTER));
+ System.getProperties().remove(PgeTaskMetKeys.USE_LEGACY_PROPERTY);
}
public void testCreatePgeMetadata() throws Exception {
@@ -156,6 +158,7 @@ public class TestPGETaskInstance extends
.getAllMetadata(PROPERTY_ADDERS).get(0));
}
+ @SuppressWarnings("unchecked") // FileUtils.readLines cast to List<String>
public void testLogger() throws Exception {
File tmpFile = File.createTempFile("bogus", "bogus");
File tmpDir = tmpFile.getParentFile();
@@ -315,6 +318,35 @@ public class TestPGETaskInstance extends
assertTrue(sciPgeConfigFile.exists());
}
+ public void testDumpMetadataIfRequested() throws Exception {
+ PGETaskInstance pgeTask = createTestInstance();
+ File dumpMetFile = new File(pgeTask.getDumpMetadataPath());
+ pgeTask.dumpMetadataIfRequested();
+ assertFalse(dumpMetFile.exists());
+ pgeTask.pgeMetadata.replaceMetadata(DUMP_METADATA, "true");
+ pgeTask.dumpMetadataIfRequested();
+ assertTrue(dumpMetFile.exists());
+ @SuppressWarnings("unchecked")
+ List<String> dumpedMet = FileUtils.readLines(dumpMetFile, "UTF-8");
+ assertEquals("<?xml version=\"1.0\" encoding=\"UTF-8\"?>",
+ dumpedMet.get(0));
+ assertEquals(
+ "<cas:metadata xmlns:cas=\"http://oodt.jpl.nasa.gov/1.0/cas\">",
+ dumpedMet.get(1));
+ assertEquals(" <keyval type=\"vector\">", dumpedMet.get(2));
+ assertEquals(" <key>PGETask%2FName</key>", dumpedMet.get(3));
+ assertEquals(" <val>" + pgeTask.pgeMetadata.getMetadata(NAME)
+ + "</val>", dumpedMet.get(4));
+ assertEquals(" </keyval>", dumpedMet.get(5));
+ assertEquals(" <keyval type=\"vector\">", dumpedMet.get(6));
+ assertEquals(" <key>PGETask%2FDumpMetadata</key>", dumpedMet.get(7));
+ assertEquals(
+ " <val>" + pgeTask.pgeMetadata.getMetadata(DUMP_METADATA)
+ + "</val>", dumpedMet.get(8));
+ assertEquals(" </keyval>", dumpedMet.get(9));
+ assertEquals("</cas:metadata>", dumpedMet.get(10));
+ }
+
private PGETaskInstance createTestInstance() throws Exception {
return createTestInstance(UUID.randomUUID().toString());
}