com.nifty.cloud.ncs.transfer

## クラス AbstractTransferMonitor<T,V>

- java.lang.Object
- - com.nifty.cloud.ncs.transfer.AbstractTransferMonitor<T,V>

- 型パラメータ:
    `T` -
    `V` -
  すべての実装されたインタフェース:
    TransferMonitor, java.util.concurrent.Callable<T>
  直系の既知のサブクラス:
    UploadMonitor

      public abstract class AbstractTransferMonitor<T,V>
      extends java.lang.Object
      implements TransferMonitor, java.util.concurrent.Callable<T>

  転送監視用の抽象クラスです。

- - ### メソッドのサマリー

    すべてのメソッド インスタンス・メソッド abstractメソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `abstract T` | `call()` このメソッドはこのクラスを継承するクラス内で実装される必要があります。
    `java.lang.String` | `getDescription()` descriptionを取得します。
    `Transfer.TransferState` | `getState()` 現在のステータスを取得します。
    `boolean` | `isDone()` 処理が終了したかどうかの判定を行います。
    `void` | `shutdownIfDone()` 転送処理が終了している場合はスレッドプールを終了します。
    `void` | `waitForCompletion()` 処理が完了するまで待機します。
    `NiftyCloudClientException` | `waitForException()` 処理が完了するか、エラーが発生するまで待機します。
    `T` | `waitForResult()` 転送が完了するまで待機します。

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

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### メソッドの詳細

    - #### isDone

          public final boolean isDone()

      インタフェースからコピーされた説明: `TransferMonitor`
      処理が終了したかどうかの判定を行います。
      定義:
        `isDone` インタフェース内 `TransferMonitor`
      戻り値:
        処理終了フラグ

    - #### getState

          public final Transfer.TransferState getState()

      インタフェースからコピーされた説明: `TransferMonitor`
      現在のステータスを取得します。
      定義:
        `getState` インタフェース内 `TransferMonitor`
      戻り値:
        現在のステータス

    - #### getDescription

          public java.lang.String getDescription()

      インタフェースからコピーされた説明: `TransferMonitor`
      descriptionを取得します。
      定義:
        `getDescription` インタフェース内 `TransferMonitor`
      戻り値:
        description

    - #### shutdownIfDone

          public void shutdownIfDone()

      転送処理が終了している場合はスレッドプールを終了します。

    - #### waitForCompletion

          public void waitForCompletion()
                                 throws NiftyCloudClientException,
                                        NiftyCloudServiceException,
                                        java.lang.InterruptedException

      処理が完了するまで待機します。
      例外:
        `NiftyCloudClientException`
        `NiftyCloudServiceException`
        `java.lang.InterruptedException`

    - #### waitForResult

          public T waitForResult()
                          throws NiftyCloudClientException,
                                 NiftyCloudServiceException,
                                 java.lang.InterruptedException

      転送が完了するまで待機します。 完了した場合は結果が返却されます。
      戻り値:
        転送結果
      例外:
        `NiftyCloudClientException`
        `NiftyCloudServiceException`
        `java.lang.InterruptedException`

    - #### waitForException

          public NiftyCloudClientException waitForException()
                                                     throws java.lang.InterruptedException

      処理が完了するか、エラーが発生するまで待機します。
      エラーが発生した場合は発生した例外、そうでなければ`null`を返却します。
      戻り値:
        NiftyCloudClientException
      例外:
        `java.lang.InterruptedException`

    - #### call

          public abstract T call()
                          throws java.lang.Exception

      このメソッドはこのクラスを継承するクラス内で実装される必要があります。
      定義:
        `call` インタフェース内 `java.util.concurrent.Callable<T>`
      例外:
        `java.lang.Exception`