private AuthHandleItem FindFreeAuthHandle(AuthHandleItem.AuthHandleStatus status) { foreach (AuthHandleItem handle in _authHandles.FindAuthHandles(status)) { if (handle.AssociatedCommand == null) { return(handle); } } return(null); }
/// <summary> /// Finds the Auth handles with the specified status /// </summary> /// <remarks> /// The returned list is sorted by last used time /// </remarks> /// <param name="status"></param> /// <returns></returns> public List <AuthHandleItem> FindAuthHandles(AuthHandleItem.AuthHandleStatus status) { List <AuthHandleItem> items = new List <AuthHandleItem>(); foreach (AuthHandleItem handle in _authHandles) { if (handle.Status == status) { items.Add(handle); } } items.Sort(delegate(AuthHandleItem left, AuthHandleItem right) { return(left.LastUsed.CompareTo(right.LastUsed)); } ); return(items); }