public IPadInt store(int uid) { lock (_stateLockObj) { if (isFail) { Console.WriteLine("[!STORE] Error: DataServer " + name + " is set to [Fail] mode!"); Console.WriteLine("---"); while (true) { ; } //throw new RemotingException("Server is in Fail Mode"); } else if (isFreeze) { lock (SingletonCounter.Instance) { SingletonCounter.Instance.incrementLockCounter(); Monitor.Wait(SingletonCounter.Instance); } } } if (!padInts.Contains(uid)) { PadInt obj = new PadInt(uid, this); padInts.Add(uid, obj); if (_isPrimary) { _slaveServer.store(uid); } Console.WriteLine("[STORE] DataServer " + name + " stored PadInt " + uid); Console.WriteLine("---"); return(obj); } return(null); }