パッケージ org.opengion.plugin.table

## クラス TableFilter_THUMBNAIL

- java.lang.Object
- - org.opengion.hayabusa.db.AbstractTableFilter
  - - org.opengion.plugin.table.TableFilter_THUMBNAIL

- すべての実装されたインタフェース:
    `TableFilter`

      public class TableFilter_THUMBNAIL
      extends AbstractTableFilter

  TableFilter_THUMBNAIL は、TableFilter インターフェースを継承した、DBTableModel 処理用の 実装クラスです。 ここでは、オリジナルファイルのサムネイルファイルを作成します。 keys と vals に指定する値を以下に示します。

  keys と vals に指定する値
  KEY | VAL | (必須) | 初期値 | 解説
  --- | --- | --- | --- | ---
  PATH_CLM | 元ファイルのPATHカラムID | 必須 |  | 元ファイルのコンテキストパスが登録されているカラムID
  FILE_CLM | 元ファイルのFILEカラムID | 必須 |  | 元ファイルのファイル名が登録されているカラムID
  THUMB_CLM | サムネイルのカラムID |  |  | サムネイルのPATH/FILEが登録、または書き戻し用のカラムID
  THUMB_DIR | サムネイルの管理フォルダ |  | _thumb/ | サムネイルを作成する中間管理フォルダ名
  THUMB_SUFIX | サムネイルの拡張子 |  | AUTO | サムネイルの拡張子を指定します。AUTOは、元のままです。
  OVERWRITE | 上書きするかどうか |  | false | サムネイルを作成する時、上書きするかどうかを指定します。
  MAX_SIZE | サムネイルの最大ピクセル数 |  | 128 | サムネイルを作成する時の画像ファイルの大きさ。比率はキープされます。

  【解説】 １．PATH_CLM ＋ FILE_CLMのカラム列の値が、元ファイルのコンテキストパス以下のファイルのアドレスになります。 ２．サムネイルは通常、元フォルダに管理フォルダを作成し、その下に、元ファイルと同じ名前のサムネイルファイルを作成します。 つまり、PATH_CLM ＋ THUMB_DIR ＋ FILE_CLM ＋ 拡張子が、サムネイルのファイル名になります。 ３．THUMB_SUFIX を指定した場合は、サムネイルの拡張子を変更できます。初期値は、AUTOです。 AUTOの場合は、元ファイルと同じ拡張子が使われます。自分で指定する場合は、拡張子違いの元ファイルがあれば重複しますので注意が必要です。 ４．サムネイルを作成できるのは、bmp/jpeg/png/gif/tif だけです。それ以外のファイルについては、ICONレンデラー等を使用して、自分でサムネイル表示するようにして下さい。 ただし、将来的には、xls/ppt/doc/pdf などの主要なファイルフォーマットのサムネイルは作成したいと考えています。 ５．THUMB_CLM にサムネイルのファイル名が記述されている場合、その名前でサムネイルを作成します。このとき、OVERWRITE=true の場合は、既存ファイルの有無に関係なく 上書き（再作成）されます。OVERWRITE=false(初期値)の場合は、すでに存在していれば、そのままとします。 ６．THUMB_CLM にサムネイルのファイル名が記述されていない場合は、標準のファイル名でサムネイルを作成して、THUMB_CLMカラムに書き戻します。 この場合、既存ファイルの有無に関係なく、上書き（再作成）されます。 ７．THUMB_CLM が指定されていない場合は、カラムに書き戻し処理を行いません。(６．と同じで、書き戻しを行いません。) ８．MAX_SIZE は、サムネイルを作成する場合、縦、横の最大ピクセルに、縮小されます。比率は変わりません。これは物理的なサムネイルファイルのサイズです。 なお、ドキュメント管理系で、自動スキャン取込みで、ファイルやフォルダの先頭に、アンダーバーがついている場合は、スキャン対象から外します。 ドキュメントシステムから見た場合の、隠しファイルの扱いです。サムネイルも、デフォルトでは、アンダーバー付のフォルダに作成します。 これは、自動スキャンで、サムネイルのサムネイルを作成することを避ける意味合いもあります。 また、サムネイルの一括削除などに都合が良いと思います。 パラメータは、tableFilterタグの keys, vals にそれぞれ記述するか、BODY 部にCSS形式で記述します。
  変更履歴:
    5.6.5.1 (2013/06/14) 新規追加, 5.6.6.0 (2013/07/05) keys の整合性チェックを追加
  形式サンプル:
    ●形式： ① <og:tableFilter classId="THUMBNAIL" keys="PATH_CLM,FILE_CLM" vals="PATH,NMFILE" /> ② <og:tableFilter classId="THUMBNAIL" > { PATH_CLM : PATH ; FILE_CLM : NMFILE ; } </og:tableFilter>
  バージョン
    0.9.0 2000/10/17
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK1.1,

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

    - ### クラスから継承されたフィールド org.opengion.hayabusa.db.AbstractTableFilter

      `BUFFER_MIDDLE, CR, EXEC_END_TAG, EXEC_START_TAG, execEndTag, isXml, XML_END_TAG, XML_START_TAG`

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

    コンストラクタ
    コンストラクタ | 説明
    --- | ---
    `TableFilter_THUMBNAIL()` | デフォルトコンストラクター

  - ### メソッドの概要

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッド | 説明
    --- | --- | ---
    `DBTableModel` | `execute()` | DBTableModel処理を実行します。

    - ### クラスから継承されたメソッド org.opengion.hayabusa.db.AbstractTableFilter

      `getDbid, getDBTableModel, getErrorCode, getErrorMessage, getKeys, getModifyType, getParameterRows, getResource, getSql, getTableColumnNo, getTransaction, getValue, initSet, isDebug, makeErrorMessage, setDbid, setDBTableModel, setDebug, setKeysVals, setModifyType, setParameterRows, setParamMap, setResource, setSql, setTransaction`

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

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

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

    - #### TableFilter_THUMBNAIL

          public TableFilter_THUMBNAIL()

      デフォルトコンストラクター
      変更履歴:
        6.4.1.1 (2016/01/16) keysMap を、サブクラスから設定させるように変更。

  - ### メソッドの詳細

    - #### execute

          public DBTableModel execute()

      DBTableModel処理を実行します。
      戻り値:
        処理結果のDBTableModel
      変更履歴:
        5.6.6.1 (2013/07/12) THUMB_SUFIXを追加, 6.0.2.3 (2014/10/10) ImageResizer → ImageUtil に変更, 6.5.0.1 (2016/10/21) ErrorMessage をまとめるのと、直接 Throwable を渡します。