/** * Get the language name. * * @return * The language name. */ public String getName() { return getAlpha3().getName(); }
public static String getLanguageCode(String displayLanguage) { List<LanguageCode> codes = LanguageCode.findByName(displayLanguage); return (!codes.isEmpty()) ? codes.get(0).name() : null; }
/** * Get a {@code LanguageCode} that corresponds to a given * <a href="http://en.wikipedia.org/wiki/ISO_639-1">ISO 639-1</a> code * (2-letter lowercase code) or * <a href="http://en.wikipedia.org/wiki/ISO_639-2">ISO 639-2</a> code * (3-letter lowercase code). * * <p> * This method calls {@link #getByCode(String, boolean) getByCode}{@code (code, true)}. * Note that the behavior has changed since the version 1.13. In the older versions, * this method was an alias of {@code getByCode(code, false)}. * </p> * * @param code * An <a href="http://en.wikipedia.org/wiki/ISO_639-1">ISO 639-1</a> * code (2-letter lowercase code) or an * <a href="http://en.wikipedia.org/wiki/ISO_639-2">ISO 639-2</a> code * (3-letter lowercase code). Or "undefined" (case sensitive). * Note that if the given code is one of legacy language codes * ("iw", "ji" and "in"), it is treated as its official counterpart * ("he", "yi" and "id", respectively). For example, if "in" is given, * this method returns {@link #id LanguageCode.id}. * * @return * A {@code LanguageCode} instance, or {@code null} if not found. */ public static LanguageCode getByCode(String code) { return getByCode(code, true); }
public static String getLanguage(String languageCode) { LanguageCode code = LanguageCode.getByCodeIgnoreCase(languageCode); return (code != null) ? code.getName() : null; }
code = LanguageCode.canonicalize(code, caseSensitive); LanguageCode alpha2 = LanguageCode.getByEnumName(code); return alpha2.getAlpha3();
return findByName(pattern);
/** * Determines if a string is a valid language code. * @param languageCode A language code. * @return <code>true</code> if the string is a valid 3-letter language code; * otherwise <code>false</code>. */ public static boolean validate(String languageCode) { LanguageCode code = LanguageCode.getByCodeIgnoreCase(languageCode); if(code == null) { return false; } else { return true; } }
code = LanguageCode.canonicalize(code, caseSensitive); LanguageCode alpha2 = LanguageCode.getByEnumName(code); return alpha2.getAlpha3();
public static String getLanguageNameFromPattern(String localeString) { LanguageCode code = LanguageCode.getByCodeIgnoreCase(extractLanguage(localeString)); if (code != null) { return code.getName(); } else { System.err.println("Could not get the language name for " + localeString); return Locale.forLanguageTag(extractLanguage(localeString)).getDisplayLanguage(); } }
return findByName(pattern);
final LanguageCode code = LanguageCode.getByCodeIgnoreCase(languageCode);
@Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("Text: " + text + "; Confidence Threshold: " + confidenceThreshold + "; Context: " + context + "; Language: " + languageCode.getAlpha3().toString() + "; "); return sb.toString(); }
/** * Configures a language specific configuration for parsing wikipedia pages. * @return WikiConfig */ public WikiConfig getWikiconfig(Language this) { WikiConfig config = DefaultConfigEnWp.generate(); if (this != Language._test) { // We need to capitalize the language name otherwise the locale lib cannot find it. String langName = this.name().substring(0, 1).toUpperCase() + this.name().substring(1); try { List<LanguageCode> langCodes = LanguageCode.findByName(langName); if (!langCodes.isEmpty()) { String langCode = langCodes.get(0).name(); return LanguageConfigGenerator.generateWikiConfig(langCode); } } catch (IOException | ParserConfigurationException | SAXException e) { System.out.println( String.format("Failed to create WikiConfig for language for %s, using default instead", langName) ); } } return config; } }
return new Locale(name());
/** * Get a {@code LanguageCode} that corresponds to a given * <a href="http://en.wikipedia.org/wiki/ISO_639-1">ISO 639-1</a> code * (2-letter lowercase code) or * <a href="http://en.wikipedia.org/wiki/ISO_639-2">ISO 639-2</a> code * (3-letter lowercase code). * * <p> * This method calls {@link #getByCode(String, boolean) getByCode}{@code (code, false)}. * </p> * * @param code * An <a href="http://en.wikipedia.org/wiki/ISO_639-1">ISO 639-1</a> * code (2-letter lowercase code) or an * <a href="http://en.wikipedia.org/wiki/ISO_639-2">ISO 639-2</a> code * (3-letter lowercase code). Or "undefined" (case insensitive). * Note that if the given code is one of legacy language codes * ("iw", "ji" and "in"), it is treated as its official counterpart * ("he", "yi" and "id", respectively). For example, if "in" is given, * this method returns {@link #id LanguageCode.id}. * * @return * A {@code LanguageCode} instance, or {@code null} if not found. * * @since 1.13 */ public static LanguageCode getByCodeIgnoreCase(String code) { return getByCode(code, false); }
/** * Get the language name. * * @return * The language name. */ public String getName() { return getAlpha3().getName(); }