Example usage for org.apache.commons.net.pop3 POP3Client listUniqueIdentifier

List of usage examples for org.apache.commons.net.pop3 POP3Client listUniqueIdentifier

Introduction

In this page you can find the example usage for org.apache.commons.net.pop3 POP3Client listUniqueIdentifier.

Prototype

public POP3MessageInfo listUniqueIdentifier(int messageId) throws IOException 

Source Link

Document

List the unique identifier for a message.

Usage

From source file:org.apache.james.protocols.pop3.AbstractPOP3ServerTest.java

@Test
public void testInboxWithMessages() throws Exception {
    InetSocketAddress address = new InetSocketAddress("127.0.0.1", TestUtils.getFreePort());

    ProtocolServer server = null;/*w  ww  . j  a v  a2 s .c o m*/
    try {
        String identifier = "id";
        TestPassCmdHandler handler = new TestPassCmdHandler();

        handler.add("valid", new MockMailbox(identifier, MESSAGE1, MESSAGE2));
        server = createServer(createProtocol(handler), address);
        server.bind();

        POP3Client client = createClient();
        client.connect(address.getAddress().getHostAddress(), address.getPort());

        assertThat(client.login("valid", "valid")).isTrue();
        POP3MessageInfo[] info = client.listMessages();
        assertThat(info.length).isEqualTo(2);
        assertThat(info[0].size).isEqualTo((int) MESSAGE1.meta.getSize());
        assertThat(info[1].size).isEqualTo((int) MESSAGE2.meta.getSize());
        assertThat(info[0].number).isEqualTo(1);
        assertThat(info[1].number).isEqualTo(2);

        POP3MessageInfo mInfo = client.listMessage(1);
        assertThat(mInfo.size).isEqualTo((int) MESSAGE1.meta.getSize());
        assertThat(mInfo.number).isEqualTo(1);

        // try to retrieve message that not exist
        mInfo = client.listMessage(10);
        assertThat(mInfo).isNull();

        info = client.listUniqueIdentifiers();
        assertThat(info.length).isEqualTo(2);
        assertThat(info[0].identifier).isEqualTo(identifier + "-" + MESSAGE1.meta.getUid());
        assertThat(info[1].identifier).isEqualTo(identifier + "-" + MESSAGE2.meta.getUid());
        assertThat(info[0].number).isEqualTo(1);
        assertThat(info[1].number).isEqualTo(2);

        mInfo = client.listUniqueIdentifier(1);
        assertThat(mInfo.identifier).isEqualTo(identifier + "-" + MESSAGE1.meta.getUid());
        assertThat(mInfo.number).isEqualTo(1);

        // try to retrieve message that not exist
        mInfo = client.listUniqueIdentifier(10);
        assertThat(mInfo).isNull();

        assertThat(client.logout()).isTrue();

    } finally {
        if (server != null) {
            server.unbind();
        }
    }

}