< prev index next >

src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/IncludeLocalesPlugin.java

Print this page




 145     }
 146 
 147     @Override
 148     public boolean hasArguments() {
 149         return true;
 150     }
 151 
 152     @Override
 153     public String getArgumentsDescription() {
 154        return PluginsResourceBundle.getArgument(NAME);
 155     }
 156 
 157     @Override
 158     public void configure(Map<String, String> config) {
 159         userParam = config.get(NAME);
 160         priorityList = Arrays.stream(userParam.split(","))
 161             .map(s -> {
 162                 try {
 163                     return new Locale.LanguageRange(s);
 164                 } catch (IllegalArgumentException iae) {
 165                     throw new PluginException(String.format(
 166                         PluginsResourceBundle.getMessage(NAME + ".invalidtag"), s));
 167                 }
 168             })
 169             .collect(Collectors.toList());
 170     }
 171 
 172     @Override
 173     public void previsit(Pool resources, StringTable strings) {
 174         final Pattern p = Pattern.compile(".*((Data_)|(Names_))(?<tag>.*)\\.class");
 175         Pool.Module module = resources.getModule(MODULENAME);
 176 
 177         // jdk.localedata module validation
 178         Set<String> packages = module.getAllPackages();
 179         if (!packages.containsAll(LOCALEDATA_PACKAGES)) {
 180             throw new PluginException(PluginsResourceBundle.getMessage(NAME + ".missingpackages") +
 181                 LOCALEDATA_PACKAGES.stream()
 182                     .filter(pn -> !packages.contains(pn))
 183                     .collect(Collectors.joining(",\n\t")));
 184         }
 185 




 145     }
 146 
 147     @Override
 148     public boolean hasArguments() {
 149         return true;
 150     }
 151 
 152     @Override
 153     public String getArgumentsDescription() {
 154        return PluginsResourceBundle.getArgument(NAME);
 155     }
 156 
 157     @Override
 158     public void configure(Map<String, String> config) {
 159         userParam = config.get(NAME);
 160         priorityList = Arrays.stream(userParam.split(","))
 161             .map(s -> {
 162                 try {
 163                     return new Locale.LanguageRange(s);
 164                 } catch (IllegalArgumentException iae) {
 165                     throw new IllegalArgumentException(String.format(
 166                         PluginsResourceBundle.getMessage(NAME + ".invalidtag"), s));
 167                 }
 168             })
 169             .collect(Collectors.toList());
 170     }
 171 
 172     @Override
 173     public void previsit(Pool resources, StringTable strings) {
 174         final Pattern p = Pattern.compile(".*((Data_)|(Names_))(?<tag>.*)\\.class");
 175         Pool.Module module = resources.getModule(MODULENAME);
 176 
 177         // jdk.localedata module validation
 178         Set<String> packages = module.getAllPackages();
 179         if (!packages.containsAll(LOCALEDATA_PACKAGES)) {
 180             throw new PluginException(PluginsResourceBundle.getMessage(NAME + ".missingpackages") +
 181                 LOCALEDATA_PACKAGES.stream()
 182                     .filter(pn -> !packages.contains(pn))
 183                     .collect(Collectors.joining(",\n\t")));
 184         }
 185 


< prev index next >