internal override void ReadResponse(Pop3ResponseReader reader) { var values = reader.CurrentLine.Split(' '); MessageCount = int.Parse(values[1]); MailboxSize = double.Parse(values[2]); TakeSnapshot(reader); }
public static Pop3ServerCapability ReadCapability(this Pop3ResponseReader reader) { var capabilty = new Pop3ServerCapability(); while (true) { reader.ReadNextLine(); if (reader.IsCompleted) { break; } if (reader.CurrentLine.StartsWith("SASL")) { var values = reader.CurrentLine.Substring(5).Split(' '); foreach (var value in values) { capabilty.Store(value); } } capabilty.Store(reader.CurrentLine); } return(capabilty); }
internal virtual void ReadResponse(Pop3ResponseReader reader) { while (!IsPositive || !IsNegative) { reader.ReadNextLine(); } TakeSnapshot(reader); }
internal void TakeSnapshot(Pop3ResponseReader reader) { IsPositive = reader.IsPositive; IsNegative = reader.IsNegative; if (IsNegative) { ReasonForFailure = reader.CurrentLine; } }