Exemple #1
0
        public T CheckOut()
        {
            T value;

            if (available.Count == 0)
            {
                value = NewItem;
            }
            else
            {
                //Create new item
                value = available.First();
                available.Remove(value);
            }

            checkedOut.Add(value);
            onCheckOut?.Invoke(value);
            return(value);
        }
Exemple #2
0
 public void CheckIn(T value)
 {
     onCheckIn?.Invoke(value);
     available.Add(value);
     checkedOut.Remove(value);
 }