モジュール java.desktop
パッケージ javax.imageio.stream

クラスMemoryCacheImageInputStream

java.lang.Object
javax.imageio.stream.ImageInputStreamImpl
javax.imageio.stream.MemoryCacheImageInputStream
すべての実装されたインタフェース:
Closeable, DataInput, AutoCloseable, ImageInputStream

public class MemoryCacheImageInputStream extends ImageInputStreamImpl
通常のInputStreamから入力を取得するImageInputStreamの実装です。 メモリー・バッファには、少なくとも破棄位置と現在の読込み位置との間のデータがキャッシュされます。

一般的に、通常のInputStreamから読み込む場合は、FileCacheImageInputStreamを使用することをお薦めします。 このクラスは、書込み可能な一時ファイルを作成できない場合のために用意されています。

  • コンストラクタの詳細

    • MemoryCacheImageInputStream

      public MemoryCacheImageInputStream(InputStream stream)
      指定されたInputStreamから読み込むMemoryCacheImageInputStreamを構築します。
      パラメータ:
      stream - 読込み元のInputStream
      例外:
      IllegalArgumentException - streamnullの場合。
  • メソッドの詳細

    • read

      public int read() throws IOException
      クラスからコピーされた説明: ImageInputStreamImpl
      ストリームから1バイトを読み込み、それを0から255までのintとして返します。 EOFに達すると-1を返します。

      サブクラスでこのメソッドを実装する必要があります。 サブクラス実装で終了する前にストリーム位置を更新します。

      ストリーム内のビット・オフセットは、読込みを行う前に0にリセットする必要があります。

      定義:
      read、インタフェース: ImageInputStream
      定義:
      read、クラス: ImageInputStreamImpl
      戻り値:
      ストリーム内の次のバイトの値。または、EOFに達した場合は-1
      例外:
      IOException - ストリームが閉じられている場合。
    • read

      public int read(byte[] b, int off, int len) throws IOException
      クラスからコピーされた説明: ImageInputStreamImpl
      ストリームから最大lenバイトを読み込み、bにインデックスoffから格納します。 ストリームの終わりに達したためにバイトを読み込めない場合は、-1を返します。

      ストリーム内のビット・オフセットは、読込みを行う前に0にリセットする必要があります。

      サブクラスでこのメソッドを実装する必要があります。 サブクラス実装で終了する前にストリーム位置を更新します。

      定義:
      read、インタフェース: ImageInputStream
      定義:
      read、クラス: ImageInputStreamImpl
      パラメータ:
      b - 書き込まれるバイト配列。
      off - 書込み先のb内の開始位置。
      len - 読み込む最大バイト数。
      戻り値:
      実際に読み込まれたバイト数、またはEOFを示す-1
      例外:
      IOException - 入出力エラーが発生した場合。
    • isCached

      public boolean isCached()
      後方へのシークを可能にするために、このImageInputStreamがデータをキャッシュするため、trueが返されます。
      定義:
      isCached、インタフェース: ImageInputStream
      オーバーライド:
      isCached、クラス: ImageInputStreamImpl
      戻り値:
      true
      関連項目:
      isCachedMemory(), isCachedFile()
    • isCachedFile

      public boolean isCachedFile()
      このImageInputStreamはファイル・キャッシュを維持しないため、falseが返されます。
      定義:
      isCachedFile、インタフェース: ImageInputStream
      オーバーライド:
      isCachedFile、クラス: ImageInputStreamImpl
      戻り値:
      false
      関連項目:
      isCached(), isCachedMemory()
    • isCachedMemory

      public boolean isCachedMemory()
      このImageInputStreamはメイン・メモリー・キャッシュを維持するため、trueが返されます。
      定義:
      isCachedMemory、インタフェース: ImageInputStream
      オーバーライド:
      isCachedMemory、クラス: ImageInputStreamImpl
      戻り値:
      true
      関連項目:
      isCached(), isCachedFile()
    • close

      public void close() throws IOException
      このMemoryCacheImageInputStreamを閉じてキャッシュを解放します。 ソースInputStreamは閉じられません。
      例外:
      IOException - 入出力エラーが発生した場合。
    • finalize

      @Deprecated(since="9") protected void finalize() throws Throwable
      非推奨。
      finalizeメソッドは推奨されていません。 クリーンアップを実行するためにfinalizeをオーバーライドするサブクラスは、代替クリーンアップ・メカニズムを使用し、オーバーライドするfinalizeメソッドを削除するように変更する必要があります。 finalizeメソッドをオーバーライドする場合、実装では、super.finalize()Object.finalize()の説明に従って呼び出されることを明示的に確認する必要があります。 移行オプションの詳細については、Object.finalize()の仕様を参照してください。
      ガベージ・コレクションの前にこのオブジェクトをファイナライズします。 closeメソッドを呼び出して、開いている入力ソースをすべて閉じます。 このメソッドを、アプリケーション・コードから呼び出してはいけません。
      オーバーライド:
      finalize、クラス: ImageInputStreamImpl
      例外:
      Throwable - スーパー・クラスのファイナライズ時にエラーが発生した場合。
      関連項目:
      WeakReference, PhantomReference