126 out.println(" \"" + CLDRConverter.saveConvert(s, useJava) + "\",");
127 }
128 out.println(" }\n },");
129 } else {
130 throw new RuntimeException("unknown value type: " + value.getClass().getName());
131 }
132 } else {
133 out.println(key + "=" + CLDRConverter.saveConvert((String) map.get(key), useJava));
134 }
135 }
136 if (useJava) {
137 out.println(" };\n return data;\n }\n}");
138 }
139 }
140 }
141
142 private static final String METAINFO_CLASS = "CLDRLocaleDataMetaInfo";
143
144 @Override
145 public void generateMetaInfo(Map<String, SortedSet<String>> metaInfo) throws IOException {
146 String dirName = CLDRConverter.DESTINATION_DIR + File.separator + "sun" + File.separator + "util" + File.separator
147 + "cldr" + File.separator;
148 File dir = new File(dirName);
149 if (!dir.exists()) {
150 dir.mkdirs();
151 }
152 File file = new File(dir, METAINFO_CLASS + ".java");
153 if (!file.exists()) {
154 file.createNewFile();
155 }
156 CLDRConverter.info("Generating file " + file);
157
158 try (PrintWriter out = new PrintWriter(file, "us-ascii")) {
159 out.println(CopyrightHeaders.getOpenJDKCopyright());
160
161 out.println("package sun.util.cldr;\n\n"
162 + "import java.util.ListResourceBundle;\n"
163 + "import sun.util.locale.provider.LocaleProviderAdapter;\n"
164 + "import sun.util.locale.provider.LocaleDataMetaInfo;\n");
165 out.printf("public class %s extends ListResourceBundle implements LocaleDataMetaInfo {\n", METAINFO_CLASS);
166 out.println(" @Override\n" +
167 " protected final Object[][] getContents() {\n" +
168 " final Object[][] data = new Object[][] {");
169 for (String key : metaInfo.keySet()) {
170 out.printf(" { \"%s\",\n", key);
171 out.printf(" \"%s\" },\n", toLocaleList(metaInfo.get(key)));
172 }
173 out.println(" };\n return data;\n }\n\n");
174
175 out.println(" public LocaleProviderAdapter.Type getType() {\n" +
176 " return LocaleProviderAdapter.Type.CLDR;\n" +
177 " }\n\n");
178
179 out.println(" public String availableLanguageTags(String category) {\n" +
180 " return getString(category);\n" +
181 " };\n}");
|
126 out.println(" \"" + CLDRConverter.saveConvert(s, useJava) + "\",");
127 }
128 out.println(" }\n },");
129 } else {
130 throw new RuntimeException("unknown value type: " + value.getClass().getName());
131 }
132 } else {
133 out.println(key + "=" + CLDRConverter.saveConvert((String) map.get(key), useJava));
134 }
135 }
136 if (useJava) {
137 out.println(" };\n return data;\n }\n}");
138 }
139 }
140 }
141
142 private static final String METAINFO_CLASS = "CLDRLocaleDataMetaInfo";
143
144 @Override
145 public void generateMetaInfo(Map<String, SortedSet<String>> metaInfo) throws IOException {
146 String dirName = CLDRConverter.DESTINATION_DIR + File.separator + "sun" + File.separator + "util" +
147 File.separator + "resources" + File.separator + "cldr" + File.separator +
148 "provider" + File.separator ;
149 File dir = new File(dirName);
150 if (!dir.exists()) {
151 dir.mkdirs();
152 }
153 File file = new File(dir, METAINFO_CLASS + ".java");
154 if (!file.exists()) {
155 file.createNewFile();
156 }
157 CLDRConverter.info("Generating file " + file);
158
159 try (PrintWriter out = new PrintWriter(file, "us-ascii")) {
160 out.println(CopyrightHeaders.getOpenJDKCopyright());
161
162 out.println("package sun.util.resources.cldr.provider;\n\n"
163 + "import java.util.ListResourceBundle;\n"
164 + "import sun.util.locale.provider.LocaleProviderAdapter;\n"
165 + "import sun.util.locale.provider.LocaleDataMetaInfo;\n");
166 out.printf("public class %s extends ListResourceBundle implements LocaleDataMetaInfo {\n", METAINFO_CLASS);
167 out.println(" @Override\n" +
168 " protected final Object[][] getContents() {\n" +
169 " final Object[][] data = new Object[][] {");
170 for (String key : metaInfo.keySet()) {
171 out.printf(" { \"%s\",\n", key);
172 out.printf(" \"%s\" },\n", toLocaleList(metaInfo.get(key)));
173 }
174 out.println(" };\n return data;\n }\n\n");
175
176 out.println(" public LocaleProviderAdapter.Type getType() {\n" +
177 " return LocaleProviderAdapter.Type.CLDR;\n" +
178 " }\n\n");
179
180 out.println(" public String availableLanguageTags(String category) {\n" +
181 " return getString(category);\n" +
182 " };\n}");
|