パッケージ org.opengion.fukurou.model

# クラス CloudFileOperation

java.lang.Object
java.io.File
org.opengion.fukurou.model.FileOperation
org.opengion.fukurou.model.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) 変更対応
機能分類
  ファイル操作
導入されたバージョン:
  JDK7.0

- ## フィールドの概要

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

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

  `pathSeparator, pathSeparatorChar, separator, separatorChar`

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

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

- ## メソッドの概要

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

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

  `getBucket, getPlugin, setPlugin`

  ### クラスから継承されたメソッド 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(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` - コピー先
    戻り値:
      成否フラグ

  - ### length

    public abstract long length()
    ファイルサイズ取得 ファイルサイズを返します。
    オーバーライド:
      `length` クラス内 `File`
    戻り値:
      ファイルサイズ

  - ### lastModified

    public abstract long lastModified()
    最終更新時刻取得 最終更新時刻を返します。
    オーバーライド:
      `lastModified` クラス内 `File`
    戻り値:
      最終更新時刻

  - ### isFile

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

  - ### isDirectory

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

  - ### listFiles

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

  - ### getParentFile

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

  - ### getPath

    public String getPath()
    ファイルパス取得 ファイルパスを取得します。
    オーバーライド:
      `getPath` クラス内 `File`
    戻り値:
      設定パス

  - ### getAbsolutePath

    public String getAbsolutePath()
    絶対パス取得 絶対パスを取得します。
    オーバーライド:
      `getAbsolutePath` クラス内 `File`
    戻り値:
      絶対パス

  - ### getName

    public String getName()
    ファイル名取得 ファイル名を取得します。
    オーバーライド:
      `getName` クラス内 `File`
    戻り値:
      名称

  - ### getParent

    public String getParent()
    親のパス取得 親のパスを取得します。
    オーバーライド:
      `getParent` クラス内 `File`
    戻り値:
      親のパス

  - ### move

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

  - ### exists

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

  - ### mkdir

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

  - ### mkdirs

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

  - ### renameTo

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

  - ### canWrite

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

  - ### canRead

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

  - ### isHidden

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

  - ### createNewFile

    public boolean createNewFile() throws IOException
    新規ファイル作成 既にファイルが存在しない場合のみ、 空のファイルを作成します。
    オーバーライド:
      `createNewFile` クラス内 `File`
    戻り値:
      成否フラグ
    例外:
      `IOException` - ファイル関連エラー情報

  - ### setLastModified

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

  - ### getCanonicalFile

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

  - ### toString

    public String toString()
    toString パスを返します。
    オーバーライド:
      `toString` クラス内 `File`
    戻り値:
      ファイルパス

  - ### editPath

    protected String editPath(String path)
    ファイルパスの編集 パスの先頭が「/」の場合は「/」の除去と、「//」を「/」に置換処理の追加。
    パラメータ:
      `path` - ファイルパス
    戻り値:
      変更後パス
    変更履歴:
      5.10.12.2 (2019/06/17) 相対パス対応

  - ### drawParent

    protected String drawParent(String key)
    親のパスを抽出 キーから親のパスを抽出します。
    パラメータ:
      `key` - キー
    戻り値:
      親のパス

  - ### drawName

    protected String drawName(String key)
    名称の抽出 引数のkeyから名称を抽出します。
    パラメータ:
      `key` - キー(パス)
    戻り値:
      名称

  - ### setDirTail

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

  - ### rTrim

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

  - ### replaceFileSeparetor

    protected String replaceFileSeparetor(String path)
    ファイル区切り文字変換 ファイル区切り文字を変換します。
    パラメータ:
      `path` - 変換前文字列
    戻り値:
      返還後文字列

  - ### 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` - ファイル関連エラー情報

  - ### isLocal

    public boolean isLocal()
    ローカル実行フラグ判定 このabstract クラスの継承クラスはクラウド上で実行されるため、 falseを返します。
    オーバーライド:
      `isLocal` クラス内 `FileOperation`
    戻り値:
      ローカル実行フラグ

  - ### canExecute

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

  - ### deleteOnExit

    public void deleteOnExit()
    deleteOnExitの実行 クラウド側では未実装のメソッドです。
    オーバーライド:
      `deleteOnExit` クラス内 `File`

  - ### getAbsoluteFile

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

  - ### getFreeSpace

    public long getFreeSpace()
    getFreeSpaceの実行 クラウド側では未実装のメソッドです。
    オーバーライド:
      `getFreeSpace` クラス内 `File`
    戻り値:
      数値

  - ### getTotalSpace

    public long getTotalSpace()
    getTotalSpaceの実行 クラウド側では未実装のメソッドです。
    オーバーライド:
      `getTotalSpace` クラス内 `File`
    戻り値:
      数値

  - ### getUsableSpace

    public long getUsableSpace()
    getUsableSpaceの実行 クラウド側では未実装のメソッドです。
    オーバーライド:
      `getUsableSpace` クラス内 `File`
    戻り値:
      数値

  - ### isAbsolute

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

  - ### setReadable

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

  - ### setReadable

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

  - ### setWritable

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

  - ### setWritable

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

  - ### toURI

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