CSL implements Closeable { public static Set<String> getSupportedLocales() throws IOException { Set<String> locales = getAvailableFiles("locales-", "en-US", "xml"); try { @SuppressWarnings("unchecked") List<String> baseLocales = getRunner().callMethod( "getBaseLocales", List.class); locales.addAll(baseLocales); } catch (ScriptRunnerException e) { } return locales; } CSL(ItemDataProvider itemDataProvider, String style);  CSL(ItemDataProvider itemDataProvider, String style,
            boolean experimentalMode);  CSL(ItemDataProvider itemDataProvider, AbbreviationProvider abbreviationProvider,
            String style);  CSL(ItemDataProvider itemDataProvider, String style, String lang);  CSL(ItemDataProvider itemDataProvider, AbbreviationProvider abbreviationProvider,
            String style, String lang);  CSL(ItemDataProvider itemDataProvider, LocaleProvider localeProvider,
            String style, String lang, boolean forceLang);  CSL(ItemDataProvider itemDataProvider, LocaleProvider localeProvider,
            AbbreviationProvider abbreviationProvider, String style,
            String lang, boolean forceLang);  CSL(ItemDataProvider itemDataProvider, LocaleProvider localeProvider,
            AbbreviationProvider abbreviationProvider, VariableWrapper variableWrapper,
            String style, String lang, boolean forceLang);  CSL(ItemDataProvider itemDataProvider, LocaleProvider localeProvider,
            AbbreviationProvider abbreviationProvider, VariableWrapper variableWrapper,
            String style, String lang, boolean forceLang,
            boolean experimentalMode); static List<String> getSupportedOutputFormats(); static Set<String> getSupportedStyles(); static String getCiteprocJsVersion(); static String getJavaScriptEngineName(); static String getJavaScriptEngineVersion(); static boolean supportsStyle(String style); static Set<String> getSupportedLocales(); String getIndependentParentLink(String style); void setOutputFormat(String format); void setConvertLinks(boolean convert); void setAbbreviations(String name); void registerCitationItems(String... ids); void registerCitationItems(String[] ids, boolean unsorted); Collection<CSLItemData> getRegisteredItems(); List<Citation> makeCitation(String... ids); List<Citation> makeCitation(CSLCitation citation); List<Citation> makeCitation(CSLCitation citation,
            List<CitationIDIndexPair> citationsPre,
            List<CitationIDIndexPair> citationsPost); Bibliography makeBibliography(); Bibliography makeBibliography(SelectionMode mode, CSLItemData... selection); Bibliography makeBibliography(SelectionMode mode,
            CSLItemData[] selection, CSLItemData[] quash); Bibliography makeBibliography(Predicate<CSLItemData> filter); void reset(); static Bibliography makeAdhocBibliography(String style, CSLItemData... items); static Bibliography makeAdhocBibliography(String style, String outputFormat,
            CSLItemData... items); static Bibliography makeAdhocBibliography(String style, String outputFormat,
            boolean experimentalMode, CSLItemData... items); @Override void close(); static void removeThreadLocals();  }
@Test public void getSupportedLocales() throws Exception { Set<String> ss = CSL.getSupportedLocales(); assertTrue(ss.size() > 40); assertTrue(ss.contains("de-DE")); assertTrue(ss.contains("en-US")); assertTrue(ss.contains("en-GB")); assertTrue(ss.contains("de")); assertTrue(ss.contains("en")); }