عملیات پشتیبان‌گیری و بازیابی IMAP

Aspose.Email برای Java قابلیت پشتیبان‌گیری و بازیابی پیام‌ها را فراهم می‌کند. برای این منظور، API روش‌های زیر را ارائه می‌دهد.

این مقاله نشان می‌دهد چگونه پیام‌ها را با استفاده از ImapClient کلاس.

پشتیبان‌گیری از پیام‌ها

برای پشتیبان‌گیری از پیام‌ها، از ImapClient.backup متد همان‌طور که در قطعه کد زیر نشان داده شده است.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// The path to the File directory.
String dataDir = "data/";
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();

// Specify host, username and password, and set port for your client
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 متد همان‌طور که در قطعه کد زیر نشان داده شده است.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// The path to the File directory.
String dataDir = "data/";
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();

// Specify host, username and password, and set port for your client
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 فعال شده نشان می‌دهند.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// The path to the File directory.
String dataDir = "data/";
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();

// Specify host, username and password, and set port for your client
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 فعال شده نشان می‌دهند.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// The path to the File directory.
String dataDir = "data/";
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();

// Specify host, username and password, and set port for your client
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);