Revision: 52531 Author: daniel Date: 2009-06-28 21:46:00 +0000 (Sun, 28 Jun 2009)
Log Message: ----------- custom sql scripts, etc Modified Paths: -------------- trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/AbstractIntegratorApp.java trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/FeatureSetSourceDescriptor.java trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/RunIntegratorScript.java trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/RunIntegratorSql.java trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/list.sql Added Paths: ----------- trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/scriptURL.bsh Modified: trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/AbstractIntegratorApp.java =================================================================== --- trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/AbstractIntegratorApp.java 2009-06-28 21:01:27 UTC (rev 52530) +++ trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/AbstractIntegratorApp.java 2009-06-28 21:46:00 UTC (rev 52531) @@ -14,7 +14,6 @@ import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.regex.Pattern; import javax.sql.DataSource; @@ -389,9 +388,9 @@ List<Functor<String, String>> more = sourceDescriptor.getScriptManglers(); if (more!=null) list.addAll(more); - list.add( new SqlScriptRunner.RegularExpressionMangler(Pattern.compile("/\\* *wikiword_prefix* \\*/"), getConfiguredDataset().getDbPrefix()) ); - list.add( new SqlScriptRunner.RegularExpressionMangler(Pattern.compile("/\\* *wikiword_db* \\*/"), getConfiguredDatasetName()) ); - list.add( new SqlScriptRunner.RegularExpressionMangler(Pattern.compile("/\\* *wikiword_target_table* \\*/"), getTargetTableName()) ); + list.add( SqlScriptRunner.makeCommentSubstitutionMangler("wikiword_prefix", getConfiguredDataset().getDbPrefix()) ); + list.add( SqlScriptRunner.makeCommentSubstitutionMangler("wikiword_db", getConfiguredDatasetName()) ); + list.add( SqlScriptRunner.makeCommentSubstitutionMangler("wikiword_target_table", getTargetTableName()) ); return list; } Modified: trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/FeatureSetSourceDescriptor.java =================================================================== --- trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/FeatureSetSourceDescriptor.java 2009-06-28 21:01:27 UTC (rev 52530) +++ trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/FeatureSetSourceDescriptor.java 2009-06-28 21:46:00 UTC (rev 52531) @@ -11,6 +11,7 @@ import java.util.regex.Pattern; import de.brightbyte.data.Functor; +import de.brightbyte.db.SqlScriptRunner; import de.brightbyte.db.SqlScriptRunner.RegularExpressionMangler; import de.brightbyte.text.Chunker; import de.brightbyte.text.CsvLineChunker; @@ -144,9 +145,7 @@ Map<String, String> subst = getTweak("sql-comment-subst", Collections.<String, String>emptyMap()); for (Map.Entry<String, String>e: subst.entrySet()) { - Pattern p = Pattern.compile("/\\* *"+e.getKey()+" *\\*/"); - RegularExpressionMangler m = new RegularExpressionMangler(p, e.getValue()); - manglers.add(m); + manglers.add(SqlScriptRunner.makeCommentSubstitutionMangler(e.getKey(), e.getValue())); } return manglers; Modified: trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/RunIntegratorScript.java =================================================================== --- trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/RunIntegratorScript.java 2009-06-28 21:01:27 UTC (rev 52530) +++ trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/RunIntegratorScript.java 2009-06-28 21:46:00 UTC (rev 52531) @@ -99,6 +99,7 @@ i.set("datasource", getConfiguredDataSource()); i.set("scriptManglers", getSqlScriptManglers()); i.set("tablePrefix", getConfiguredDataset().getDbPrefix()); + i.set("scriptBaseUrl", getInputHelper().getURL(n)); i.eval("import java.util.*;"); i.eval("import de.brightbyte.wikiword.*;"); @@ -120,8 +121,8 @@ protected Collection<Functor<String, String>> getSqlScriptManglers() { ArrayList<Functor<String, String>> list = new ArrayList<Functor<String, String>>(); - list.add( new SqlScriptRunner.RegularExpressionMangler(Pattern.compile("/\\* *wikiword_prefix* \\*/"), getConfiguredDataset().getDbPrefix()) ); - list.add( new SqlScriptRunner.RegularExpressionMangler(Pattern.compile("/\\* *wikiword_db* \\*/"), getConfiguredDatasetName()) ); + list.add( SqlScriptRunner.makeCommentSubstitutionMangler("wikiword_prefix", getConfiguredDataset().getDbPrefix()) ); + list.add( SqlScriptRunner.makeCommentSubstitutionMangler("wikiword_db", getConfiguredDatasetName()) ); return list; } Modified: trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/RunIntegratorSql.java =================================================================== --- trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/RunIntegratorSql.java 2009-06-28 21:01:27 UTC (rev 52530) +++ trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/RunIntegratorSql.java 2009-06-28 21:46:00 UTC (rev 52531) @@ -12,6 +12,7 @@ import java.util.ArrayList; import java.util.Collection; import java.util.Map; +import java.util.regex.Matcher; import java.util.regex.Pattern; import javax.sql.DataSource; @@ -123,11 +124,15 @@ for (Map.Entry<Object, String> e: subst.entrySet()) { Object o = e.getKey(); - Pattern p; - if (o instanceof Pattern) p = (Pattern)o; - else p = Pattern.compile("/\\* *"+o+"* \\*/"); + Functor<String, String> f; + if (o instanceof Pattern) { + f = new SqlScriptRunner.RegularExpressionMangler((Pattern)o, Matcher.quoteReplacement(e.getValue())); + } + else { + f = SqlScriptRunner.makeCommentSubstitutionMangler(e.getKey().toString(), e.getValue()); + } - this.subsitutions.add(new SqlScriptRunner.RegularExpressionMangler(p, e.getValue())); + this.subsitutions.add(f); } } @@ -246,11 +251,11 @@ if (this.subsitutions!=null) list.addAll(this.subsitutions); - list.add( new SqlScriptRunner.RegularExpressionMangler(Pattern.compile("/\\* *wikiword_prefix* \\*/"), getConfiguredDataset().getDbPrefix()) ); - list.add( new SqlScriptRunner.RegularExpressionMangler(Pattern.compile("/\\* *wikiword_db* \\*/"), getConfiguredDatasetName()) ); + list.add( SqlScriptRunner.makeCommentSubstitutionMangler("wikiword_prefix", getConfiguredDataset().getDbPrefix()) ); + list.add( SqlScriptRunner.makeCommentSubstitutionMangler("wikiword_db", getConfiguredDatasetName()) ); - if (getMappingTableName()!=null) list.add( new SqlScriptRunner.RegularExpressionMangler(Pattern.compile("/\\* *wikiword_mapping_table* \\*/"), getMappingTableName()) ); - if (getForeignTableName()!=null) list.add( new SqlScriptRunner.RegularExpressionMangler(Pattern.compile("/\\* *wikiword_foreign_table* \\*/"), getForeignTableName()) ); + if (getMappingTableName()!=null) list.add( SqlScriptRunner.makeCommentSubstitutionMangler("wikiword_mapping_table", getMappingTableName()) ); + if (getForeignTableName()!=null) list.add( SqlScriptRunner.makeCommentSubstitutionMangler("wikiword_foreign_table", getForeignTableName()) ); return list; } Modified: trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/list.sql =================================================================== --- trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/list.sql 2009-06-28 21:01:27 UTC (rev 52530) +++ trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/list.sql 2009-06-28 21:46:00 UTC (rev 52531) @@ -1 +1 @@ -SELECT * FROM /* wikiword_prefix *//* wikiword_mapping_table */ /* list_order */ /* list_limit */; \ No newline at end of file +SELECT /* list_fields | * */ FROM /* wikiword_prefix *//* wikiword_mapping_table */ /* list_order */ /* list_limit */; \ No newline at end of file Added: trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/scriptURL.bsh =================================================================== --- trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/scriptURL.bsh (rev 0) +++ trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/scriptURL.bsh 2009-06-28 21:46:00 UTC (rev 52531) @@ -0,0 +1,3 @@ +scriptURL( path ) { + return new java.net.URL(scriptBaseUrl, path).toString(); +} \ No newline at end of file Property changes on: trunk/WikiWord/WikiWordIntegrator/src/main/java/de/brightbyte/wikiword/integrator/scriptURL.bsh ___________________________________________________________________ Added: svn:mergeinfo + _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs