diff --git a/bakemono/.classpath b/bakemono/.classpath index 8742603..0a155ef 100644 --- a/bakemono/.classpath +++ b/bakemono/.classpath @@ -12,7 +12,7 @@ - + diff --git a/bakemono/.settings/org.eclipse.core.resources.prefs b/bakemono/.settings/org.eclipse.core.resources.prefs index f9fe345..839d647 100644 --- a/bakemono/.settings/org.eclipse.core.resources.prefs +++ b/bakemono/.settings/org.eclipse.core.resources.prefs @@ -1,4 +1,5 @@ eclipse.preferences.version=1 encoding//src/main/java=UTF-8 +encoding//src/main/resources=UTF-8 encoding//src/test/java=UTF-8 encoding/=UTF-8 diff --git a/bakemono/src/main/java/com/ontology2/bakemono/configuration/Beans.java b/bakemono/src/main/java/com/ontology2/bakemono/configuration/Beans.java index 9d5fb91..ee5a6c5 100644 --- a/bakemono/src/main/java/com/ontology2/bakemono/configuration/Beans.java +++ b/bakemono/src/main/java/com/ontology2/bakemono/configuration/Beans.java @@ -13,7 +13,7 @@ public class Beans { @Bean - public static Sieve3Configuration sieve3Default() { + public Sieve3Configuration sieve3Default() { return new Sieve3Configuration( new Rule("a", matchesA()), new Rule("label", matchesLabel()), diff --git a/bakemono/src/main/java/com/ontology2/bakemono/sieve3/Sieve3Mapper.java b/bakemono/src/main/java/com/ontology2/bakemono/sieve3/Sieve3Mapper.java index e574fa8..45198f5 100644 --- a/bakemono/src/main/java/com/ontology2/bakemono/sieve3/Sieve3Mapper.java +++ b/bakemono/src/main/java/com/ontology2/bakemono/sieve3/Sieve3Mapper.java @@ -44,7 +44,9 @@ public void setup(Context context) throws IOException, mos=new RealMultipleOutputs(context); super.setup(context); other=new PrimaryKeyValueAcceptor(context); - sieve3conf=applicationContext.getBean(Sieve3Configuration.SIEVE3DEFAULT,Sieve3Configuration.class); + sieve3conf = Sieve3Tool.createDefaultConfiguration(); + + for(Rule r:sieve3conf.getRules()) outputs.put(r.getOutputName(), new NamedKeyValueAcceptor(mos,r.getOutputName())); diff --git a/bakemono/src/main/java/com/ontology2/bakemono/sieve3/Sieve3Tool.java b/bakemono/src/main/java/com/ontology2/bakemono/sieve3/Sieve3Tool.java index e961e12..b5d3704 100644 --- a/bakemono/src/main/java/com/ontology2/bakemono/sieve3/Sieve3Tool.java +++ b/bakemono/src/main/java/com/ontology2/bakemono/sieve3/Sieve3Tool.java @@ -19,6 +19,7 @@ import com.ontology2.bakemono.Main; import com.ontology2.bakemono.Main.IncorrectUsageException; import com.ontology2.bakemono.abstractions.Spring; +import com.ontology2.bakemono.configuration.Beans; import com.ontology2.bakemono.jena.SPOTripleOutputFormat; import com.ontology2.bakemono.mapred.RealMultipleOutputs; import com.ontology2.bakemono.mapred.RealMultipleOutputsMainOutputWrapper; @@ -58,7 +59,7 @@ public void setConf(Configuration arg0) { @Override public int run(String[] arg0) throws Exception { - ApplicationContext context=Spring.getApplicationContext(conf); +// ApplicationContext context=Spring.getApplicationContext(conf); try { PeekingIterator a=Iterators.peekingIterator(Iterators.forArray(arg0)); if (!a.hasNext()) @@ -87,7 +88,7 @@ public int run(String[] arg0) throws Exception { FileOutputFormat.setCompressOutput(job, true); FileOutputFormat.setOutputCompressorClass(job, GzipCodec.class); - Sieve3Configuration sieve3Config = context.getBean(Sieve3Configuration.SIEVE3DEFAULT,Sieve3Configuration.class); + Sieve3Configuration sieve3Config = createDefaultConfiguration(); for(Rule r:sieve3Config.getRules()) RealMultipleOutputs.addNamedOutput(job, r.getOutputName(), @@ -103,6 +104,11 @@ public int run(String[] arg0) throws Exception { return 2; } } + + static Sieve3Configuration createDefaultConfiguration() { + // return context.getBean(Sieve3Configuration.SIEVE3DEFAULT,Sieve3Configuration.class); + return new Beans().sieve3Default(); + } private static void usage() throws IncorrectUsageException { throw new Main.IncorrectUsageException("incorrect arguments"); diff --git a/bakemono/src/main/resources/com/ontology2/bakemono/applicationContext.xml b/bakemono/src/main/resources/com/ontology2/bakemono/applicationContext.xml index 7308a28..e0e0216 100644 --- a/bakemono/src/main/resources/com/ontology2/bakemono/applicationContext.xml +++ b/bakemono/src/main/resources/com/ontology2/bakemono/applicationContext.xml @@ -1,5 +1,9 @@ - diff --git a/bakemono/src/test/java/com/ontology2/bakemono/abstractions/SpringTest.java b/bakemono/src/test/java/com/ontology2/bakemono/abstractions/SpringTest.java new file mode 100644 index 0000000..c12503a --- /dev/null +++ b/bakemono/src/test/java/com/ontology2/bakemono/abstractions/SpringTest.java @@ -0,0 +1,20 @@ +package com.ontology2.bakemono.abstractions; + +import static org.junit.Assert.*; + +import org.junit.Test; +import org.springframework.context.ApplicationContext; + +import com.ontology2.bakemono.sieve3.Sieve3Configuration; + +public class SpringTest { + + @Test + public void canGetSieve3Configuration() { + // right now we don't actually use the Hadoop Config, so null is OK + ApplicationContext c=Spring.getApplicationContext(null); + Sieve3Configuration sieve3Config = c.getBean(Sieve3Configuration.SIEVE3DEFAULT,Sieve3Configuration.class); + assertEquals(sieve3Config.getRules().size(),11); + } + +}