@Override public Object put(String key, Object value) { Object current = get(key); setProperty(key, value); return current; }
@Override public String getString(String name) throws MException { Object out = getProperty(name); if (out == null) return null; return String.valueOf(out); }
@Override public String getFormatted(String name, String def, Object ... values ) { String format = getString(name, def); if (format == null) return def; // probably null return String.format(format, values); }
@Override public Object remove(Object key) { if (key == null) return null; Object current = get(key); removeProperty(String.valueOf(key)); return current; }
@Override public void remove() { try { removeProperty(currentkey); } catch (Throwable e) { log().t(e); } } }
@Override public void setNumber(String name, Number value) { if (value == null) { removeProperty(name); return; } if (value instanceof Integer) setInt(name, (Integer)value); else if (value instanceof Long) { setLong(name, (Long)value); } else if (value instanceof Float) { setFloat(name, (Float)value); } else if (value instanceof Double) { setDouble(name, (Double)value); } else throw new MRuntimeException("Unknown number class", name, value.getClass()); }
@Override public Object setValue(Object value) { Object old = null; try { old = getProperty(key); } catch (Throwable e1) { log().t(key,e1); } try { setProperty(key, value); } catch (Throwable e) { log().t(key,e); } return old; }
@Override public Set<String> keySet() { return keys(); }
@Override public boolean containsKey(Object key) { if (key == null) return false; return isProperty(String.valueOf(key)); }
IPIterator() { keys = keys().iterator(); }
@Override public Object get(Object key) { if (key == null) return null; return getProperty(String.valueOf(key)); }
@Override public String getString(String name, String def) { Object out; try { out = getProperty(name); } catch (Throwable e) { return def; } if (out == null) return def; return String.valueOf(out); }
@Override public boolean getBoolean(String name, boolean def) { Object out; try { out = getProperty(name); } catch (Throwable e) { return def; } return MCast.toboolean(out, def); }
@Override public float getFloat(String name, float def) { Object out; try { out = getProperty(name); } catch (Throwable e) { return def; } return MCast.tofloat(out, def); }
@Override public Object getValue() { try { return getProperty(key); } catch (Throwable e) { throw new MRuntimeException(e); } }
@Override public int getInt(String name, int def) { Object out; try { out = getProperty(name); } catch (Throwable e) { return def; } return MCast.toint(out,def); }
@Override public Calendar getCalendar(String name) throws MException { Object out = getProperty(name); return MCast.toCalendar(out); }
@Override public double getDouble(String name, double def) { Object out; try { out = getProperty(name); } catch (Throwable e) { return def; } return MCast.todouble(out,def); }