public void TestEquatableLong() { var uidl = new PopUniqueIdListing(1L, "xxx"); Assert.IsTrue (uidl.Equals(1L)); Assert.IsFalse(uidl.Equals(0L)); }
public void TestEquatableString() { var uidl = new PopUniqueIdListing(1L, "xxx"); Assert.IsTrue (uidl.Equals("xxx")); Assert.IsFalse(uidl.Equals("xxX")); Assert.IsFalse(uidl.Equals("XXX")); Assert.IsFalse(uidl.Equals("unique-id")); }
private PopMessageInfo ToMessage(PopScanListing scanList, PopUniqueIdListing? uniqueIdList) { lock (((System.Collections.ICollection)messages).SyncRoot) { PopMessageInfo message; if (messages.TryGetValue(scanList.MessageNumber, out message)) { // update values message.ScanList = scanList; message.UniqueIdList = uniqueIdList ?? message.UniqueIdList; } else { message = new PopMessageInfo(this, scanList, uniqueIdList); messages[message.MessageNumber] = message; } return message; } }
private PopCommandResult UidlCore(long? messageNumber, out PopUniqueIdListing[] uniqueIdListings) { RejectNonTransactionState(); if (messageNumber.HasValue && messageNumber.Value <= 0L) throw new ArgumentOutOfRangeException("messageNumber", messageNumber.Value, "must be non-zero positive number"); uniqueIdListings = null; using (var t = new UidlTransaction(connection)) { if (messageNumber.HasValue) t.RequestArguments["msg"] = messageNumber.Value.ToString(); if (ProcessTransaction(t).Succeeded) uniqueIdListings = t.Result.Value; return t.Result; } }
/// <summary>sends UIDL command</summary> /// <remarks>valid in transaction state</remarks> public PopCommandResult Uidl(long messageNumber, out PopUniqueIdListing uniqueIdListing) { PopUniqueIdListing[] uniqueIdListings; var ret = UidlCore(messageNumber, out uniqueIdListings); if (ret.Succeeded) uniqueIdListing = uniqueIdListings[0]; else uniqueIdListing = PopUniqueIdListing.Invalid; return ret; }
/// <summary>sends UIDL command</summary> /// <remarks>valid in transaction state</remarks> public PopCommandResult Uidl(out PopUniqueIdListing[] uniqueIdListings) { return UidlCore(null, out uniqueIdListings); }