
daniel at svn
Nov 24, 2009, 5:51 AM
Post #1 of 1
(146 views)
Permalink
|
|
SVN: [59381] trunk/WikiWord/WikiWord
|
|
http://www.mediawiki.org/wiki/Special:Code/MediaWiki/59381 Revision: 59381 Author: daniel Date: 2009-11-24 13:51:53 +0000 (Tue, 24 Nov 2009) Log Message: ----------- initStores/targetStores Modified Paths: -------------- trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/StoreBackedApp.java trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildConceptInfo.java trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildStatistics.java trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildThesaurus.java trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportApp.java trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportConcepts.java trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportProperties.java trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/PropertyImporter.java Modified: trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/StoreBackedApp.java =================================================================== --- trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/StoreBackedApp.java 2009-11-24 12:51:51 UTC (rev 59380) +++ trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/StoreBackedApp.java 2009-11-24 13:51:53 UTC (rev 59381) @@ -28,7 +28,6 @@ protected WikiWordStoreFactory<? extends S> conceptStoreFactory; - public StoreBackedApp(boolean allowGlobal, boolean allowLocal) { super(); @@ -38,7 +37,7 @@ protected void registerStore(WikiWordStore store) { - stores.add(store); + if (!stores.contains(store)) stores.add(store); } protected Collection<WikiWordStore> getStores() { Modified: trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildConceptInfo.java =================================================================== --- trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildConceptInfo.java 2009-11-24 12:51:51 UTC (rev 59380) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildConceptInfo.java 2009-11-24 13:51:53 UTC (rev 59381) @@ -26,7 +26,7 @@ super.createStores(factory); infoStore = conceptStore.getConceptInfoStoreBuilder(); - registerStore(infoStore); + registerTargetStore(infoStore); } @Override Modified: trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildStatistics.java =================================================================== --- trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildStatistics.java 2009-11-24 12:51:51 UTC (rev 59380) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildStatistics.java 2009-11-24 13:51:53 UTC (rev 59381) @@ -28,13 +28,12 @@ //protected WikiWordConceptStoreBuilder<?> conceptStore; - @Override protected void createStores(WikiWordStoreFactory<? extends WikiWordConceptStoreBuilder<? extends WikiWordConcept>> factory) throws IOException, PersistenceException { super.createStores(factory); statisticsStore = conceptStore.getStatisticsStoreBuilder(); - registerStore(statisticsStore); + registerTargetStore(statisticsStore); } @Override Modified: trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildThesaurus.java =================================================================== --- trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildThesaurus.java 2009-11-24 12:51:51 UTC (rev 59380) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildThesaurus.java 2009-11-24 13:51:53 UTC (rev 59381) @@ -1,8 +1,11 @@ package de.brightbyte.wikiword.builder; +import java.io.IOException; import java.util.Arrays; +import de.brightbyte.util.PersistenceException; import de.brightbyte.wikiword.Corpus; +import de.brightbyte.wikiword.store.WikiWordStoreFactory; import de.brightbyte.wikiword.store.builder.GlobalConceptStoreBuilder; /** @@ -10,7 +13,7 @@ * ImportDump can be invoked as a standalone program, use --help as a * command line parameter for usage information. */ -public class BuildThesaurus extends ImportApp { +public class BuildThesaurus extends ImportApp<GlobalConceptStoreBuilder> { private Corpus[] languages; @@ -62,7 +65,6 @@ } }*/ - @Override protected void run() throws Exception { section("-- importConcepts --------------------------------------------------"); @@ -84,16 +86,16 @@ } info("Using languages: "+Arrays.toString(languages)); - ((GlobalConceptStoreBuilder)this.conceptStore).setLanguages(languages); + this.conceptStore.setLanguages(languages); if (agenda.beginTask("BuildThesaurus.run", "importConcepts")) { - ((GlobalConceptStoreBuilder)this.conceptStore).importConcepts(); + this.conceptStore.importConcepts(); agenda.endTask("BuildThesaurus.run", "importConcepts"); } section("-- buildGlobalConcepts --------------------------------------------------"); if (agenda.beginTask("BuildThesaurus.run", "buildGlobalConcepts")) { - ((GlobalConceptStoreBuilder)this.conceptStore).buildGlobalConcepts(); + this.conceptStore.buildGlobalConcepts(); agenda.endTask("BuildThesaurus.run", "buildGlobalConcepts"); } @@ -113,4 +115,11 @@ BuildThesaurus app = new BuildThesaurus(); app.launch(argv); } + + @Override + protected void createStores(WikiWordStoreFactory<? extends GlobalConceptStoreBuilder> factory) throws IOException, PersistenceException { + super.createStores(factory); + registerTargetStore(conceptStore); + } + } \ No newline at end of file Modified: trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportApp.java =================================================================== --- trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportApp.java 2009-11-24 12:51:51 UTC (rev 59380) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportApp.java 2009-11-24 13:51:53 UTC (rev 59381) @@ -4,10 +4,11 @@ import static de.brightbyte.util.LogLevels.LOG_INFO; import java.io.IOException; +import java.util.ArrayList; +import java.util.List; import de.brightbyte.application.Agenda; import de.brightbyte.application.Agenda.Monitor; -import de.brightbyte.db.DatabaseTask; import de.brightbyte.io.Prompt; import de.brightbyte.util.PersistenceException; import de.brightbyte.wikiword.StoreBackedApp; @@ -31,6 +32,8 @@ ATTACH } + protected List<WikiWordStoreBuilder> targetStores = new ArrayList<WikiWordStoreBuilder>(); + private boolean useAgenda; private String agendaTask; protected Agenda agenda; @@ -251,22 +254,30 @@ protected void initializeStores(boolean purge, boolean dropWarnings) throws PersistenceException { for (WikiWordStore store: stores) { - ((WikiWordStoreBuilder)store).initialize(purge, dropWarnings); //XXX: ugly cast! + if (store instanceof WikiWordStoreBuilder) { + boolean isTarget = targetStores.contains(store); + ((WikiWordStoreBuilder)store).initialize(isTarget && purge, isTarget && dropWarnings); + } } } protected void optimizeStores() throws PersistenceException { - for (WikiWordStore store: stores) { - ((WikiWordStoreBuilder)store).optimize(); //XXX: ugly cast! + for (WikiWordStoreBuilder store: targetStores) { + store.optimize(); } } protected void checkStores() throws PersistenceException { - for (WikiWordStore store: stores) { - ((WikiWordStoreBuilder)store).checkConsistency(); //XXX: ugly cast! + for (WikiWordStore store: targetStores) { + store.checkConsistency(); } } + protected void registerTargetStore(WikiWordStoreBuilder store) { + super.registerStore(store); + if (!targetStores.contains(store)) targetStores.add(store); + } + protected void createStores(WikiWordStoreFactory<? extends S> factory) throws IOException, PersistenceException { super.createStores(factory); Modified: trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportConcepts.java =================================================================== --- trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportConcepts.java 2009-11-24 12:51:51 UTC (rev 59380) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportConcepts.java 2009-11-24 13:51:53 UTC (rev 59381) @@ -6,11 +6,13 @@ import de.brightbyte.util.PersistenceException; import de.brightbyte.wikiword.Corpus; import de.brightbyte.wikiword.analyzer.WikiTextAnalyzer; +import de.brightbyte.wikiword.store.WikiWordStore; import de.brightbyte.wikiword.store.WikiWordStoreFactory; import de.brightbyte.wikiword.store.builder.DebugLocalConceptStoreBuilder; import de.brightbyte.wikiword.store.builder.LocalConceptStoreBuilder; import de.brightbyte.wikiword.store.builder.PropertyStoreBuilder; import de.brightbyte.wikiword.store.builder.TextStoreBuilder; +import de.brightbyte.wikiword.store.builder.WikiWordStoreBuilder; /** * This is the primary entry point to the first phase of a WikiWord analysis. @@ -34,12 +36,13 @@ @Override protected void createStores(WikiWordStoreFactory<? extends LocalConceptStoreBuilder> factory) throws IOException, PersistenceException { super.createStores(factory); + registerTargetStore(conceptStore); textStore = conceptStore.getTextStoreBuilder(); - registerStore(textStore); + registerTargetStore(textStore); propertyStore = conceptStore.getPropertyStoreBuilder(); - registerStore(propertyStore); + registerTargetStore(propertyStore); } @Override Modified: trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportProperties.java =================================================================== --- trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportProperties.java 2009-11-24 12:51:51 UTC (rev 59380) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportProperties.java 2009-11-24 13:51:53 UTC (rev 59381) @@ -28,9 +28,11 @@ @Override protected void createStores(WikiWordStoreFactory<? extends LocalConceptStoreBuilder> factory) throws IOException, PersistenceException { super.createStores(factory); + boolean attach = args.isSet("attach"); + if (!attach) registerTargetStore(conceptStore); propertyStore = conceptStore.getPropertyStoreBuilder(); - registerStore(propertyStore); + registerTargetStore(propertyStore); } @Override Modified: trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/PropertyImporter.java =================================================================== --- trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/PropertyImporter.java 2009-11-24 12:51:51 UTC (rev 59380) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/PropertyImporter.java 2009-11-24 13:51:53 UTC (rev 59381) @@ -137,6 +137,7 @@ super.configure(args); if (args.isSet("attach")) buildConcepts = false; + else buildConcepts = true; setStoreProperties(true); } _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS [at] lists https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs
|