public async Task <R2Ping> GetCurrentUserPing(string pkgFilename, CancellationToken cancelTkn) { var list = await _client.List <PingsForCurrentUser1>(cancelTkn); if (list.Count == 0) { throw Fault.NoItems("Pings for current user"); } var named = list.Where(x => x.PackageFilename == pkgFilename).ToList(); if (named.Count == 0) { throw Fault .NoMatch <R2Ping>("PkgFilename", pkgFilename); } if (named.Count > 1) { throw Fault .NonSolo($"Pings for {pkgFilename}", named.Count); } return(named.First()); }
public LeaseDTO FindLease(int leaseID) { var match = ActiveLeases.Find(leaseID, false); if (match != null) { return(match); } match = InactiveLeases.Find(leaseID, false); if (match == null) { throw Fault.NoMatch <LeaseDTO>("Id", leaseID); } return(match); }