예제 #1
0
		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;
			}
		}
예제 #2
0
		public virtual string GetAsString(KeySpec spec)
		{
			return (string)Get(spec);
		}
예제 #3
0
		public virtual TernaryBool GetAsTernaryBool(KeySpec spec)
		{
			return (TernaryBool)Get(spec);
		}
예제 #4
0
		public virtual int GetAsInt(KeySpec spec)
		{
			return ((int)Get(spec));
		}
예제 #5
0
		public virtual bool GetAsBoolean(KeySpec spec)
		{
			return ((bool)Get(spec));
		}
예제 #6
0
		public virtual byte GetAsByte(KeySpec spec)
		{
			return ((byte)Get(spec));
		}
예제 #7
0
 public virtual void Put(KeySpec spec, bool value)
 {
     _delegate.Put(spec, value);
 }
예제 #8
0
 protected virtual void PutThreeValuedInt(KeySpec spec, bool flag)
 {
     _config.Put(spec, flag ? 1 : -1);
 }
예제 #9
0
		public virtual long GetAsLong(KeySpec spec)
		{
			return ((long)Get(spec));
		}
예제 #10
0
 public virtual string GetAsString(KeySpec spec)
 {
     return((string)Get(spec));
 }
예제 #11
0
 public virtual TernaryBool GetAsTernaryBool(KeySpec spec)
 {
     return((TernaryBool)Get(spec));
 }
예제 #12
0
 public virtual int GetAsInt(KeySpec spec)
 {
     return((int)Get(spec));
 }
예제 #13
0
 public virtual bool GetAsBoolean(KeySpec spec)
 {
     return((bool)Get(spec));
 }
예제 #14
0
 public virtual byte GetAsByte(KeySpec spec)
 {
     return((byte)Get(spec));
 }
예제 #15
0
 public virtual void Put(KeySpec spec, object value)
 {
     _delegate.Put(spec, value);
 }
예제 #16
0
		public virtual void Put(KeySpec spec, bool value)
		{
			_delegate.Put(spec, value);
		}
예제 #17
0
 protected virtual void PutThreeValued(KeySpec spec, bool flag)
 {
     _config.Put(spec, TernaryBool.ForBoolean(flag));
 }
예제 #18
0
		public virtual void Put(KeySpec spec, object value)
		{
			_delegate.Put(spec, value);
		}
예제 #19
0
 private TernaryBool Cascade(KeySpec spec)
 {
     return _config.GetAsTernaryBool(spec);
 }
예제 #20
0
 public virtual long GetAsLong(KeySpec spec)
 {
     return((long)Get(spec));
 }