Attachments: Loading Attachments

There are a few methods that allow you to download attachments from a database:

session.advanced().attachments().get can be used to download an attachment.
session.advanced().attachments().getNames can be used to download all attachment names that are attached to a document.
session.advanced().attachments().getRevision can be used to download an attachment of a revision document.
session.advanced().attachments().exists can be used to determine if an attachment exists on a document.

Syntax

AttachmentName[] getNames(Object entity);

boolean exists(String documentId, String name);

CloseableAttachmentResult get(String documentId, String name);

CloseableAttachmentResult get(Object entity, String name);

CloseableAttachmentResult getRevision(String documentId, String name, String changeVector);

Example

try (IDocumentSession session = store.openSession()) {
    Album album = session.load(Album.class, "albums/1");

    try (CloseableAttachmentResult file1 = session
            .advanced().attachments().get(album, "001.jpg");
        CloseableAttachmentResult file2 = session
            .advanced().attachments().get("albums/1", "002.jpg")) {

        InputStream inputStream = file1
            .getData();

        AttachmentDetails attachmentDetails = file1.getDetails();
        String name = attachmentDetails.getName();
        String contentType = attachmentDetails.getContentType();
        String hash = attachmentDetails.getHash();
        long size = attachmentDetails.getSize();
        String documentId = attachmentDetails.getDocumentId();
        String changeVector = attachmentDetails.getChangeVector();
    }

    AttachmentName[] attachmentNames = session.advanced().attachments().getNames(album);
    for (AttachmentName attachmentName : attachmentNames) {

        String name = attachmentName.getName();
        String contentType = attachmentName.getContentType();
        String hash = attachmentName.getHash();
        long size = attachmentName.getSize();
    }

    boolean exists = session.advanced().attachments().exists("albums/1", "003.jpg");
}