
daniel at svn
Nov 24, 2009, 6:07 AM
Post #1 of 1
(77 views)
Permalink
|
|
SVN: [59382] trunk/WikiWord/WikiWord
|
|
http://www.mediawiki.org/wiki/Special:Code/MediaWiki/59382 Revision: 59382 Author: daniel Date: 2009-11-24 14:07:57 +0000 (Tue, 24 Nov 2009) Log Message: ----------- no more WikiWordStoreFactory, instantiate stores directly Modified Paths: -------------- trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/StoreBackedApp.java trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/query/QueryConsole.java trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/rdf/ExportRdf.java trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/store/DatabaseConceptStores.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/store/builder/DatabaseConceptStoreBuilders.java trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/store/builder/DebugLocalConceptStoreBuilder.java Removed Paths: ------------- trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/store/WikiWordStoreFactory.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 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/StoreBackedApp.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -11,7 +11,6 @@ import de.brightbyte.wikiword.store.WikiWordConceptStoreBase; import de.brightbyte.wikiword.store.WikiWordLocalStore; import de.brightbyte.wikiword.store.WikiWordStore; -import de.brightbyte.wikiword.store.WikiWordStoreFactory; /** * This is the base class for entry points to WikiWord. @@ -26,8 +25,6 @@ protected boolean allowLocalStore; protected boolean allowGlobalStore; - protected WikiWordStoreFactory<? extends S> conceptStoreFactory; - public StoreBackedApp(boolean allowGlobal, boolean allowLocal) { super(); @@ -76,10 +73,6 @@ return (Corpus)dataset; } - public void setConceptStoreFactory(WikiWordStoreFactory<? extends S> conceptStoreFactory) { - this.conceptStoreFactory = conceptStoreFactory; - } - public DatasetIdentifier getConfiguredDataset() { DatasetIdentifier dataset; @@ -96,9 +89,6 @@ return dataset; } - - - protected abstract WikiWordStoreFactory<? extends S> createConceptStoreFactory() throws IOException, PersistenceException; protected void openStores() throws PersistenceException { for (WikiWordStore store: stores) { @@ -118,16 +108,13 @@ } } - protected void createStores(WikiWordStoreFactory<? extends S> factory) throws IOException, PersistenceException { - conceptStore = factory.newStore(); - registerStore(conceptStore); - } + protected abstract void createStores() throws IOException, PersistenceException; protected void launchExecute() throws Exception { - if (conceptStoreFactory==null) conceptStoreFactory= createConceptStoreFactory(); - if (conceptStore==null) createStores(conceptStoreFactory); + if (conceptStore==null) createStores(); if (conceptStore==null) throw new RuntimeException("createStores() failed to initialize conceptStore"); + if (!stores.contains(conceptStore)) throw new RuntimeException("createStores() failed to call registerStore(conceptStore)"); exitCode = 23; Modified: trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/query/QueryConsole.java =================================================================== --- trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/query/QueryConsole.java 2009-11-24 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/query/QueryConsole.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -27,7 +27,6 @@ import de.brightbyte.wikiword.store.GlobalConceptStore; import de.brightbyte.wikiword.store.LocalConceptStore; import de.brightbyte.wikiword.store.WikiWordConceptStore; -import de.brightbyte.wikiword.store.WikiWordStoreFactory; public class QueryConsole extends ConsoleApp<WikiWordConceptStore> { @@ -391,7 +390,8 @@ } @Override - protected WikiWordStoreFactory<WikiWordConceptStore> createConceptStoreFactory() throws IOException, PersistenceException { - return new DatabaseConceptStores.Factory(getConfiguredDataSource(), getConfiguredDataset(), tweaks, true, true); + protected void createStores() throws PersistenceException, IOException { + conceptStore = DatabaseConceptStores.createConceptStore(getConfiguredDataSource(), getConfiguredDataset(), tweaks, true, true); + registerStore(conceptStore); } } Modified: trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/rdf/ExportRdf.java =================================================================== --- trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/rdf/ExportRdf.java 2009-11-24 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/rdf/ExportRdf.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -42,7 +42,6 @@ import de.brightbyte.wikiword.store.DatabaseLocalConceptStore; import de.brightbyte.wikiword.store.DatabaseWikiWordConceptStore; import de.brightbyte.wikiword.store.WikiWordConceptStore; -import de.brightbyte.wikiword.store.WikiWordStoreFactory; import de.brightbyte.wikiword.store.DatabaseWikiWordConceptStore.DatabaseStatisticsStore; public class ExportRdf<V, R extends V, A, W> extends StoreBackedApp<WikiWordConceptStore> { @@ -966,10 +965,10 @@ this.plainSkos = plainSkos; } - @Override - protected WikiWordStoreFactory<WikiWordConceptStore> createConceptStoreFactory() throws IOException, PersistenceException { - return new DatabaseConceptStores.Factory(getConfiguredDataSource(), getConfiguredDataset(), tweaks, true, true); + protected void createStores() throws PersistenceException, IOException { + conceptStore = DatabaseConceptStores.createConceptStore(getConfiguredDataSource(), getConfiguredDataset(), tweaks, true, true); + registerStore(conceptStore); } public static void main(String[] argv) throws Exception { Modified: trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/store/DatabaseConceptStores.java =================================================================== --- trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/store/DatabaseConceptStores.java 2009-11-24 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/store/DatabaseConceptStores.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -15,29 +15,6 @@ public class DatabaseConceptStores { - public static class Factory<S extends DatabaseWikiWordConceptStore<? extends WikiWordConcept, ? extends WikiWordConceptReference<? extends WikiWordConcept>>> implements WikiWordStoreFactory<S> { - private DataSource db; - private DatasetIdentifier dataset; - private TweakSet tweaks; - private boolean allowCorpus; - private boolean allowThesaurus; - - public Factory(DataSource db, DatasetIdentifier dataset, TweakSet tweaks, boolean allowCorpus, boolean allowThesaurus) { - super(); - this.db = db; - this.dataset = dataset; - this.tweaks = tweaks; - this.allowCorpus = allowCorpus; - this.allowThesaurus = allowThesaurus; - } - - @SuppressWarnings("unchecked") - public S newStore() throws PersistenceException { - return (S)createConceptStore(db, dataset, tweaks, allowCorpus, allowThesaurus); - } - - } - public static DatabaseWikiWordConceptStore<? extends WikiWordConcept, ? extends WikiWordConceptReference<? extends WikiWordConcept>> createConceptStore(DataSource db, DatasetIdentifier dataset, TweakSet tweaks, boolean allowCorpus, boolean allowThesaurus) throws PersistenceException { //XXX: UGLY HACK! try { Deleted: trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/store/WikiWordStoreFactory.java =================================================================== --- trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/store/WikiWordStoreFactory.java 2009-11-24 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWord/src/main/java/de/brightbyte/wikiword/store/WikiWordStoreFactory.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -1,7 +0,0 @@ -package de.brightbyte.wikiword.store; - -import de.brightbyte.util.PersistenceException; - -public interface WikiWordStoreFactory<S extends WikiWordStore> { - public S newStore() throws PersistenceException; -} 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 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildConceptInfo.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -4,7 +4,6 @@ import de.brightbyte.util.PersistenceException; import de.brightbyte.wikiword.model.WikiWordConcept; -import de.brightbyte.wikiword.store.WikiWordStoreFactory; import de.brightbyte.wikiword.store.builder.ConceptInfoStoreBuilder; import de.brightbyte.wikiword.store.builder.WikiWordConceptStoreBuilder; @@ -22,8 +21,8 @@ } @Override - protected void createStores(WikiWordStoreFactory<? extends WikiWordConceptStoreBuilder<? extends WikiWordConcept>> factory) throws IOException, PersistenceException { - super.createStores(factory); + protected void createStores() throws IOException, PersistenceException { + super.createStores(); infoStore = conceptStore.getConceptInfoStoreBuilder(); registerTargetStore(infoStore); 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 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildStatistics.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -4,7 +4,6 @@ import de.brightbyte.util.PersistenceException; import de.brightbyte.wikiword.model.WikiWordConcept; -import de.brightbyte.wikiword.store.WikiWordStoreFactory; import de.brightbyte.wikiword.store.builder.StatisticsStoreBuilder; import de.brightbyte.wikiword.store.builder.WikiWordConceptStoreBuilder; @@ -29,8 +28,8 @@ //protected WikiWordConceptStoreBuilder<?> conceptStore; @Override - protected void createStores(WikiWordStoreFactory<? extends WikiWordConceptStoreBuilder<? extends WikiWordConcept>> factory) throws IOException, PersistenceException { - super.createStores(factory); + protected void createStores() throws IOException, PersistenceException { + super.createStores(); statisticsStore = conceptStore.getStatisticsStoreBuilder(); registerTargetStore(statisticsStore); 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 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/BuildThesaurus.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -5,7 +5,6 @@ import de.brightbyte.util.PersistenceException; import de.brightbyte.wikiword.Corpus; -import de.brightbyte.wikiword.store.WikiWordStoreFactory; import de.brightbyte.wikiword.store.builder.GlobalConceptStoreBuilder; /** @@ -117,8 +116,8 @@ } @Override - protected void createStores(WikiWordStoreFactory<? extends GlobalConceptStoreBuilder> factory) throws IOException, PersistenceException { - super.createStores(factory); + protected void createStores() throws IOException, PersistenceException { + super.createStores(); registerTargetStore(conceptStore); } 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 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportApp.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -9,14 +9,16 @@ import de.brightbyte.application.Agenda; import de.brightbyte.application.Agenda.Monitor; +import de.brightbyte.io.ConsoleIO; import de.brightbyte.io.Prompt; import de.brightbyte.util.PersistenceException; +import de.brightbyte.wikiword.Corpus; import de.brightbyte.wikiword.StoreBackedApp; import de.brightbyte.wikiword.model.WikiWordConcept; import de.brightbyte.wikiword.store.WikiWordStore; -import de.brightbyte.wikiword.store.WikiWordStoreFactory; import de.brightbyte.wikiword.store.builder.DatabaseConceptStoreBuilders; import de.brightbyte.wikiword.store.builder.DatabaseWikiWordStoreBuilder; +import de.brightbyte.wikiword.store.builder.DebugLocalConceptStoreBuilder; import de.brightbyte.wikiword.store.builder.WikiWordConceptStoreBuilder; import de.brightbyte.wikiword.store.builder.WikiWordStoreBuilder; @@ -49,13 +51,7 @@ this.useAgenda = agendaTask != null; } - @SuppressWarnings("unchecked") @Override - protected WikiWordStoreFactory<? extends S> createConceptStoreFactory() throws IOException, PersistenceException { - return new DatabaseConceptStoreBuilders.Factory(getConfiguredDataSource(), getConfiguredDataset(), tweaks, null, true, true); - } - - @Override protected void declareOptions() { super.declareOptions(); @@ -278,9 +274,14 @@ if (!targetStores.contains(store)) targetStores.add(store); } - protected void createStores(WikiWordStoreFactory<? extends S> factory) throws IOException, PersistenceException { - super.createStores(factory); + @SuppressWarnings("unchecked") + @Override + protected void createStores() throws PersistenceException, IOException { + if (args.isSet("debug")) conceptStore = (S)new DebugLocalConceptStoreBuilder(getCorpus(), out); //HACK: ugly cast; //FIXME: will fail if global store expected + else conceptStore = (S)DatabaseConceptStoreBuilders.createConceptStoreBuilder(getConfiguredDataSource(), getConfiguredDataset(), tweaks, null, true, true); + registerStore(conceptStore); + if (conceptStore instanceof DatabaseWikiWordStoreBuilder) { ((DatabaseWikiWordStoreBuilder)conceptStore).setBackgroundErrorHandler(new FatalBackgroundErrorHandler<Runnable, Throwable, Error>()); } 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 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportConcepts.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -7,7 +7,6 @@ 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; @@ -28,14 +27,9 @@ super("ImportConcepts"); } - protected WikiWordStoreFactory<? extends LocalConceptStoreBuilder> createConceptStoreFactory() throws IOException, PersistenceException { - if (args.isSet("debug")) return new DebugLocalConceptStoreBuilder.Factory((Corpus)getConfiguredDataset(), ConsoleIO.output); - else return super.createConceptStoreFactory(); - } - @Override - protected void createStores(WikiWordStoreFactory<? extends LocalConceptStoreBuilder> factory) throws IOException, PersistenceException { - super.createStores(factory); + protected void createStores() throws IOException, PersistenceException { + super.createStores(); registerTargetStore(conceptStore); textStore = conceptStore.getTextStoreBuilder(); 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 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/builder/ImportProperties.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -7,7 +7,6 @@ import de.brightbyte.wikiword.builder.ConceptImporter; import de.brightbyte.wikiword.builder.ImportDump; import de.brightbyte.wikiword.builder.PropertyImporter; -import de.brightbyte.wikiword.store.WikiWordStoreFactory; import de.brightbyte.wikiword.store.builder.LocalConceptStoreBuilder; import de.brightbyte.wikiword.store.builder.PropertyStoreBuilder; @@ -26,8 +25,8 @@ } @Override - protected void createStores(WikiWordStoreFactory<? extends LocalConceptStoreBuilder> factory) throws IOException, PersistenceException { - super.createStores(factory); + protected void createStores() throws IOException, PersistenceException { + super.createStores(); boolean attach = args.isSet("attach"); if (!attach) registerTargetStore(conceptStore); Modified: trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/store/builder/DatabaseConceptStoreBuilders.java =================================================================== --- trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/store/builder/DatabaseConceptStoreBuilders.java 2009-11-24 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/store/builder/DatabaseConceptStoreBuilders.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -12,34 +12,9 @@ import de.brightbyte.wikiword.TweakSet; import de.brightbyte.wikiword.model.WikiWordConcept; import de.brightbyte.wikiword.schema.WikiWordStoreSchema; -import de.brightbyte.wikiword.store.WikiWordStoreFactory; public class DatabaseConceptStoreBuilders { - - public static class Factory<C extends WikiWordConcept> implements WikiWordStoreFactory<DatabaseWikiWordConceptStoreBuilder<C>> { - private DataSource db; - private DatasetIdentifier dataset; - private TweakSet tweaks; - private Agenda agenda; - private boolean allowCorpus; - private boolean allowThesaurus; - - public Factory(DataSource db, DatasetIdentifier dataset, TweakSet tweaks, Agenda agenda, boolean allowCorpus, boolean allowThesaurus) { - super(); - this.db = db; - this.dataset = dataset; - this.tweaks = tweaks; - this.agenda = agenda; - this.allowCorpus = allowCorpus; - this.allowThesaurus = allowThesaurus; - } - - @SuppressWarnings("unchecked") - public DatabaseWikiWordConceptStoreBuilder<C> newStore() throws PersistenceException { - return (DatabaseWikiWordConceptStoreBuilder<C>)createConceptStoreBuilder(db, dataset, tweaks, agenda, allowCorpus, allowThesaurus); - } - } - + public static DatabaseWikiWordConceptStoreBuilder<? extends WikiWordConcept> createConceptStoreBuilder(DataSource db, DatasetIdentifier dataset, TweakSet tweaks, Agenda agenda, boolean allowCorpus, boolean allowThesaurus) throws PersistenceException { //XXX: UGLY HACK! try { Modified: trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/store/builder/DebugLocalConceptStoreBuilder.java =================================================================== --- trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/store/builder/DebugLocalConceptStoreBuilder.java 2009-11-24 13:51:53 UTC (rev 59381) +++ trunk/WikiWord/WikiWordBuilder/src/main/java/de/brightbyte/wikiword/store/builder/DebugLocalConceptStoreBuilder.java 2009-11-24 14:07:57 UTC (rev 59382) @@ -24,26 +24,11 @@ import de.brightbyte.wikiword.schema.AliasScope; import de.brightbyte.wikiword.store.GroupNameTranslator; import de.brightbyte.wikiword.store.WikiWordConceptStore; -import de.brightbyte.wikiword.store.WikiWordStoreFactory; /** * Dummy implementation of WikiStoreBuilder for testing and debugging */ public class DebugLocalConceptStoreBuilder implements LocalConceptStoreBuilder { - - public static class Factory implements WikiWordStoreFactory<DebugLocalConceptStoreBuilder> { - protected Output out; - protected Corpus corpus; - - public Factory(Corpus corpus, Output out) { - this.out = out; - this.corpus = corpus; - } - - public DebugLocalConceptStoreBuilder newStore() throws PersistenceException { - return new DebugLocalConceptStoreBuilder(corpus, out); - } - } public class DebugTextStoreBuilder implements TextStoreBuilder { _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS [at] lists https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs
|