1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- using System;
- using System.IO;
- namespace Ant.Service.Utilities
- {
-
-
-
- internal sealed class RetrCommand : Pop3Command<RetrResponse>
- {
- int _message;
-
-
-
-
-
- public RetrCommand(Stream stream, int message)
- : base(stream, true, Pop3State.Transaction)
- {
- if (message < 0)
- {
- throw new ArgumentOutOfRangeException("message");
- }
- _message = message;
- }
-
-
-
-
-
-
- protected override byte[] CreateRequestMessage()
- {
- return GetRequestMessage(Pop3Commands.Retr, _message.ToString(), Pop3Commands.Crlf);
- }
-
-
-
-
-
-
-
-
- protected override RetrResponse CreateResponse(byte[] buffer)
- {
- Pop3Response response = Pop3Response.CreateResponse(buffer);
- string[] messageLines = GetResponseLines(StripPop3HostMessage(buffer, response.HostMessage));
- return new RetrResponse(response, messageLines);
- }
- }
- }
|