org.opengion.hayabusa.servlet

## クラス MultipartRequest

- java.lang.Object
- - org.opengion.hayabusa.servlet.MultipartRequest

-     public final class MultipartRequest
      extends java.lang.Object

  ファイルをサーバーにアップロードする場合に使用されるマルチパート処理サーブレットです。 通常のファイルアップロード時の、form で使用する、enctype="multipart/form-data" を指定した場合の、他のリクエスト情報も、取り出すことが可能です。 ファイルをアップロード後に、指定のファイル名に変更する機能があります。 file 登録ダイアログで指定した name に、"_NEW" という名称を付けたリクエスト値を ファイルのアップロードと同時に送信することで、この名前にファイルを付け替えます。 また、アップロード後のファイル名は、name 指定の名称で、取り出せます。 クライアントから登録したオリジナルのファイル名は、name に、"_ORG" という名称 で取り出すことが可能です。 maxPostSize : 最大転送サイズ(Byte)を指定します。 0,またはマイナスで無制限です。 useBackup : ファイルアップロード時に、すでに同名のファイルが存在した場合に、 バックアップ処理(renameTo)するかどうか[true/false]を指定します(初期値:false) ファイルアップロード時に、アップロード先に、同名のファイルが存在した場合は、既存機能は、そのまま 置き換えていましたが、簡易バージョンアップ機能として、useBackup="true" を指定すると、既存のファイルを リネームして、バックアップファイルを作成します。 バックアップファイルは、アップロードフォルダを基準として、_backup/ファイル名.拡張子_処理時刻のlong値.拡張子 になります。 オリジナルのファイル名（拡張子付）を残したまま、"_処理時刻のlong値" を追加し、さらに、オリジナルの拡張子を追加します。 バックアップファイルの形式は指定できません。
  変更履歴:

    5.10.9.0 (2019/03/01) oota クラウドストレージ対応を追加。(Fileクラスを拡張)

  機能分類
    その他機能
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

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

    コンストラクタ
    コンストラクタと説明
    `MultipartRequest(HttpServletRequest request, java.lang.String saveDirectory, int maxPostSize, java.lang.String encoding, java.lang.String inputFilename, boolean useBackup, java.lang.String fileURL, java.lang.String storageType, java.lang.String bucketName)` MultipartRequest オブジェクトを構築します。

  - ### メソッドの概要

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `int[]` | `getIntParameters(java.lang.String name)` 指定の名前のリクエストパラメータの値を配列(int)型式で取得します。
    `java.lang.String` | `getParameter(java.lang.String name)` 指定の名前のリクエストパラメータの値を取得します。
    `java.lang.String[]` | `getParameterNames()` リクエストパラメータの名前配列を取得します。
    `java.lang.String[]` | `getParameters(java.lang.String name)` 指定の名前のリクエストパラメータの値を配列型式で取得します。
    `UploadedFile[]` | `getUploadedFile()` ファイルアップロードされたファイル群のファイル配列を取得します。

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

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

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

    - #### MultipartRequest

          public MultipartRequest(HttpServletRequest request,
                          java.lang.String saveDirectory,
                          int maxPostSize,
                          java.lang.String encoding,
                          java.lang.String inputFilename,
                          boolean useBackup,
                          java.lang.String fileURL,
                          java.lang.String storageType,
                          java.lang.String bucketName)
                           throws java.io.IOException

      MultipartRequest オブジェクトを構築します。 引数として、ファイルアップロード時の保存フォルダ、最大サイズ、エンコード、 新しいファイル名などを指定できます。新しいファイル名は、アップロードされる ファイルが一つだけの場合に使用できます。複数のファイルを同時に変更したい 場合は、アップロードルールにのっとり、リクエストパラメータで指定してください。 HTML5 では、ファイルアップロード時に、multiple 属性（inputタグのtype="file"）を 付ける事で、ファイルを複数選択できます。 その場合は、inputのname属性は、一つなので、_NEW による名前の書き換えはできません。
      パラメータ:
        `request` - HttpServletRequestオブジェクト
        `saveDirectory` - ファイルアップロードがあった場合の保存フォルダ名
        `maxPostSize` - ファイルアップロード時の最大ファイルサイズ(Byte)0,またはマイナスで無制限
        `encoding` - ファイルのエンコード
        `inputFilename` - アップロードされたファイルの新しい名前
        `useBackup` - ファイルアップロード時に、バックアップ処理するかどうか[true/false]を指定
        `fileURL` - クラウドストレージ用のURL
        `storageType` - クラウドストレージのタイプ(plugin)
        `bucketName` - クラウドストレージのバケット名
      例外:
        `java.io.IOException` - 入出力エラーが発生したとき
      変更履歴:

        3.8.1.3A (2006/01/30) 新ファイル名にオリジナルファイル名の拡張子をセットします
        4.0.0.0 (2007/11/28) メソッドの戻り値をチェックします。
        5.5.2.6 (2012/05/25) findbugs対応。staticフィールドへの書き込みに、AtomicInteger を利用します。
        5.6.5.3 (2013/06/28) useBackup引数追加
        5.7.1.1 (2013/12/13) HTML5 ファイルアップロードの複数選択（multiple）対応
        5.7.4.3 (2014/03/28) inputFilename のリクエスト変数処理追加
        5.9.25.0 (2017/10/06) ｸﾗｳﾄﾞｽﾄﾚｰｼﾞ利用処理追加
        5.10.9.0 (2019/03/01) クラウドストレージ対応を追加。

  - ### メソッドの詳細

    - #### getParameterNames

          public java.lang.String[] getParameterNames()

      リクエストパラメータの名前配列を取得します。
      戻り値:
        リクエストパラメータの名前配列

    - #### getUploadedFile

          public UploadedFile[] getUploadedFile()

      ファイルアップロードされたファイル群のファイル配列を取得します。
      戻り値:
        アップロードされたファイル群
      変更履歴:

        5.7.1.1 (2013/12/13) HTML5 ファイルアップロードの複数選択（multiple）対応

    - #### getParameter

          public java.lang.String getParameter(java.lang.String name)

      指定の名前のリクエストパラメータの値を取得します。 複数存在する場合は、一番最後の値を返します。
      パラメータ:
        `name` - リクエストパラメータ名
      戻り値:
        パラメータの値

    - #### getParameters

          public java.lang.String[] getParameters(java.lang.String name)

      指定の名前のリクエストパラメータの値を配列型式で取得します。
      パラメータ:
        `name` - リクエストパラメータ名
      戻り値:
        パラメータの値配列
      変更履歴:

        5.3.2.0 (2011/02/01) 新規作成

    - #### getIntParameters

          public int[] getIntParameters(java.lang.String name)

      指定の名前のリクエストパラメータの値を配列(int)型式で取得します。
      パラメータ:
        `name` - リクエストパラメータ名
      戻り値:
        パラメータの値配列
      変更履歴:

        5.3.2.0 (2011/02/01) 新規作成
        5.3.6.0 (2011/06/01) 配列値が""の場合にNumberFormatExceptionが発生するバグを修正

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.