package com.aggrepoint.winlet.plugin; import com.aggrepoint.winlet.ConfigProvider; /** * 缺省的配置提供 * * @author Jiangming Yang (yangjm@gmail.com) */ public class DefaultConfigProvider implements ConfigProvider { String booleanTrue; public DefaultConfigProvider() { booleanTrue = "true"; } public DefaultConfigProvider(String booleanTrue) { this.booleanTrue = booleanTrue; } @Override public String getStr(Object context, String name, String def) { return def; } @Override public String getStr(String name) { return getStr(null, name, null); } @Override public String getStr(String name, String def) { String str = getStr(name); return str == null ? def : str; } @Override public int getInt(String name) { try { return Integer.parseInt(getStr(name)); } catch (Exception e) { } return 0; } @Override public int getInt(String name, int def) { try { return Integer.parseInt(getStr(name)); } catch (Exception e) { } return def; } @Override public int getInt(Object context, String name, int def) { try { return Integer .parseInt(getStr(context, name, Integer.toString(def))); } catch (Exception e) { } return def; } @Override public long getLong(String name) { try { return Long.parseLong(getStr(name)); } catch (Exception e) { } return 0; } @Override public long getLong(String name, long def) { try { return Long.parseLong(getStr(name)); } catch (Exception e) { } return def; } @Override public long getLong(Object context, String name, long def) { try { return Long.parseLong(getStr(context, name, Long.toString(def))); } catch (Exception e) { } return def; } @Override public float getFloat(String name) { try { return Float.parseFloat(getStr(name)); } catch (Exception e) { } return 0; } @Override public float getFloat(String name, float def) { try { return Float.parseFloat(getStr(name)); } catch (Exception e) { } return def; } @Override public float getFloat(Object context, String name, float def) { try { return Float.parseFloat(getStr(context, name, Float.toString(def))); } catch (Exception e) { } return def; } @Override public double getDouble(String name) { try { return Double.parseDouble(getStr(name)); } catch (Exception e) { } return 0; } @Override public double getDouble(String name, double def) { try { return Double.parseDouble(getStr(name)); } catch (Exception e) { } return def; } @Override public double getDouble(Object context, String name, double def) { try { return Double.parseDouble(getStr(context, name, Double.toString(def))); } catch (Exception e) { } return def; } @Override public boolean getBoolean(String name) { String str = getStr(name); return str == null ? false : booleanTrue.equalsIgnoreCase(str); } @Override public boolean getBoolean(String name, boolean def) { String str = getStr(name); return str == null ? def : booleanTrue.equalsIgnoreCase(str); } @Override public boolean getBoolean(Object context, String name, boolean def) { return booleanTrue.equalsIgnoreCase(getStr(context, name, def ? booleanTrue : "")); } @Override public boolean checkStr(String name, String value) { String v = getStr(name); if (v == null && value == null) return true; if (v == null || value == null) return false; return v.equals(value); } }