Class JPEGSegmentImageInputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.DataInput, java.lang.AutoCloseable, javax.imageio.stream.ImageInputStream

    final class JPEGSegmentImageInputStream
    extends javax.imageio.stream.ImageInputStreamImpl
    ImageInputStream implementation that filters out or rewrites certain JPEG segments.
    Version:
    $Id: JPEGSegmentImageInputStream.java,v 1.0 30.01.12 16:15 haraldk Exp$
    • Constructor Detail

      • JPEGSegmentImageInputStream

        JPEGSegmentImageInputStream​(javax.imageio.stream.ImageInputStream stream,
                                    JPEGSegmentWarningListener warningListener)
      • JPEGSegmentImageInputStream

        JPEGSegmentImageInputStream​(javax.imageio.stream.ImageInputStream stream)
    • Method Detail

      • processWarningOccured

        private void processWarningOccured​(java.lang.String warning)
      • readReplaceDuplicateSOSComponentSelectors

        private byte[] readReplaceDuplicateSOSComponentSelectors​(long length)
                                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • readReplaceDuplicateSOFnComponentIds

        private byte[] readReplaceDuplicateSOFnComponentIds​(int marker,
                                                            long length)
                                                     throws java.io.IOException
        Throws:
        java.io.IOException
      • readSegment

        private static byte[] readSegment​(int marker,
                                          int length,
                                          javax.imageio.stream.ImageInputStream stream)
                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • isAppSegmentWithId

        private static boolean isAppSegmentWithId​(java.lang.String segmentId,
                                                  javax.imageio.stream.ImageInputStream stream)
                                           throws java.io.IOException
        Throws:
        java.io.IOException
      • asNullTerminatedAsciiString

        static java.lang.String asNullTerminatedAsciiString​(byte[] data,
                                                            int offset)
      • asAsciiString

        static java.lang.String asAsciiString​(byte[] data,
                                              int offset,
                                              int length)
      • streamInit

        private void streamInit()
                         throws java.io.IOException
        Throws:
        java.io.IOException
      • isAppSegmentMarker

        static boolean isAppSegmentMarker​(int marker)
      • isSOFMarker

        static boolean isSOFMarker​(int marker)
      • repositionAsNecessary

        private void repositionAsNecessary()
                                    throws java.io.IOException
        Throws:
        java.io.IOException
      • read

        public int read()
                 throws java.io.IOException
        Specified by:
        read in interface javax.imageio.stream.ImageInputStream
        Specified by:
        read in class javax.imageio.stream.ImageInputStreamImpl
        Throws:
        java.io.IOException
      • read

        public int read​(byte[] b,
                        int off,
                        int len)
                 throws java.io.IOException
        Specified by:
        read in interface javax.imageio.stream.ImageInputStream
        Specified by:
        read in class javax.imageio.stream.ImageInputStreamImpl
        Throws:
        java.io.IOException
      • finalize

        @Deprecated
        protected void finalize()
        Deprecated.
        Overrides:
        finalize in class javax.imageio.stream.ImageInputStreamImpl