public int Calculate(Context c) { if (!_cache.ContainsKey(c)) { int result = _subject.Calculate(c); _cache.Add(c, result); return(result); } return(_cache[c]); }
public int Calculate(Context c) { if (c.SubjectAccessManager.CheckCredentials(c.UserCredentials)) { return(_subject.Calculate(c)); } else { throw new ArgumentException(); //..or other handling } }
public int Calculate(Context c) { return(_subject.Calculate(c)); }
public int Calculate(Context c) { InitSubject(); return(_subject.Calculate(c)); }
public int Calculate(Context c) { CallsToCalculate++; return(_subject.Calculate(c)); }
public void UseSubject(ISubject subject, Context c) { int result = subject.Calculate(c); }