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形式で記述します。

  形式サンプル:

         ●形式：
              ① <og:tableFilter classId="THUMBNAIL" keys="PATH_CLM,FILE_CLM" vals="PATH,NMFILE" />

              ② <og:tableFilter classId="THUMBNAIL" >
                       {
                           PATH_CLM      :  PATH ;
                           FILE_CLM      :  NMFILE ;
                       }
                 </og:tableFilter>

  変更履歴:
    5.6.5.1 (2013/06/14) 新規追加, 5.6.6.0 (2013/07/05) keys の整合性チェックを追加
  バージョン
    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 を渡します。

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