کار با ImapClient به صورت ناهمزمان

پیام‌ها می‌توانند به صورت ناهمزمان از صندوق پست با استفاده از Aspose.Email بازیابی شوند ImapClient. این مقاله بازیابی پیام‌ها از صندوق پست به صورت ناهمزمان را نشان می‌دهد. همچنین چگونگی فهرست کردن پیام‌ها با ارائه معیارهای جستجو با استفاده از MailQuery.

بازیابی پیام‌ها به صورت ناهمزمان

کد زیر نشان می‌دهد چگونه پیام‌ها را به صورت ناهمزمان بازیابی کنیم.

// 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);
}

فهرست‌کردن پیام‌ها به‌صورت ناهمزمان با MailQuery

این MailQuery کلاسی که می‌توان برای تعیین معیارهای جستجو برای بازیابی یک فهرست مشخص از پیام‌ها به صورت ناهمزمان استفاده کرد، همان‌طور که در نمونه کد زیر نشان داده شده است.

// 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);