public IUser this[int index] { get { return(InnerGet(index)); } set { ExceptionHelper.FalseThrow <ArgumentNullException>(value != null, "value"); this.RWLock.AcquireWriterLock(lockTimeout); try { if (Contains(value) == false) { if ((value is WfOguUser) == false) { value = new WfOguUser((IUser)value); } List[index] = value; } } finally { this.RWLock.ReleaseWriterLock(); } } }
protected override void InnerAdd(IUser user) { this.RWLock.AcquireWriterLock(lockTimeout); try { if ((user is WfOguUser) == false) { user = new WfOguUser(user); } if (Contains(user) == false) { List.Add(user); } } finally { this.RWLock.ReleaseWriterLock(); } }