EmbeddedFunctions { public static String parseFullText(String string1, String string2) { Set<String> set = new HashSet<String>(); set.addAll(parseFullText(string1)); set.addAll(parseFullText(string2)); List<String> words = new ArrayList<String>(set); Collections.sort(words); return join(words, ' '); }  static boolean isInTree(Serializable id, Serializable baseId); static boolean isInTree(Connection conn, Serializable id,
            Serializable baseId); static boolean isAccessAllowed(Serializable id,
            Set<String> principals, Set<String> permissions); static boolean isAccessAllowed(Connection conn, Serializable id,
            Set<String> principals, Set<String> permissions); static String parseFullText(String string1, String string2); static final String parseWord(String string); static Set<String> split(String string); static Set<String> split(String string, char sep);  }
@Test public void testParseFullText() { checkParseFullText("brown dog fail fox jump lazy over quick", "The quick brown fox jumps over the lazy dog -- and fails!"); checkParseFullText("aime cafe jure pas", "J'aime PAS le caf\u00e9, je te jure."); checkParseFullText("007 bond jame thx1138", "James Bond 007 && THX1138"); }