クラス VfsResource

実装されたすべてのインターフェース:
InputStreamSourceResource

public class VfsResource extends AbstractResource
JBoss VFS ベースの Resource 実装。

Spring 4.0 の時点で、このクラスは JBoss AS 6+(パッケージ org.jboss.vfs)で VFS 3.x をサポートし、特に JBoss AS7 および WildFly 8+ と互換性があります。

導入:
3.0
作成者:
Ales Justin, Juergen Hoeller, Costin Leau, Sam Brannen
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
    指定されたリソースハンドルをラップする新しい VfsResource を作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    long
    このメソッドは、InputStream 全体を読み取ってコンテンツの長さを決定します。
    createRelative(StringSE relativePath)
    この実装は、このリソースに対して相対リソースを作成できないと想定して、FileNotFoundException をスローします。
    boolean
    この実装は、説明文字列を比較します。
    boolean
    この実装は、ファイルを開くことができるかどうかをチェックし、InputStream を開くことができるかどうかにフォールバックします。
    このリソースの説明を返します。これは、リソースを操作する際のエラー出力に使用されます。
    この実装は、リソースを絶対ファイルパスに解決できないと想定して、FileNotFoundException をスローします。
    この実装は、このリソース型にファイル名がないと仮定して、常に null を返します。
    基礎となるリソースのコンテンツの InputStreamSE を返します。
    この実装は、AbstractResource.getURL() によって返された URL に基づいて URI を構築します。
    この実装は、リソースを URL に解決できないと想定して、FileNotFoundException をスローします。
    int
    この実装は、説明のハッシュコードを返します。
    boolean
    この実装は、exists(5.1 の時点で改訂された)というリソースに対して、常に true を返します。
    long
    この実装は、使用可能な場合、元となるファイルのタイムスタンプをチェックします。

    クラス org.springframework.core.io.AbstractResource から継承されたメソッド

    getFileForLastModifiedCheck, isFile, isOpen, readableChannel, toString

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, finalize, getClass, notify, notifyAll, wait, waitSE, waitSE

    インターフェース org.springframework.core.io.Resource から継承されたメソッド

    getContentAsByteArray, getContentAsString
  • コンストラクターの詳細

    • VfsResource

      public VfsResource(ObjectSE resource)
      指定されたリソースハンドルをラップする新しい VfsResource を作成します。
      パラメーター:
      resource - org.jboss.vfs.VirtualFile インスタンス (VFS API への静的な依存関係を回避するために型なし)
  • メソッドの詳細

    • getInputStream

      public InputStreamSE getInputStream() throws IOExceptionSE
      インターフェースからコピーされた説明: InputStreamSource
      基礎となるリソースのコンテンツの InputStreamSE を返します。

      通常、このような呼び出しごとに新しいストリームが作成されると考えられます。

      この要件は、JavaMail などの API を考慮する場合に特に重要です。JavaMail では、メールの添付ファイルを作成するときにストリームを複数回読み取ることができる必要があります。このようなユースケースでは、各 getInputStream() コールが新しいストリームを返す必要あります。

      戻り値:
      基になるリソースの入力ストリーム (null であってはなりません)
      例外:
      FileNotFoundExceptionSE - 基盤となるリソースが存在しない場合
      IOExceptionSE - コンテンツストリームを開けなかった場合
      関連事項:
    • exists

      public boolean exists()
      クラスからコピーされた説明: AbstractResource
      この実装は、ファイルを開くことができるかどうかをチェックし、InputStream を開くことができるかどうかにフォールバックします。

      これは、ディレクトリとコンテンツリソースの両方をカバーします。

      次で指定:
      インターフェース Resourceexists 
      オーバーライド:
      クラス AbstractResourceexists 
    • isReadable

      public boolean isReadable()
      クラスからコピーされた説明: AbstractResource
      この実装は、exists(5.1 の時点で改訂された)というリソースに対して、常に true を返します。
      次で指定:
      インターフェース ResourceisReadable 
      オーバーライド:
      クラス AbstractResourceisReadable 
      関連事項:
    • getURL

      public URLSE getURL() throws IOExceptionSE
      クラスからコピーされた説明: AbstractResource
      この実装は、リソースを URL に解決できないと想定して、FileNotFoundException をスローします。
      次で指定:
      インターフェース ResourcegetURL 
      オーバーライド:
      クラス AbstractResourcegetURL 
      例外:
      IOExceptionSE - リソースを URL として解決できない場合、つまりリソースが記述子として使用できない場合
    • getURI

      public URISE getURI() throws IOExceptionSE
      クラスからコピーされた説明: AbstractResource
      この実装は、AbstractResource.getURL() によって返された URL に基づいて URI を構築します。
      次で指定:
      インターフェース ResourcegetURI 
      オーバーライド:
      クラス AbstractResourcegetURI 
      例外:
      IOExceptionSE - リソースを URI として解決できない場合、つまりリソースが記述子として使用できない場合
    • getFile

      public FileSE getFile() throws IOExceptionSE
      クラスからコピーされた説明: AbstractResource
      この実装は、リソースを絶対ファイルパスに解決できないと想定して、FileNotFoundException をスローします。
      次で指定:
      インターフェース ResourcegetFile 
      オーバーライド:
      クラス AbstractResourcegetFile 
      例外:
      FileNotFoundExceptionSE - リソースが絶対ファイルパスとして解決できない場合、つまりリソースがファイルシステムで使用できない場合
      IOExceptionSE - 一般的な解決 / 読み取りエラーの場合
      関連事項:
    • contentLength

      public long contentLength() throws IOExceptionSE
      クラスからコピーされた説明: AbstractResource
      このメソッドは、InputStream 全体を読み取ってコンテンツの長さを決定します。

      InputStreamResource のカスタムサブクラスの場合、このメソッドをより最適な実装でオーバーライドすることを強くお勧めします。ファイルの長さをチェックするか、ストリームを 1 回しか読み取れない場合は単に -1 を返します。

      次で指定:
      インターフェース ResourcecontentLength 
      オーバーライド:
      クラス AbstractResourcecontentLength 
      例外:
      IOExceptionSE - リソースを解決できない場合 (ファイルシステム内、または他の既知の物理リソース型として)
      関連事項:
    • lastModified

      public long lastModified() throws IOExceptionSE
      クラスからコピーされた説明: AbstractResource
      この実装は、使用可能な場合、元となるファイルのタイムスタンプをチェックします。
      次で指定:
      インターフェース ResourcelastModified 
      オーバーライド:
      クラス AbstractResourcelastModified 
      例外:
      IOExceptionSE - リソースを解決できない場合 (ファイルシステム内、または他の既知の物理リソース型として)
      関連事項:
    • createRelative

      public Resource createRelative(StringSE relativePath) throws IOExceptionSE
      クラスからコピーされた説明: AbstractResource
      この実装は、このリソースに対して相対リソースを作成できないと想定して、FileNotFoundException をスローします。
      次で指定:
      インターフェース ResourcecreateRelative 
      オーバーライド:
      クラス AbstractResourcecreateRelative 
      パラメーター:
      relativePath - 相対パス (このリソースに関連して)
      戻り値:
      相対リソースのリソースハンドル
      例外:
      IOExceptionSE - 相対リソースを決定できない場合
    • getFilename

      public StringSE getFilename()
      クラスからコピーされた説明: AbstractResource
      この実装は、このリソース型にファイル名がないと仮定して、常に null を返します。
      次で指定:
      インターフェース ResourcegetFilename 
      オーバーライド:
      クラス AbstractResourcegetFilename 
    • getDescription

      public StringSE getDescription()
      インターフェースからコピーされた説明: Resource
      このリソースの説明を返します。これは、リソースを操作する際のエラー出力に使用されます。

      実装では、toString メソッドからこの値を返すことも推奨されます。

      関連事項:
    • equals

      public boolean equals(@Nullable ObjectSE other)
      クラスからコピーされた説明: AbstractResource
      この実装は、説明文字列を比較します。
      オーバーライド:
      クラス AbstractResourceequals 
      関連事項:
    • hashCode

      public int hashCode()
      クラスからコピーされた説明: AbstractResource
      この実装は、説明のハッシュコードを返します。
      オーバーライド:
      クラス AbstractResourcehashCode 
      関連事項: