Click or drag to resize
MimeKit

Pop3ClientGetStreamsAsync(IListInt32, Boolean, CancellationToken, ITransferProgress) Method

Asynchronously get the message or header streams at the specified indexes.

Namespace: MailKit.Net.Pop3
Assembly: MailKit (in MailKit.dll) Version: 4.7.1
Syntax
C#
public override Task<IList<Stream>> GetStreamsAsync(
	IList<int> indexes,
	bool headersOnly = false,
	CancellationToken cancellationToken = default,
	ITransferProgress progress = null
)

Parameters

indexes  IListInt32
The indexes of the messages.
headersOnly  Boolean  (Optional)
true if only the headers should be retrieved; otherwise, false.
cancellationToken  CancellationToken  (Optional)
The cancellation token.
progress  ITransferProgress  (Optional)
The progress reporting mechanism.

Return Value

TaskIListStream
The message or header streams.

Implements

IMailSpoolGetStreamsAsync(IListInt32, Boolean, CancellationToken, ITransferProgress)
IMailSpoolGetStreamsAsync(IListInt32, Boolean, CancellationToken, ITransferProgress)
Exceptions
ExceptionCondition
ArgumentNullExceptionindexes is null.
ArgumentException One or more of the indexes are invalid.
ObjectDisposedException The Pop3Client has been disposed.
ServiceNotConnectedException The Pop3Client is not connected.
ServiceNotAuthenticatedException The Pop3Client is not authenticated.
NotSupportedException The POP3 server does not support the UIDL extension.
OperationCanceledException The operation was canceled via the cancellation token.
IOException An I/O error occurred.
Pop3CommandException The POP3 command failed.
Pop3ProtocolException A POP3 protocol error occurred.
Remarks

Get the message or header streams at the specified indexes.

If the POP3 server supports the Pipelining extension, this method will likely be more efficient than using GetStream(Int32, Boolean, CancellationToken, ITransferProgress) for each message because it will batch the commands to reduce latency.

See Also