サーバー上でのメッセージフラグの操作

メッセージフラグの変更

メッセージフラグは以下を使用して変更できます。 changeMessageFlags() メソッド。このメソッドは2つのパラメータを受け取ります。

  1. メッセージのシーケンス番号またはユニーク ID。
  2. MessageFlag.

次のフラグを設定できます:

メッセージフラグの設定

以下のコードスニペットは、Aspose.Email を使用して IMAP サーバー上でメッセージフラグを変更する方法を示しています。

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// Mark the message as read
client.changeMessageFlags(1, ImapMessageFlags.isRead());

メッセージフラグの削除

メッセージフラグは次でも削除できます。 removeMessageFlags() メソッドです。使用方法は同様です。 changeMessageFlags() メソッドです。シーケンス番号またはユニークメッセージ ID を受け取ります。 MessageFlag以下のコードスニペットは、メッセージフラグを削除する方法を示しています。

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// Remove the message flag
client.removeMessageFlags(1, ImapMessageFlags.isRead());

カスタムフラグの設定

カスタムフラグをメッセージに設定するには、次の方法も使用できます。 ImapClient API の一部です。ImapClient AddMessageFlags メッセージにカスタムフラグを設定する機能を提供します。

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// Create a message
MailMessage message = new MailMessage("user@domain1.com", "user@domain2.com", "subject", "message");

// Append the message to mailbox
String uid = client.appendMessage(ImapFolderInfo.IN_BOX, message);

// Add custom flags to the added messge
client.addMessageFlags(uid, com.aspose.email.ImapMessageFlags.op_BitwiseOr(ImapMessageFlags.keyword("custom1"), ImapMessageFlags.keyword("custom1_0")));

// Retreive the messages for checking the presence of custom flag
client.selectFolder(ImapFolderInfo.IN_BOX);

ImapMessageInfoCollection messageInfos = client.listMessages();
for (ImapMessageInfo inf : messageInfos) {
    ImapMessageFlags[] flags = inf.getFlags().split();

    if (inf.containsKeyword("custom1"))
        System.out.println("Keyword found");
}