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

## クラス FileOperation

- java.lang.Object
- - java.io.File
  - - org.opengion.fukurou.model.FileOperation

- すべての実装されたインタフェース:
    `Serializable`, `Comparable<File>`
  直系の既知のサブクラス:
    `CloudFileOperation`

      public class FileOperation
      extends File

  ファイル操作のインタフェース ローカルサーバ、クラウドストレージ(AWS,AZURE,BLUEMIX,ORACLE)のファイル操作用です。 FileOperationFactoryを通して、インスタンスを生成可能です。 Fileクラスを継承しているため、通常のFileとしても扱えます。
  関連項目:
    直列化された形式
  変更履歴:
    5.10.8.0 (2019/02/01) 新規作成, 5.10.9.0 (2019/03/01) 変更対応
  機能分類
    ファイル操作
  作成者
    oota
  導入されたバージョン:
    JDK7.0

- - ### フィールドの概要

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

      `pathSeparator, pathSeparatorChar, separator, separatorChar`

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

    コンストラクタ
    コンストラクタ | 説明
    --- | ---
    `FileOperation​(String path)` | コンストラクタ 初期化処理。
    `FileOperation​(String bucket, String path)` | コンストラクタ FileOperationクラスでは、buketは使用しません。

  - ### メソッドの概要

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッド | 説明
    --- | --- | ---
    `boolean` | `copy​(String afPath)` | コピー処理 ファイルを指定先にコピーします。
    `boolean` | `equals​(Object object)` | このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    `String` | `getBucket()` | バケット名取得。
    `FileOperation` | `getCanonicalFile()` | カノニカルファイル取得。
    `String` | `getPlugin()` | プラグイン名取得。
    `int` | `hashCode()` | オブジェクトのハッシュコード値を返します。
    `boolean` | `isLocal()` | 保存先のローカル判定。
    `boolean` | `move​(String afPath)` | ファイル移動 ファイルを指定先に移動します。
    `InputStream` | `read()` | 読み込み処理 データを読み込み、InputStreamとして、返します。
    `protected void` | `setPlugin​(String plugin)` | プラグイン名のセット。
    `void` | `write​(InputStream is)` | 書き込み処理 InputStreamのデータを書き込みます。

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

      `canExecute, canRead, canWrite, compareTo, createNewFile, createTempFile, createTempFile, delete, deleteOnExit, exists, getAbsoluteFile, getAbsolutePath, getCanonicalPath, getFreeSpace, getName, getParent, getParentFile, getPath, getTotalSpace, getUsableSpace, isAbsolute, isDirectory, isFile, isHidden, lastModified, length, list, list, listFiles, listFiles, listFiles, listRoots, mkdir, mkdirs, renameTo, setExecutable, setExecutable, setLastModified, setReadable, setReadable, setReadOnly, setWritable, setWritable, toPath, toString, toURI, toURL`

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

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

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

    - #### FileOperation

          public FileOperation​(String path)

      コンストラクタ 初期化処理。
      パラメータ:
        `path` - ファイルパス

    - #### FileOperation

          public FileOperation​(String bucket,
                               String path)

      コンストラクタ FileOperationクラスでは、buketは使用しません。
      パラメータ:
        `bucket` - バケット名
        `path` - ファイルパス

  - ### メソッドの詳細

    - #### write

          public void write​(InputStream is)
                     throws IOException

      書き込み処理 InputStreamのデータを書き込みます。
      パラメータ:
        `is` - 書き込みデータのInputStream
      例外:
        `IOException` - ファイル関連エラー情報

    - #### read

          public InputStream read()
                           throws FileNotFoundException

      読み込み処理 データを読み込み、InputStreamとして、返します。
      戻り値:
        読み込みデータのInputStream
      例外:
        `FileNotFoundException` - ファイル非存在エラー情報

    - #### copy

          public boolean copy​(String afPath)

      コピー処理 ファイルを指定先にコピーします。
      パラメータ:
        `afPath` - コピー先
      戻り値:
        成否フラグ

    - #### move

          public boolean move​(String afPath)

      ファイル移動 ファイルを指定先に移動します。
      パラメータ:
        `afPath` - 移動先
      戻り値:
        成否フラグ

    - #### isLocal

          public boolean isLocal()

      保存先のローカル判定。 判定結果を返します。 trueの場合は、ローカル保存。 falseの場合は、クラウドストレージに保存です。
      戻り値:
        ローカルフラグ

    - #### getCanonicalFile

          public FileOperation getCanonicalFile()
                                         throws IOException

      カノニカルファイル取得。 カノニカルファイル情報を取得します。
      オーバーライド:
        `getCanonicalFile` クラス内 `File`
      戻り値:
        カノニカルファイル情報
      例外:
        `IOException` - ファイル関連エラー情報

    - #### getBucket

          public String getBucket()

      バケット名取得。 バケット名を取得します。
      戻り値:
        バケット名

    - #### getPlugin

          public String getPlugin()

      プラグイン名取得。 プラグイン名を取得します。
      戻り値:
        プラグイン名

    - #### setPlugin

          protected void setPlugin​(String plugin)

      プラグイン名のセット。 プラグイン名をセットします。
      パラメータ:
        `plugin` - プラグイン名

    - #### equals

          public boolean equals​(Object object)

      このオブジェクトと他のオブジェクトが等しいかどうかを示します。 インタフェース Comparable の 実装に関連して、再定義しています。
      オーバーライド:
        `equals` クラス内 `File`
      パラメータ:
        `object` - 比較対象の参照オブジェクト
      戻り値:
        引数に指定されたオブジェクトとこのオブジェクトが等しい場合は true、そうでない場合は false
      変更履歴:
        7.2.9.4 (2020/11/20) spotbugs:スーパークラスの equals メソッドをオーバーライドしていないクラス

    - #### hashCode

          public int hashCode()

      オブジェクトのハッシュコード値を返します。 このメソッドは、java.io.File のハッシュ値を返すことで、equals メソッドとの整合性を取っています。
      オーバーライド:
        `hashCode` クラス内 `File`
      戻り値:
        このオブジェクトのハッシュコード値
      変更履歴:
        7.2.9.4 (2020/11/20) spotbugs:equals メソッドは定義していますが hashCode メソッドは定義していないクラス