Eliminando mensajes del servidor

Eliminando mensajes

El ImapClient La clase puede eliminar mensajes de un servidor IMAP. El ImapClient clase deleteMessage() la función se usa para eliminar mensajes. Toma el número de secuencia del mensaje o el ID único como parámetro. El ImapClient proporciona deleteMessage y deleteMessages métodos para eliminar mensajes uno a uno o varios. El siguiente fragmento de código muestra cómo eliminar un mensaje de correo electrónico con el ID de mensaje 1 de un servidor IMAP.

try (ImapClient client = new ImapClient("host", "username", "password")) {
    client.setSecurityOptions(SecurityOptions.SSLImplicit);

    // Append test message
    client.selectFolder(ImapFolderInfo.IN_BOX);

    MailMessage eml = new MailMessage("from@from.com", "to@to.com");
    eml.setSubject("Message to delete");
    eml.setBody("Hey! This Message will be deleted!");
    String emlId = client.appendMessage(eml);

    // Delete appended message
    client.deleteMessage(emlId);
    client.commitDeletes();
}

Eliminando múltiples mensajes

Se pueden eliminar múltiples correos electrónicos del buzón usando el ImapClient de la API de Aspose.Email. El deleteMessages el método proporciona varias opciones para eliminar varios mensajes del servidor usando identificadores únicos, números de secuencia o ImapMessageInfoCollection elementos. El siguiente fragmento de código muestra cómo eliminar varios mensajes.

try (ImapClient client = new ImapClient("host", "username", "password")) {
    client.selectFolder(ImapFolderInfo.IN_BOX);

    // Append test messages
    List<MailMessage> emlList = new ArrayList<>();
    for (int i = 0; i < 3; i++) {
        MailMessage eml = new MailMessage("from@from.com", "to@to.com");
        eml.setSubject("Message to delete " + i);
        eml.setBody("Hey! This Message will be deleted!");

        emlList.add(eml);
    }

    AppendMessagesResult appendMessagesResult = client.appendMessages(emlList);
    List<String> uidList = new ArrayList<>();
    for (String uid : appendMessagesResult.getSucceeded().getValues()) {
        uidList.add(uid);
    }

    // Bulk Delete appended Messages
    client.deleteMessagesByUids(uidList, true);
    client.commitDeletes();
}