Class ImageBinary

  • All Implemented Interfaces:
    javax.jcr.Binary

    public class ImageBinary
    extends Object
    implements javax.jcr.Binary
    This class extends a Binary class with extra information regarding images: filename, mimetype and color model. It uses the commons-imaging (formerly Sanselan) library to figure out the mimetype if none is provided. For SVG images (which Sanselan does not recognize) the mimetype auto-detection is skipped and the color model is set to UNKNOWN. Furthermore it converts YCCK and CMYK input into the RGB color model so it can be used by the JPEGImageReader. See CMS7-5074 for more info.
    • Field Detail

      • log

        public static final org.slf4j.Logger log
    • Method Detail

      • getMimeType

        public String getMimeType()
      • getFileName

        public String getFileName()
      • getColorModel

        public ColorModel getColorModel()
      • getStream

        public InputStream getStream()
                              throws javax.jcr.RepositoryException
        Specified by:
        getStream in interface javax.jcr.Binary
        Throws:
        javax.jcr.RepositoryException
      • read

        public int read​(byte[] b,
                        long position)
                 throws IOException,
                        javax.jcr.RepositoryException
        Specified by:
        read in interface javax.jcr.Binary
        Throws:
        IOException
        javax.jcr.RepositoryException
      • getSize

        public long getSize()
                     throws javax.jcr.RepositoryException
        Specified by:
        getSize in interface javax.jcr.Binary
        Throws:
        javax.jcr.RepositoryException
      • dispose

        public void dispose()
        Specified by:
        dispose in interface javax.jcr.Binary