package com.aspose.email.examples.imap; import com.aspose.email.ImapClient; import com.aspose.email.ImapPageInfo; import com.aspose.email.SecurityOptions; import com.aspose.email.system.IDisposable; import com.aspose.email.system.collections.generic.List; public class ListMessagesWithPagingSupport { public static void main(String[] args) { // Initiate ImapClient with account's user name and password ImapClient client = new ImapClient("server.domain.com", 587, "username", "password"); // Set security options client.setSecurityOptions(SecurityOptions.Auto); try { // Number of items per page int itemsPerPage = 5; List<ImapPageInfo> pages = new List<ImapPageInfo>(); ImapPageInfo pageInfo = client.listMessagesByPage(itemsPerPage); pages.addItem(pageInfo); while (!pageInfo.getLastPage()) { pageInfo = client.listMessagesByPage(pageInfo.getNextPage()); pages.addItem(pageInfo); } //Verify the count of retrieved items int retrievedItems = 0; for (ImapPageInfo folderCol : (Iterable<ImapPageInfo>) pages) retrievedItems += folderCol.getItems().size(); System.out.println("Items retrieved: " + retrievedItems); } finally { if (client != null) ((IDisposable) client).dispose(); } } }