Browse Source

lazy-init JsEngine

tags/2.0.1
Jonathan Cobb 4 years ago
parent
commit
e891428171
1 changed files with 3 additions and 2 deletions
  1. +3
    -2
      src/main/java/org/cobbzilla/util/string/StringUtil.java

+ 3
- 2
src/main/java/org/cobbzilla/util/string/StringUtil.java View File

@@ -1,6 +1,7 @@
package org.cobbzilla.util.string; package org.cobbzilla.util.string;


import com.google.common.base.CaseFormat; import com.google.common.base.CaseFormat;
import lombok.Getter;
import org.apache.commons.io.input.ReaderInputStream; import org.apache.commons.io.input.ReaderInputStream;
import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.LocaleUtils; import org.apache.commons.lang3.LocaleUtils;
@@ -507,14 +508,14 @@ public class StringUtil {
private static final String DIFF_JS private static final String DIFF_JS
= loadResourceAsStringOrDie(getPackagePath(StringUtil.class)+"/diff_match_patch.js") + "\n" = loadResourceAsStringOrDie(getPackagePath(StringUtil.class)+"/diff_match_patch.js") + "\n"
+ loadResourceAsStringOrDie(getPackagePath(StringUtil.class)+"/calc_diff.js") + "\n"; + loadResourceAsStringOrDie(getPackagePath(StringUtil.class)+"/calc_diff.js") + "\n";
public static JsEngine DIFF_JS_ENGINE = new JsEngine(new JsEngineConfig(5, 20, null));
@Getter(lazy=true) private static final JsEngine diffJsEngine = new JsEngine(new JsEngineConfig(5, 20, null));
public static String diff (String text1, String text2, Map<String, String> opts) { public static String diff (String text1, String text2, Map<String, String> opts) {
if (opts == null) opts = new HashMap<>(); if (opts == null) opts = new HashMap<>();
final Map<String, Object> ctx = new HashMap<>(); final Map<String, Object> ctx = new HashMap<>();
ctx.put("text1", text1); ctx.put("text1", text1);
ctx.put("text2", text2); ctx.put("text2", text2);
ctx.put("opts", opts); ctx.put("opts", opts);
return DIFF_JS_ENGINE.evaluate(DIFF_JS, ctx);
return getDiffJsEngine().evaluate(DIFF_JS, ctx);
} }


public static String replaceWithRandom(String s, String find, int randLength) { public static String replaceWithRandom(String s, String find, int randLength) {


Loading…
Cancel
Save