public static IBank Open(string name, BankingTimeZone timeZone = BankingTimeZone.Local) { _slimLock.EnterWriteLock(); try { if (_Bank == null) { _Bank = new Bank(name, timeZone); } } catch { throw; } finally { if (_slimLock.IsWriteLockHeld) { _slimLock.ExitWriteLock(); } } return(_Bank); }
public static void SetTimeZone(BankingTimeZone timeZone) { _TimeZone = timeZone; }
private Bank(string name, BankingTimeZone timeZone = BankingTimeZone.Local) { this.Name = name; DateProvider.SetTimeZone(timeZone); this.Customers = new CoreList <ICustomer>(); }