Search in sources :

Example 11 with Blob

use of com.manydesigns.elements.blobs.Blob in project Portofino by ManyDesigns.

the class AbstractBlobField method newBlob.

protected void newBlob(final FileBean fileBean) throws IOException {
    blob = new Blob(generateNewCode()) {

        @Override
        public void dispose() {
            super.dispose();
            try {
                fileBean.delete();
            } catch (IOException e) {
                logger.warn("Could not delete file bean", e);
            }
        }
    };
    blob.setInputStream(fileBean.getInputStream());
    blob.setFilename(fileBean.getFileName());
    blob.setContentType(fileBean.getContentType());
    blob.setCreateTimestamp(new DateTime());
    blob.setPropertiesLoaded(true);
    blob.setEncryptionType(encryptionType);
    blob.setSize(fileBean.getSize());
}
Also used : Blob(com.manydesigns.elements.blobs.Blob) IOException(java.io.IOException) DateTime(org.joda.time.DateTime)

Example 12 with Blob

use of com.manydesigns.elements.blobs.Blob in project Portofino by ManyDesigns.

the class AbstractBlobField method loadBlob.

public void loadBlob(BlobManager blobManager, boolean loadContents) {
    Blob blob = getValue();
    if (blob != null && blob.getCode() != null) {
        try {
            loadBlob(blobManager, blob, loadContents);
            setBlobError(null);
        } catch (Exception e) {
            logger.debug("Could not load blob with code " + blob.getCode() + " from BlobManager " + blobManager, e);
            setBlobError(ElementsThreadLocals.getText("elements.error.field.fileblob.cannotLoad"));
        }
    }
}
Also used : Blob(com.manydesigns.elements.blobs.Blob) IOException(java.io.IOException)

Example 13 with Blob

use of com.manydesigns.elements.blobs.Blob in project Portofino by ManyDesigns.

the class FileBlobField method readFromObject.

public void readFromObject(Object obj) {
    super.readFromObject(obj);
    if (obj == null) {
        forgetBlob();
    } else {
        String code = (String) accessor.get(obj);
        if (StringUtils.isBlank(code)) {
            forgetBlob();
        } else {
            blob = new Blob(code);
            blob.setEncryptionType(encryptionType);
        }
    }
}
Also used : Blob(com.manydesigns.elements.blobs.Blob)

Aggregations

Blob (com.manydesigns.elements.blobs.Blob)13 FileBlob (com.manydesigns.elements.annotations.FileBlob)7 IOException (java.io.IOException)6 DateTime (org.joda.time.DateTime)4 BlobManager (com.manydesigns.elements.blobs.BlobManager)3 Field (com.manydesigns.elements.fields.Field)2 Operation (io.swagger.v3.oas.annotations.Operation)2 ByteArrayInputStream (java.io.ByteArrayInputStream)2 InputStream (java.io.InputStream)2 OutputStream (java.io.OutputStream)2 Date (java.util.Date)2 DiskFileItem (org.apache.commons.fileupload.disk.DiskFileItem)2 JSONObject (org.json.JSONObject)2 DatabaseBlob (com.manydesigns.elements.annotations.DatabaseBlob)1 HierarchicalBlobManager (com.manydesigns.elements.blobs.HierarchicalBlobManager)1 AbstractBlobField (com.manydesigns.elements.fields.AbstractBlobField)1 FileBlobField (com.manydesigns.elements.fields.FileBlobField)1 TextField (com.manydesigns.elements.fields.TextField)1 ClassAccessor (com.manydesigns.elements.reflection.ClassAccessor)1 MutableHttpServletRequest (com.manydesigns.elements.servlet.MutableHttpServletRequest)1