Revision: 9869
http://languagetool.svn.sourceforge.net/languagetool/?rev=9869&view=rev
Author: jaumeortola
Date: 2013-04-04 08:49:13 +0000 (Thu, 04 Apr 2013)
Log Message:
-----------
[server] Allow to enable and disable rules, at the same time, and keeping
enabled rules by default, in the LT server via http query.
Modified Paths:
--------------
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/tools/Tools.java
trunk/languagetool/languagetool-server/src/main/java/org/languagetool/server/LanguageToolHttpHandler.java
trunk/languagetool/languagetool-server/src/test/java/org/languagetool/server/HTTPServerTest.java
Modified:
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/tools/Tools.java
===================================================================
---
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/tools/Tools.java
2013-04-03 15:49:21 UTC (rev 9868)
+++
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/tools/Tools.java
2013-04-04 08:49:13 UTC (rev 9869)
@@ -578,20 +578,27 @@
* @param enabledRules ids of the rules to be enabled
*/
public static void selectRules(final JLanguageTool lt, final String[]
disabledRules, final String[] enabledRules) {
+ selectRules (lt, disabledRules, enabledRules, false);
+ }
+
+ public static void selectRules(final JLanguageTool lt, final String[]
disabledRules, final String[] enabledRules, boolean keepEnabledRulesByDefault) {
// disable rules that are disabled explicitly:
for (final String disabledRule : disabledRules) {
lt.disableRule(disabledRule);
}
- // disable all rules except those enabled explicitly, if any:
+ // enable rules
if (enabledRules.length > 0) {
final Set<String> enabledRuleIDs = new
HashSet<String>(Arrays.asList(enabledRules));
for (String ruleName : enabledRuleIDs) {
lt.enableDefaultOffRule(ruleName);
lt.enableRule(ruleName);
}
- for (Rule rule : lt.getAllRules()) {
- if (!enabledRuleIDs.contains(rule.getId())) {
- lt.disableRule(rule.getId());
+ // disable all rules except those enabled explicitly, if any:
+ if (!keepEnabledRulesByDefault) {
+ for (Rule rule : lt.getAllRules()) {
+ if (!enabledRuleIDs.contains(rule.getId())) {
+ lt.disableRule(rule.getId());
+ }
}
}
}
Modified:
trunk/languagetool/languagetool-server/src/main/java/org/languagetool/server/LanguageToolHttpHandler.java
===================================================================
---
trunk/languagetool/languagetool-server/src/main/java/org/languagetool/server/LanguageToolHttpHandler.java
2013-04-03 15:49:21 UTC (rev 9868)
+++
trunk/languagetool/languagetool-server/src/main/java/org/languagetool/server/LanguageToolHttpHandler.java
2013-04-04 08:49:13 UTC (rev 9869)
@@ -278,7 +278,7 @@
configureGUI(newLanguageTool);
}
if (useQuerySettings) {
- Tools.selectRules(newLanguageTool, disabledRules, enabledRules);
+ Tools.selectRules(newLanguageTool, disabledRules, enabledRules, true);
}
return newLanguageTool;
}
Modified:
trunk/languagetool/languagetool-server/src/test/java/org/languagetool/server/HTTPServerTest.java
===================================================================
---
trunk/languagetool/languagetool-server/src/test/java/org/languagetool/server/HTTPServerTest.java
2013-04-03 15:49:21 UTC (rev 9868)
+++
trunk/languagetool/languagetool-server/src/test/java/org/languagetool/server/HTTPServerTest.java
2013-04-04 08:49:13 UTC (rev 9869)
@@ -128,8 +128,8 @@
//enabling
assertTrue(checkWithOptions(
english, german, "This is an test", disableAvsAn,
nothing).contains("an test"));
- //should also mean disabling all other rules...
- assertTrue(!checkWithOptions(
+ //should also mean _NOT_ disabling all other rules...
+ assertTrue(checkWithOptions(
english, german, "We will berate you", disableAvsAn,
nothing).contains("BERATE"));
//test if two rules get enabled as well
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire
the most talented Cisco Certified professionals. Visit the
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html
_______________________________________________
Languagetool-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/languagetool-commits