クラス ViewMarker_MARKER

java.lang.Object
org.opengion.hayabusa.html.ViewMarker_MARKER
すべての実装されたインタフェース:
ViewMarker
直系の既知のサブクラス:
ViewLink_LINK

public class ViewMarker_MARKER extends Object implements ViewMarker
ViewMarker インターフェース の実装オブジェクトです。 これを共通のスーパークラスとして 各種表示フォーム(例:HTML表示等)に使います。 このクラスは、setter/getterメソッドのデフォルト実装を提供しています。 各種表示フォームに対応したサブクラス上で、 create() をオーバーライドして下さい。
変更履歴:
8.5.6.1 (2024/03/29) 継承で使えるように、private を protected に、一部修正します。
機能分類
画面表示
導入されたバージョン:
JDK5.0,
  • フィールドの概要

    フィールド
    修飾子とタイプ
    フィールド
    説明
    protected final ConcurrentMap<Integer,List<Integer>>
    6.4.3.1 (2016/02/12) PMD refactoring.
    protected int[]
    マークするかどうかの判定フラグ番号
    6.4.3.1 (2016/02/12) PMD refactoring.
    protected static final int
    マーカー作成せず
    protected static final int
    マーカー未設定
    protected static final int
    マーカー作成
    protected int[]
    マークするカラム番号
    protected List<Attributes>
    マーカーのAttributesリスト
    protected String[]
    マークするキー
    protected int[]
    マークするリスト配列のカラム番号
    protected String[]
    マークするリスト配列
    protected DBTableModel
    DBTableModel
  • コンストラクタの概要

    コンストラクタ
    コンストラクタ
    説明
    デフォルトコンストラクター
  • メソッドの概要

    修飾子とタイプ
    メソッド
    説明
    void
    カラムに対するマーカーアトリビュートをセットします。
    void
    内容をクリア(初期化)します。
    int[]
    マーカーされたカラム番号の配列を返します。
    getMarkerString(int row, int clm, String value)
    指定の行列に対するマーカー文字列を返します。
    protected void
    initFormatter(Attributes attri, int intKey)
    setDBTableModel の ViewMarker_MARKER と、ViewLink_LINK の差異を吸収するためのメソッドです。
    protected void
    initParameter(int count)
    setDBTableModel の ViewMarker_MARKER と、ViewLink_LINK の差異を吸収するためのメソッドです。
    boolean
    このマーカーが、初期化されているかどうかを判定します。
    protected void
    makeOnFormat(int intKey, Attributes attri)
    マーカーを作成する/作成しないの指定カラム番号を求めます。
    protected void
    makeOnFormat(int intKey, Attributes attri, String onMark)
    マーカーを作成する/作成しないの指定カラム番号を求めます。
    protected int
    onMarkNo(int row, int clm)
    マーカーを作成するかどうかを判断します。
    void
    内部に DBTableModel をセットします。

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

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • フィールド詳細

  • コンストラクタの詳細

    • ViewMarker_MARKER

      デフォルトコンストラクター
      変更履歴:
      6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
  • メソッドの詳細

    • clear

      public void clear()
      内容をクリア(初期化)します。
      定義:
      clear インタフェース内 ViewMarker
      変更履歴:
      3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。, 3.5.2.0 (2003/10/20) markLists,markListNo,markKey属性を追加, 3.5.6.1 (2004/06/25) formMap属性を追加, 3.8.8.1 (2007/01/06) instrVals属性を追加, 5.6.3.0 (2013/04/01) useFmtDeco属性を追加, 6.4.3.1 (2016/02/12) PMD refactoring. HashMap → ConcurrentHashMap に置き換え。
    • addAttribute

      public void addAttribute(Attributes attri)
      カラムに対するマーカーアトリビュートをセットします。
      定義:
      addAttribute インタフェース内 ViewMarker
      パラメータ:
      attri - アトリビュート
      変更履歴:
      3.1.0.0 (2003/03/20) Hashtable を使用している箇所で、非同期でも構わない箇所を、HashMap に置換え。, 3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。
    • isUsable

      public boolean isUsable()
      このマーカーが、初期化されているかどうかを判定します。 使用できる状態の場合は、true , 初期化が出来ていない場合は、false を返します。
      定義:
      isUsable インタフェース内 ViewMarker
      戻り値:
      初期化状況 [true:初期化済み/false:未初期化]
      変更履歴:
      6.7.2.0 (2017/01/16) caseKey,caseVal等で未使用のときの対応。
    • setDBTableModel

      public void setDBTableModel(DBTableModel tbl)
      内部に DBTableModel をセットします。
      定義:
      setDBTableModel インタフェース内 ViewMarker
      パラメータ:
      tbl - DBTableModelオブジェクト
      変更履歴:
      3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。, 3.5.2.0 (2003/10/20) markLists,markListNo,markKey属性を追加, 3.5.6.1 (2004/06/25) DBTableModel の再設定に対応。, 3.8.8.1 (2007/01/06) instrVals属性を追加, 5.6.3.0 (2013/04/01) useFmtDeco属性を追加, 6.4.3.3 (2016/03/04) Map#computeIfAbsent で対応する。, 6.4.3.4 (2016/03/11) Formatterに新しいコンストラクターを追加する。, 6.7.6.0 (2017/03/17) strictCheck 追加。, 8.5.3.0 (2023/09/08) DynamicAttributes対応
    • initParameter

      protected void initParameter(int count)
      setDBTableModel の ViewMarker_MARKER と、ViewLink_LINK の差異を吸収するためのメソッドです。 それぞれのクラスで独自に設定している項目を、ここで設定します。 ここでは、インスタンス変数の初期化を行っています。
      パラメータ:
      count - マーカーの数
      変更履歴:
      8.5.6.1 (2024/03/29) PMD 7.0.0 Finding duplicated code with CPD 新規追加
    • initFormatter

      protected void initFormatter(Attributes attri, int intKey)
      setDBTableModel の ViewMarker_MARKER と、ViewLink_LINK の差異を吸収するためのメソッドです。 それぞれのクラスで独自に設定している項目を、ここで設定します。 ここでは、for ループ内の、繰り返し処理内の設定をメソッド化しています。
      パラメータ:
      attri - Attributesオブジェクト
      intKey - 指定の列
      変更履歴:
      8.5.6.1 (2024/03/29) PMD 7.0.0 Finding duplicated code with CPD 新規追加
    • getMarkerString

      public String getMarkerString(int row, int clm, String value)
      指定の行列に対するマーカー文字列を返します。 この値は、すでにマーカー文字列処理されている為、RendererValue で 変換する必要はありません。 引数の value はそのカラムの値として利用されます。この値は、修飾済みの 値を与えることが可能です。
      定義:
      getMarkerString インタフェース内 ViewMarker
      パラメータ:
      row - 指定の行
      clm - 指定の列
      value - カラムの値(マーカー文字列処理済)
      戻り値:
      row行、colum列 のマーカー文字列
      変更履歴:
      3.5.6.1 (2004/06/25) formMap属性を使用します。, 3.8.8.1 (2007/01/06) instrVals属性を追加, 5.3.9.0 (2011/09/01) カラム名の先頭に'$'を付加した場合に、URLEncodeされた値を返すように対応, 5.6.3.0 (2013/04/01) useFmtDeco属性を追加([$XXXX],[#XXXX]機能を有効にするかどうか), 6.2.4.0 (2015/05/15) useFmtDeco属性とは無関係に、[!XXXX](値)を対応します。, 6.8.3.1 (2017/12/01) [$XXXX param] で、RendererValueのパラメータを動的に変更できます。, 8.5.4.2 (2024/01/12) PMD 7.0.0 ShortVariable 対応 for 変数の外だししている j を、中に入れる。, 8.5.5.1 (2024/02/29) switch式の使用
    • makeOnFormat

      protected void makeOnFormat(int intKey, Attributes attri)
      マーカーを作成する/作成しないの指定カラム番号を求めます。 setDBTableModel から呼ばれますが、MARKER と、LINK で少しの差異 あるため、それを吸収するためのメソッドです。
      パラメータ:
      intKey - カラムキーの番号
      attri - アトリビュート
      変更履歴:
      8.5.6.1 (2024/03/29) PMD 7.0.0 Finding duplicated code with CPD 新規追加
    • makeOnFormat

      protected void makeOnFormat(int intKey, Attributes attri, String onMark)
      マーカーを作成する/作成しないの指定カラム番号を求めます。 また、int[列番号] isMark ⇒ fgMark を初期化します。
      パラメータ:
      intKey - カラムキーの番号
      attri - アトリビュート
      onMark - マークする文字列
      変更履歴:
      3.5.2.0 (2003/10/20) markLists,markListNo,markKey属性を追加, 3.8.8.1 (2007/01/06) instrVals属性を追加, 8.5.3.0 (2023/09/08) DynamicAttributes対応, 8.5.4.2 (2024/01/12) PMD 7.0.0 LinguisticNaming 対応 isMark ⇒ fgMark, 8.5.6.1 (2024/03/29) makeOnMarkFormat → makeOnFormat に変更, 8.5.6.1 (2024/03/29) 継承で使えるように、private を protected に、一部修正します。
    • onMarkNo

      protected int onMarkNo(int row, int clm)
      マーカーを作成するかどうかを判断します。 int[列番号] isMark ⇒ fgMark には、 未設定 FALSE TRUE の状態を持っており、 列でマーカーを作成する状態が固定の場合(例えば、onMark属性がデフォルト "true" の場合) カラムに関係なく、同じ値を返すときに、使用します。
      パラメータ:
      row - 列番号
      clm - カラムキーの名称
      戻り値:
      処理するリスト番号、-1 の場合は、該当なし
      変更履歴:
      3.5.2.0 (2003/10/20) markLists,markListNo,markKey属性を追加, 3.5.4.0 (2003/11/25) onMark ,markList が null(またはゼロストリング)の場合は、false とする。, 4.0.0.0 (2005/08/31) 同一カラムの複数登録を許可します。, 6.7.2.0 (2017/01/16) markListの先頭が、"?" の場合、正規表現で判定します。, 8.5.4.2 (2024/01/12) PMD 7.0.0 LinguisticNaming 対応 isMark ⇒ fgMark, 8.5.6.1 (2024/03/29) 継承で使えるように、private を protected に、一部修正します。
    • getColumnNos

      public int[] getColumnNos()
      マーカーされたカラム番号の配列を返します。 これは特殊処理で、Edit機能で、カラム列をキャッシュしているときに、 JSPのソース等の変更時に、変更が反映されない対応を行う場合、 通常の ViewFormのサブクラスから、Edit専用の ViewForm_HTMLSeqClmTable で 制御する場合、ViewMarkerのEditMarkerでは、通常非表示(検索の場合)ですが Editのポップアップ画面に、表示されてしまうのを避けるため、noDisplay に 強制的にするカラム番号が必要です。 あくまで、暫定処置です。Edit機能を改修するときに、この機能は削除します。 ※ この処理は、EditMarkerでのみ有効にします。
      定義:
      getColumnNos インタフェース内 ViewMarker
      戻り値:
      マーカーされたカラム番号の配列
      変更履歴:
      6.0.3.0 (2014/11/13) Edit機能で、JSPソース変更時の対応