1f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport java.nio.charset.Charset;
2f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport java.util.ArrayList;
3fbdcfb9ea9e2a78f295834424c3f24986ea45dacBrian Carlstromimport java.util.Arrays;
4f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport java.util.Collections;
5fbdcfb9ea9e2a78f295834424c3f24986ea45dacBrian Carlstromimport java.util.HashSet;
6fbdcfb9ea9e2a78f295834424c3f24986ea45dacBrian Carlstromimport java.util.List;
7f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport java.util.Map;
8f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport java.util.SortedMap;
9f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport java.util.Set;
10f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
11f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpublic class Main {
12f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void main(String[] args) throws Exception {
13fbdcfb9ea9e2a78f295834424c3f24986ea45dacBrian Carlstrom        // These charsets must be provided; anything else is optional.
14fbdcfb9ea9e2a78f295834424c3f24986ea45dacBrian Carlstrom        List<String> standardCharsets = Arrays.asList("US-ASCII", "ISO-8859-1",
15fbdcfb9ea9e2a78f295834424c3f24986ea45dacBrian Carlstrom                "UTF-8", "UTF-16BE", "UTF-16LE", "UTF-16");
16f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
17fbdcfb9ea9e2a78f295834424c3f24986ea45dacBrian Carlstrom        SortedMap<String, Charset> all = Charset.availableCharsets();
18fbdcfb9ea9e2a78f295834424c3f24986ea45dacBrian Carlstrom        Set<String> needed = new HashSet<String>(standardCharsets);
19f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        for (Map.Entry<String, Charset> e : all.entrySet()) {
20f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            String canonicalName = e.getKey();
21fbdcfb9ea9e2a78f295834424c3f24986ea45dacBrian Carlstrom            needed.remove(canonicalName);
22f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        }
23fbdcfb9ea9e2a78f295834424c3f24986ea45dacBrian Carlstrom        System.out.println("Missing: " + needed);
24f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
25f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project}
26