Операция резервного копирования и восстановления IMAP
Aspose.Email для Java предоставляет возможность резервного копирования и восстановления сообщений. Для этого API предоставляет следующие методы.
В этой статье показано, как выполнять резервное копирование и восстановление сообщений с использованием класса ImapClient.
Резервное копирование сообщений
Для резервного копирования сообщений используйте метод ImapClient.backup как показано в следующем фрагменте кода.
// Для получения полных примеров и файлов данных, пожалуйста, посетите https://github.com/aspose-email/Aspose.Email-for-Java
// Путь к каталогу файлов.
String dataDir = "data/";
// Создаем экземпляр класса ImapClient
ImapClient imapClient = new ImapClient();
// Укажите хост, имя пользователя и пароль, а также установите порт для вашего клиента
imapClient.setHost("imap.gmail.com");
imapClient.setUsername("your.username@gmail.com");
imapClient.setPassword("your.password");
imapClient.setPort(993);
imapClient.setSecurityOptions(SecurityOptions.Auto);
ImapMailboxInfo mailboxInfo = imapClient.getMailboxInfo();
ImapFolderInfo info = imapClient.getFolderInfo(mailboxInfo.getInbox().getName());
ImapFolderInfoCollection infos = new ImapFolderInfoCollection();
infos.addItem(info);
imapClient.backup(infos, dataDir + "\\ImapBackup.pst", com.aspose.email.BackupSettings.to_BackupSettings(BackupOptions.Recursive));
Восстановление сообщений
Для восстановления сообщений используйте метод ImapClient.restore как показано в следующем фрагменте кода.
// Для получения полных примеров и файлов данных, пожалуйста, посетите https://github.com/aspose-email/Aspose.Email-for-Java
// Путь к каталогу файлов.
String dataDir = "data/";
// Создаем экземпляр класса ImapClient
ImapClient imapClient = new ImapClient();
// Укажите хост, имя пользователя и пароль, а также установите порт для вашего клиента
imapClient.setHost("imap.gmail.com");
imapClient.setUsername("your.username@gmail.com");
imapClient.setPassword("your.password");
imapClient.setPort(993);
imapClient.setSecurityOptions(SecurityOptions.Auto);
ImapRestoreSettings settings = new ImapRestoreSettings();
settings.setRecursive(true);
PersonalStorage pst = PersonalStorage.fromFile(dataDir + "\\ImapBackup.pst");
imapClient.restore(pst, settings);
Операция резервного копирования и восстановления IMAP с MultiConnection
При работе с большим количеством сообщений операция резервного копирования/восстановления может занять много времени. Для этого API предоставляет поддержку нескольких соединений во время резервного копирования и восстановления. Чтобы включить режим MultiConnection, установите свойство ImapClient.UseMultiConnection в MultiConnectionMode.Enable. Следующие фрагменты кода демонстрируют операцию резервного копирования и восстановления с включенным режимом MultiConnection.
Резервное копирование сообщений с MultiConnection
Следующие фрагменты кода демонстрируют операцию резервного копирования с включенным режимом MultiConnection.
// Для получения полных примеров и файлов данных, пожалуйста, посетите https://github.com/aspose-email/Aspose.Email-for-Java
// Путь к каталогу файлов.
String dataDir = "data/";
// Создаем экземпляр класса ImapClient
ImapClient imapClient = new ImapClient();
// Укажите хост, имя пользователя и пароль, а также установите порт для вашего клиента
imapClient.setHost("imap.gmail.com");
imapClient.setUsername("your.username@gmail.com");
imapClient.setPassword("your.password");
imapClient.setPort(993);
imapClient.setSecurityOptions(SecurityOptions.Auto);
imapClient.setUseMultiConnection(MultiConnectionMode.Enable);
ImapMailboxInfo mailboxInfo = imapClient.getMailboxInfo();
ImapFolderInfo info = imapClient.getFolderInfo(mailboxInfo.getInbox().getName());
ImapFolderInfoCollection infos = new ImapFolderInfoCollection();
infos.addItem(info);
imapClient.backup(infos, dataDir + "\\ImapBackup.pst", com.aspose.email.BackupSettings.to_BackupSettings(BackupOptions.Recursive));
Восстановление сообщений с MultiConnection
Следующие фрагменты кода демонстрируют операцию восстановления с включенным режимом MultiConnection.
// Для получения полных примеров и файлов данных, пожалуйста, посетите https://github.com/aspose-email/Aspose.Email-for-Java
// Путь к каталогу файлов.
String dataDir = "data/";
// Создаем экземпляр класса ImapClient
ImapClient imapClient = new ImapClient();
// Укажите хост, имя пользователя и пароль, а также установите порт для вашего клиента
imapClient.setHost("imap.gmail.com");
imapClient.setUsername("your.username@gmail.com");
imapClient.setPassword("your.password");
imapClient.setPort(993);
imapClient.setSecurityOptions(SecurityOptions.Auto);
imapClient.setUseMultiConnection(MultiConnectionMode.Enable);
ImapRestoreSettings settings = new ImapRestoreSettings();
settings.setRecursive(true);
PersonalStorage pst = PersonalStorage.fromFile(dataDir + "\\Outlook.pst");
imapClient.restore(pst, settings);