public virtual object Get(KeySpec spec) { lock (this) { object value = _delegate.Get(spec); if (value == null) { value = spec.DefaultValue(); if (value != null) { _delegate.Put(spec, value); } } return value; } }
public virtual string GetAsString(KeySpec spec) { return (string)Get(spec); }
public virtual TernaryBool GetAsTernaryBool(KeySpec spec) { return (TernaryBool)Get(spec); }
public virtual int GetAsInt(KeySpec spec) { return ((int)Get(spec)); }
public virtual bool GetAsBoolean(KeySpec spec) { return ((bool)Get(spec)); }
public virtual byte GetAsByte(KeySpec spec) { return ((byte)Get(spec)); }
public virtual void Put(KeySpec spec, bool value) { _delegate.Put(spec, value); }
protected virtual void PutThreeValuedInt(KeySpec spec, bool flag) { _config.Put(spec, flag ? 1 : -1); }
public virtual long GetAsLong(KeySpec spec) { return ((long)Get(spec)); }
public virtual string GetAsString(KeySpec spec) { return((string)Get(spec)); }
public virtual TernaryBool GetAsTernaryBool(KeySpec spec) { return((TernaryBool)Get(spec)); }
public virtual int GetAsInt(KeySpec spec) { return((int)Get(spec)); }
public virtual bool GetAsBoolean(KeySpec spec) { return((bool)Get(spec)); }
public virtual byte GetAsByte(KeySpec spec) { return((byte)Get(spec)); }
public virtual void Put(KeySpec spec, object value) { _delegate.Put(spec, value); }
protected virtual void PutThreeValued(KeySpec spec, bool flag) { _config.Put(spec, TernaryBool.ForBoolean(flag)); }
private TernaryBool Cascade(KeySpec spec) { return _config.GetAsTernaryBool(spec); }
public virtual long GetAsLong(KeySpec spec) { return((long)Get(spec)); }