パッケージ org.opengion.cloud

# クラス CloudFileOperation

java.lang.Object
java.io.File
org.opengion.fukurou.model.FileOperation
org.opengion.cloud.CloudFileOperation

すべての実装されたインタフェース:
  `Serializable`, `Comparable<File>`

直系の既知のサブクラス:
  `FileOperation_AWS`, `FileOperationInfo`

public abstract class CloudFileOperation extends FileOperation
クラウドストレージ対応用の抽象クラスです。 各ベンダーのストレージに対応したプラグインを作成する場合はこのクラスを継承してください。

関連項目:
  - 直列化された形式
変更履歴:
  5.10.8.0 (2019/02/01) 新規作成, 5.10.9.0 (2019/03/01) 変更対応, 8.0.0.2 (2021/10/15) fukurou.model → cloud にパッケージ移動
機能分類
  ファイル操作
導入されたバージョン:
  JDK7.0

- ## フィールドの概要

  フィールド
  修飾子とタイプ
  フィールド
  説明
  `protected final String`
  `conBucket`
  バケット名
  `protected final String`
  `conPath`
  パス

  ### クラスから継承されたフィールド org.opengion.fukurou.model.FileOperation

  `LOCAL`

  ### クラスから継承されたフィールド java.io.File

  `pathSeparator, pathSeparatorChar, separator, separatorChar`

- ## コンストラクタの概要

  コンストラクタ
  コンストラクタ
  説明
  `CloudFileOperation(String bucket, String inPath)`
  コンストラクタ

- ## メソッドの概要

  修飾子とタイプ
  メソッド
  説明
  `boolean`
  `canExecute()`
  canExecuteの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `boolean`
  `canRead()`
  読み取り可能フラグ(Fileｸﾗｽ) ※クラウドストレージの場合は、 存在すればtrueを返します。
  `boolean`
  `canWrite()`
  書き込み可能フラグ(Fileｸﾗｽ) ※クラウドストレージの場合は、 存在すればtrueを返します。
  `abstract boolean`
  `copy(String afPath)`
  ファイルコピー ファイルを指定先にコピーします。
  `boolean`
  `createNewFile()`
  新規ファイル作成(Fileｸﾗｽ) 既にファイルが存在しない場合のみ、 空のファイルを作成します。
  `abstract boolean`
  `delete()`
  ファイル削除 ファイルを削除します。
  `void`
  `deleteOnExit()`
  deleteOnExitの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `boolean`
  `exists()`
  存在チェック(Fileｸﾗｽ) 存在する場合は、trueを返します。
  `protected File[]`
  `filter(List<File> list, FileFilter filter)`
  フィルター処理 フィルター処理を行います。
  `File`
  `getAbsoluteFile()`
  getAbsoluteFileの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `String`
  `getAbsolutePath()`
  絶対パス取得(Fileｸﾗｽ) 絶対パスを取得します。
  `FileOperation`
  `getCanonicalFile()`
  カノニカルファイル情報の取得 ※ローカルサーバのみ通常ファイルと、 カノニカルファイルで異なります。
  `long`
  `getFreeSpace()`
  getFreeSpaceの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `String`
  `getName()`
  ファイル名取得(Fileｸﾗｽ) ファイル名を取得します。
  `String`
  `getParent()`
  親のパス取得(Fileｸﾗｽ) 親のパスを取得します。
  `abstract File`
  `getParentFile()`
  親ディレクトリの取得(Fileｸﾗｽ) 親のディレクトリ情報を返します。
  `String`
  `getPath()`
  ファイルパス取得(Fileｸﾗｽ) ファイルパスを取得します。
  `long`
  `getTotalSpace()`
  getTotalSpaceの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `long`
  `getUsableSpace()`
  getUsableSpaceの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `boolean`
  `isAbsolute()`
  isAbsoluteの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `boolean`
  `isCloud()`
  保存先のクラウド判定。
  `abstract boolean`
  `isDirectory()`
  ディレクトリ判定(Fileｸﾗｽ) ディレクトリの場合は、trueを返します。
  `abstract boolean`
  `isFile()`
  ファイル判定(Fileｸﾗｽ) ファイルの場合は、trueを返します。
  `boolean`
  `isHidden()`
  隠しファイルフラグ(Fileｸﾗｽ) ※クラウドストレージの場合は、 必ずfalseを返します。
  `abstract long`
  `lastModified()`
  最終更新時刻取得(Fileｸﾗｽ) 最終更新時刻を返します。
  `abstract long`
  `length()`
  ファイルサイズ取得(Fileｸﾗｽ) ファイルサイズを返します。
  `abstract File[]`
  `listFiles(FileFilter filter)`
  一覧取得(Fileｸﾗｽ) パスのファイルと、ディレクトリ一覧を取得します。
  `boolean`
  `mkdir()`
  ディレクトリの作成(Fileｸﾗｽ) ※１つのディレクトリのみ作成します。
  `boolean`
  `mkdirs()`
  ディレクトリの作成(複数)(Fileｸﾗｽ) ※複数のディレクトリを作成します。
  `boolean`
  `move(String afPath)`
  ファイル移動 ファイルを指定先に移動します。
  `abstract InputStream`
  `read()`
  データ読み込み データを読み込み、InputStreamを返します。
  `boolean`
  `renameTo(File dest)`
  ファイル名変更(Fileｸﾗｽ) 指定のファイル情報のファイル名に変更します。
  `protected String`
  `rTrim(String str, char chr)`
  右側トリム処理 右側の文字が、指定の文字の場合、除去します。
  `protected String`
  `setDirTail(String path)`
  ディレクトリ用のパス編集 後尾に「/」がない場合は、付与します。
  `boolean`
  `setLastModified(long time)`
  最終更新時刻の更新(Fileｸﾗｽ) 最終更新時刻の更新を行います。
  `boolean`
  `setReadable(boolean readable)`
  setReadableの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `boolean`
  `setReadable(boolean readable, boolean ownerOnly)`
  setReadableの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `boolean`
  `setWritable(boolean writable)`
  setWritableの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `boolean`
  `setWritable(boolean writable, boolean ownerOnly)`
  canExecuteの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `protected byte[]`
  `toByteArray(InputStream is)`
  ストリームの変換処理 InputStreamをbyte[]に変換。
  `String`
  `toString()`
  toString(Fileｸﾗｽ) パスを返します。
  `URI`
  `toURI()`
  canExecuteの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
  `abstract void`
  `write(File inFile)`
  書き込み処理(評価用) Fileを書き込みます。
  `abstract void`
  `write(InputStream is)`
  データ書き込み InputStreamのデータを書き込みます。

  ### クラスから継承されたメソッド org.opengion.fukurou.model.FileOperation

  `getBucket, getPlugin`

  ### クラスから継承されたメソッド java.io.File

  `compareTo, createTempFile, createTempFile, equals, getCanonicalPath, hashCode, list, list, listFiles, listFiles, listRoots, setExecutable, setExecutable, setReadOnly, toPath, toURL`

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

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## フィールド詳細

  - ### conPath

    protected final String conPath
    パス

  - ### conBucket

    protected final String conBucket
    バケット名

- ## コンストラクタの詳細

  - ### CloudFileOperation

    public CloudFileOperation(String bucket, String inPath)
    コンストラクタ
    パラメータ:
      `bucket` - バケット名
      `inPath` - ファイルパス

- ## メソッドの詳細

  - ### write

    public abstract void write(File inFile) throws IOException
    書き込み処理(評価用) Fileを書き込みます。
    オーバーライド:
      `write` クラス内 `FileOperation`
    パラメータ:
      `inFile` - 書き込みFile
    例外:
      `IOException` - ファイル関連エラー情報
    変更履歴:
      8.0.0.1 (2021/10/08) 新規追加

  - ### write

    public abstract void write(InputStream is) throws IOException
    データ書き込み InputStreamのデータを書き込みます。
    オーバーライド:
      `write` クラス内 `FileOperation`
    パラメータ:
      `is` - 書き込みデータのInputStream
    例外:
      `IOException` - IO関連のエラー情報

  - ### read

    public abstract InputStream read() throws FileNotFoundException
    データ読み込み データを読み込み、InputStreamを返します。
    オーバーライド:
      `read` クラス内 `FileOperation`
    戻り値:
      読み込みデータのInputStream
    例外:
      `FileNotFoundException` - ファイル非存在エラー情報

  - ### delete

    public abstract boolean delete()
    ファイル削除 ファイルを削除します。
    オーバーライド:
      `delete` クラス内 `File`
    戻り値:
      成否フラグ

  - ### copy

    public abstract boolean copy(String afPath)
    ファイルコピー ファイルを指定先にコピーします。
    オーバーライド:
      `copy` クラス内 `FileOperation`
    パラメータ:
      `afPath` - コピー先
    戻り値:
      成否フラグ

  - ### move

    public boolean move(String afPath)
    ファイル移動 ファイルを指定先に移動します。
    オーバーライド:
      `move` クラス内 `FileOperation`
    パラメータ:
      `afPath` - 移動先
    戻り値:
      成否フラグ

  - ### length

    public abstract long length()
    ファイルサイズ取得(Fileｸﾗｽ) ファイルサイズを返します。
    オーバーライド:
      `length` クラス内 `File`
    戻り値:
      ファイルサイズ
    関連項目:
      - `File.isFile()`

  - ### lastModified

    public abstract long lastModified()
    最終更新時刻取得(Fileｸﾗｽ) 最終更新時刻を返します。
    オーバーライド:
      `lastModified` クラス内 `File`
    戻り値:
      最終更新時刻
    関連項目:
      - `File.lastModified()`

  - ### isFile

    public abstract boolean isFile()
    ファイル判定(Fileｸﾗｽ) ファイルの場合は、trueを返します。
    オーバーライド:
      `isFile` クラス内 `File`
    戻り値:
      ファイルフラグ
    関連項目:
      - `File.isFile()`

  - ### isDirectory

    public abstract boolean isDirectory()
    ディレクトリ判定(Fileｸﾗｽ) ディレクトリの場合は、trueを返します。
    オーバーライド:
      `isDirectory` クラス内 `File`
    戻り値:
      ディレクトリフラグ
    関連項目:
      - `File.isDirectory()`

  - ### listFiles

    public abstract File[] listFiles(FileFilter filter)
    一覧取得(Fileｸﾗｽ) パスのファイルと、ディレクトリ一覧を取得します。
    オーバーライド:
      `listFiles` クラス内 `File`
    パラメータ:
      `filter` - ﾌｧｲﾙﾌｨﾙﾀｰ
    戻り値:
      ファイルとティレクトリ一覧
    関連項目:
      - `File.listFiles(FileFilter)`

  - ### getParentFile

    public abstract File getParentFile()
    親ディレクトリの取得(Fileｸﾗｽ) 親のディレクトリ情報を返します。
    オーバーライド:
      `getParentFile` クラス内 `File`
    戻り値:
      親のディレクトリ
    関連項目:
      - `File.getParentFile()`

  - ### getPath

    public String getPath()
    ファイルパス取得(Fileｸﾗｽ) ファイルパスを取得します。
    オーバーライド:
      `getPath` クラス内 `File`
    戻り値:
      設定パス
    関連項目:
      - `File.getPath()`

  - ### getAbsolutePath

    public String getAbsolutePath()
    絶対パス取得(Fileｸﾗｽ) 絶対パスを取得します。
    オーバーライド:
      `getAbsolutePath` クラス内 `File`
    戻り値:
      絶対パス
    関連項目:
      - `File.getAbsolutePath()`

  - ### getName

    public String getName()
    ファイル名取得(Fileｸﾗｽ) ファイル名を取得します。
    オーバーライド:
      `getName` クラス内 `File`
    戻り値:
      名称
    関連項目:
      - `File.getName()`

  - ### getParent

    public String getParent()
    親のパス取得(Fileｸﾗｽ) 親のパスを取得します。
    オーバーライド:
      `getParent` クラス内 `File`
    戻り値:
      親のパス
    関連項目:
      - `File.getParent()`

  - ### exists

    public boolean exists()
    存在チェック(Fileｸﾗｽ) 存在する場合は、trueを返します。
    オーバーライド:
      `exists` クラス内 `File`
    戻り値:
      存在フラグ
    関連項目:
      - `File.exists()`

  - ### mkdir

    public boolean mkdir()
    ディレクトリの作成(Fileｸﾗｽ) ※１つのディレクトリのみ作成します。 クラウドストレージにはディレクトリの概念が無いため、 作成は行わず、trueを返します。
    オーバーライド:
      `mkdir` クラス内 `File`
    戻り値:
      成否フラグ
    関連項目:
      - `File.mkdir()`

  - ### mkdirs

    public boolean mkdirs()
    ディレクトリの作成(複数)(Fileｸﾗｽ) ※複数のディレクトリを作成します。 クラウドストレージにはディレクトリの概念が無いため、 作成は行わず、trueを返します。
    オーバーライド:
      `mkdirs` クラス内 `File`
    戻り値:
      成否フラグ
    関連項目:
      - `File.mkdirs()`

  - ### renameTo

    public boolean renameTo(File dest)
    ファイル名変更(Fileｸﾗｽ) 指定のファイル情報のファイル名に変更します。
    オーバーライド:
      `renameTo` クラス内 `File`
    パラメータ:
      `dest` - 変更後のファイル情報
    戻り値:
      成否フラグ
    関連項目:
      - `File.renameTo(File)`

  - ### canWrite

    public boolean canWrite()
    書き込み可能フラグ(Fileｸﾗｽ) ※クラウドストレージの場合は、 存在すればtrueを返します。
    オーバーライド:
      `canWrite` クラス内 `File`
    戻り値:
      書き込み可能フラグ
    関連項目:
      - `File.canWrite()`

  - ### canRead

    public boolean canRead()
    読み取り可能フラグ(Fileｸﾗｽ) ※クラウドストレージの場合は、 存在すればtrueを返します。
    オーバーライド:
      `canRead` クラス内 `File`
    戻り値:
      読み取り可能フラグ
    関連項目:
      - `File.canRead()`

  - ### isHidden

    public boolean isHidden()
    隠しファイルフラグ(Fileｸﾗｽ) ※クラウドストレージの場合は、 必ずfalseを返します。
    オーバーライド:
      `isHidden` クラス内 `File`
    戻り値:
      隠しファイルフラグ
    関連項目:
      - `File.isHidden()`

  - ### createNewFile

    public boolean createNewFile() throws IOException
    新規ファイル作成(Fileｸﾗｽ) 既にファイルが存在しない場合のみ、 空のファイルを作成します。
    オーバーライド:
      `createNewFile` クラス内 `File`
    戻り値:
      指定されたファイルが存在せず、ファイルの生成に成功した場合はtrue、示されたファイルがすでに存在する場合はfalse
    例外:
      `IOException` - ファイル関連エラー情報
    関連項目:
      - `File.createNewFile()`

  - ### setLastModified

    public boolean setLastModified(long time)
    最終更新時刻の更新(Fileｸﾗｽ) 最終更新時刻の更新を行います。 ※クラウドストレージの場合は、 最終更新時刻の更新を行えません。
    オーバーライド:
      `setLastModified` クラス内 `File`
    パラメータ:
      `time` - 更新する最終更新時刻
    戻り値:
      成否フラグ
    関連項目:
      - `File.setLastModified(long)`

  - ### getCanonicalFile

    public FileOperation getCanonicalFile() throws IOException
    カノニカルファイル情報の取得 ※ローカルサーバのみ通常ファイルと、 カノニカルファイルで異なります。
    オーバーライド:
      `getCanonicalFile` クラス内 `FileOperation`
    戻り値:
      カノニカルファイル情報
    例外:
      `IOException` - ファイル関連エラー情報
    関連項目:
      - `File.getCanonicalFile()`

  - ### toString

    public String toString()
    toString(Fileｸﾗｽ) パスを返します。 Fileクラスの拡張なので、path のみを返します。
    オーバーライド:
      `toString` クラス内 `File`
    戻り値:
      ファイルパス
    関連項目:
      - `File.toString()`

  - ### setDirTail

    protected String setDirTail(String path)
    ディレクトリ用のパス編集 後尾に「/」がない場合は、付与します。
    パラメータ:
      `path` - パス
    戻り値:
      後尾に「/」ありのパス

  - ### rTrim

    protected String rTrim(String str, char chr)
    右側トリム処理 右側の文字が、指定の文字の場合、除去します。
    パラメータ:
      `str` - 対象文字列
      `chr` - 指定文字
    戻り値:
      右側から指定文字を除去後の文字列

  - ### filter

    protected File[] filter(List<File> list, FileFilter filter)
    フィルター処理 フィルター処理を行います。
    パラメータ:
      `list` - フィルタを行うリスト
      `filter` - フィルタ情報
    戻り値:
      フィルタ後のリスト

  - ### toByteArray

    protected byte[] toByteArray(InputStream is) throws IOException
    ストリームの変換処理 InputStreamをbyte[]に変換。 InputStreamのサイズ計算に利用。
    パラメータ:
      `is` - byte配列変換するInputStream
    戻り値:
      InpusStreamをbyte配列に変換した値
    例外:
      `IOException` - ファイル関連エラー情報

  - ### isCloud

    public boolean isCloud()
    保存先のクラウド判定。 判定結果を返します。 trueの場合は、クラウドストレージ保存。 falseの場合は、ローカルに保存です。
    オーバーライド:
      `isCloud` クラス内 `FileOperation`
    戻り値:
      クラウドならtrue

  - ### canExecute

    public boolean canExecute()
    canExecuteの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `canExecute` クラス内 `File`
    戻り値:
      フラグ
    関連項目:
      - `File.canExecute()`

  - ### deleteOnExit

    public void deleteOnExit()
    deleteOnExitの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `deleteOnExit` クラス内 `File`
    関連項目:
      - `File.deleteOnExit()`

  - ### getAbsoluteFile

    public File getAbsoluteFile()
    getAbsoluteFileの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `getAbsoluteFile` クラス内 `File`
    戻り値:
      Fileｵﾌﾞｼﾞｪｸﾄ
    関連項目:
      - `File.getAbsoluteFile()`

  - ### getFreeSpace

    public long getFreeSpace()
    getFreeSpaceの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `getFreeSpace` クラス内 `File`
    戻り値:
      数値
    関連項目:
      - `File.getFreeSpace()`

  - ### getTotalSpace

    public long getTotalSpace()
    getTotalSpaceの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `getTotalSpace` クラス内 `File`
    戻り値:
      数値
    関連項目:
      - `File.getTotalSpace()`

  - ### getUsableSpace

    public long getUsableSpace()
    getUsableSpaceの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `getUsableSpace` クラス内 `File`
    戻り値:
      数値
    関連項目:
      - `File.getUsableSpace()`

  - ### isAbsolute

    public boolean isAbsolute()
    isAbsoluteの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `isAbsolute` クラス内 `File`
    戻り値:
      フラグ
    関連項目:
      - `File.isAbsolute()`

  - ### setReadable

    public boolean setReadable(boolean readable)
    setReadableの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `setReadable` クラス内 `File`
    パラメータ:
      `readable` - フラグ
    戻り値:
      フラグ
    関連項目:
      - `File.setReadable(boolean)`

  - ### setReadable

    public boolean setReadable(boolean readable, boolean ownerOnly)
    setReadableの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `setReadable` クラス内 `File`
    パラメータ:
      `readable` - フラグ
      `ownerOnly` - フラグ
    戻り値:
      フラグ
    関連項目:
      - `File.setReadable(boolean,boolean)`

  - ### setWritable

    public boolean setWritable(boolean writable)
    setWritableの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `setWritable` クラス内 `File`
    パラメータ:
      `writable` - フラグ
    戻り値:
      フラグ
    関連項目:
      - `File.setWritable(boolean)`

  - ### setWritable

    public boolean setWritable(boolean writable, boolean ownerOnly)
    canExecuteの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `setWritable` クラス内 `File`
    パラメータ:
      `writable` - フラグ
      `ownerOnly` - フラグ
    戻り値:
      フラグ
    関連項目:
      - `File.setWritable(boolean,boolean)`

  - ### toURI

    public URI toURI()
    canExecuteの実行(Fileｸﾗｽ) クラウド側では未実装のメソッドです。
    オーバーライド:
      `toURI` クラス内 `File`
    戻り値:
      URI情報
    関連項目:
      - `File.toURI()`