Praca z ImapClient asynchronicznie

Wiadomości mogą być pobrane z mailboxa asynchronicznie przy użyciu Aspose.Email ImapClient. Ten artykuł pokazuje pobieranie wiadomości z skrzynki pocztowej asynchronicznie. Artykuł również pokazuje, jak wyświetlić wiadomości, podając kryteria wyszukiwania za pomocą MailQuery.

Pobieranie wiadomości asynchronicznie

Poniższy fragment kodu pokazuje, jak pobrać wiadomości asynchronicznie.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// Connect and log in to IMAP
try (ImapClient client = new ImapClient("host", "username", "password")) {
    client.selectFolder("Issues/SubFolder");
    ImapMessageInfoCollection messages = client.listMessages();
    IAsyncResult ar = client.beginFetchMessage(messages.get_Item(0).getSequenceNumber());
    MailMessage message = client.endFetchMessage(ar);
}

Listuj wiadomości asynchronicznie przy użyciu MailQuery

Ten MailQuery klasa może być użyta do określenia kryteriów wyszukiwania w celu asynchronicznego pobrania określonej listy wiadomości, jak pokazano w poniższym przykładzie kodu.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
ImapQueryBuilder builder = new ImapQueryBuilder();
builder.getSubject().contains("Subject");
MailQuery query = builder.getQuery();
IAsyncResult asyncResult = client.beginListMessages(query);
ImapMessageInfoCollection messages = client.endListMessages(asyncResult);