⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 resourcemanager.java

📁 jawe的最新版本,基于Java的图形化工作流编辑器。图形化工作流编辑器 。使用JAVA语言开发
💻 JAVA
字号:
package org.enhydra.jawe;import java.net.URL;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.Locale;import java.util.Map;import java.util.MissingResourceException;import java.util.Properties;import java.util.ResourceBundle;import org.enhydra.jawe.misc.PFLocale;/** * Utility for implementing multi language support, and other manipulation with property * files. *  * @author Sasa Bojanic */public class ResourceManager {   public static final String RESOURCE_PATH = "org.enhydra.jawe.language.JaWE";   protected static Locale defaultLocale;   protected static ResourceBundle defaultResourceBoundle;   protected static Locale choosenLocale;   protected static ResourceBundle choosenResourceBundle;   protected static AdditionalResourceManager addResMgr;   static {      reconfigure();   }   /**    * Gets a language dependent string from the resource bundle.    * <p>    * Resource bundle represents the <i>property file</i>. For example, if property file    * contains something like this:<BR>    * <CENTER>menubar=file edit help</CENTER> method call    * getLanguageDependentString("menubar") will give the string <i>file edit help</i> as    * a result. <BR>    * This method reads information from property file. If can't find desired resource,    * returns <b>null</b>.    *     * @param nm name of the resource to fetch.    * @return String value of named resource.    */   public static String getLanguageDependentString(String nm) {      String str;      try {         str = choosenResourceBundle.getString(nm);      } catch (MissingResourceException mre) {         try {            str = defaultResourceBoundle.getString(nm);         } catch (MissingResourceException mre1) {            try {               str = addResMgr.getLanguageDependentString(nm);            } catch (Exception ex) {               str = null;            }         }      }      return str;   }   public static String getLanguageDependentString(AdditionalResourceManager arm,                                                   String nm) {      String str = ResourceManager.getLanguageDependentString(nm);      if (str == null && arm != null) {         str = arm.getLanguageDependentString(nm);      }      return str;   }   public static String getResourceString(Properties properties, String nm) {      String str = null;      try {         str = properties.getProperty(nm);      } catch (Exception ex) {      }      return str;   }   public static List getResourceStrings(Properties properties, String startsWith) {      return getResourceStrings(properties, startsWith, true);   }   public static List getResourceStrings(Properties properties,                                         String startsWith,                                         boolean values) {      List rStrs = new ArrayList();      int startIndex = startsWith.length();      Iterator it = properties.entrySet().iterator();      while (it.hasNext()) {         Map.Entry me = (Map.Entry) it.next();         if (((String) me.getKey()).startsWith(startsWith)) {            if (values)               rStrs.add(me.getValue());            else               rStrs.add(((String) me.getKey()).substring(startIndex));         }      }      return rStrs;   }   /**    * Gets the url from a resource string.    *     * @param key the string key to the url in the properties.    * @return the resource location.    * @see java.lang.Class#getResource    */   public static URL getResource(Properties properties, String key) {      String name = properties.getProperty(key);      if (name != null) {         URL url = ResourceManager.class.getClassLoader().getResource(name);         return url;      }      return null;   }   public static void setDefault() {      choosenResourceBundle = defaultResourceBoundle;      choosenLocale = defaultLocale;      // XMLUtil.setChoosenResources(choosenResourceBundle);   }   public static void setSystem() {      choosenLocale = Locale.getDefault();      choosenResourceBundle = ResourceBundle.getBundle(RESOURCE_PATH, choosenLocale);      // XMLUtil.setChoosenResources(choosenResourceBundle);   }   /**    * Returns the default resource bundle.    */   public static ResourceBundle getDefaultResourceBundle() {      return defaultResourceBoundle;   }   /**    * Returns the current locale.    */   public static ResourceBundle getChoosenResourceBundle() {      return choosenResourceBundle;   }   /**    * Returns the default locale.    */   public static Locale getDefaultLocale() {      return defaultLocale;   }   /**    * Returns the current locale.    */   public static Locale getChoosenLocale() {      return choosenLocale;   }   /**    * Sets the new resource and locale to be used.    */   public static void setChoosen(Locale loc) throws MissingResourceException {      Locale previousLocale = choosenLocale;      try {         choosenLocale = loc;         choosenResourceBundle = ResourceBundle.getBundle(RESOURCE_PATH, loc);         // XMLUtil.setChoosenResources(choosenResourceBundle);      } catch (Exception ex) {         choosenLocale = previousLocale;      }   }   public static void reconfigure() {      try {         // default is English         defaultLocale = new Locale("");         defaultResourceBoundle = ResourceBundle.getBundle(RESOURCE_PATH, defaultLocale);         // chose the default system settings at the start         String startingLocale = JaWEManager.getInstance().getStartingLocale();         if (startingLocale != null && startingLocale.length() > 0) {            if (!startingLocale.equals("default")) {               PFLocale pfl=PFLocale.createPFLocale(startingLocale);               choosenLocale = pfl.getLocale();            } else {               choosenLocale = defaultLocale;            }         } else {            choosenLocale = Locale.getDefault();         }         if (startingLocale != null && !startingLocale.equals("default")) {            choosenResourceBundle = ResourceBundle.getBundle(RESOURCE_PATH, choosenLocale);         } else {            choosenResourceBundle = defaultResourceBoundle;         }         Properties properties = new Properties();         properties.put("AdditionalLanguagePropertyFile.1",                        JaWEConstants.JAWE_LANGUAGE_MISC_PROPERTYFILE_NAME);         addResMgr = new AdditionalResourceManager(properties);      } catch (MissingResourceException mre) {         System.err.println(RESOURCE_PATH + ".properties not found");         System.exit(1);      }      // XMLUtil.setDefaultResources(defaultResourceBoundle);      // XMLUtil.setChoosenResources(choosenResourceBundle);   }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -