Woolpack API

woolpack.html
クラス HtmlUtils

java.lang.Object
  上位を拡張 woolpack.html.HtmlUtils

public final class HtmlUtils
extends java.lang.Object

DOMで表現されたHTMLを操作するユーティリティです。 型推論で表記を簡略するためのスタティックメソッドと変数を含みます。

作成者:
nakamura

フィールドの概要
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> COMPRESS_SPACE
          テキストノードの空白文字を圧縮する関数です。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> MERGE_CELL_ALL
          テーブルの全ての列の上下同一値のセルを結合する関数です。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> NORMALIZE_CASE
          エレメント名を大文字に、属性名を小文字に変換する関数です。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> REMOVE_COMMENT
          SCRIPT ノード以外のコメントノードを削除する関数です。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> REMOVE_THIS_AND_TEXTS
          指定された DOM ノードを削除し、さらにその後ろにあるテキストノードを全て削除する関数です。
 
メソッドの概要
static
<C extends NodeContext,E extends java.lang.Exception>
Fn<C,java.lang.Void,E>
branchPropertyCount(EL el, java.lang.Iterable<java.lang.String> attrNames, Fn<? super C,java.lang.Void,? extends E> firstFn, Fn<? super C,java.lang.Void,? extends E> pluralFn)
          各属性値の出現回数(1回か2回以上)により処理を分岐する関数を生成します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> convertRowAttr(java.lang.String attrName, java.lang.String[] attrValueArray)
          テーブルの行毎の属性値を循環的に設定する関数を生成します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> hiddenAllToChild(GettingEL mapEL, java.util.Collection<java.lang.String> excludeProperties)
          子ノードに HTML の隠し項目(hidden パラメータ)を追加する関数を生成します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> insertRowIndex(java.lang.String headValue)
          テーブルに行番号列を追加する関数を生成します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> makeRadio(GettingEL mapEL)
          Mapに格納された値とラベルの対応表を使用して HTML のラジオボタンまたはチェックボックスを再生成する関数を生成します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> makeSelect(GettingEL mapEL)
          Mapに格納された値とラベルの対応表を使用して HTML のセレクトを再生成する関数を生成します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> mergeCell(int colIndex)
          テーブルの指定した列の上下同一値のセルを結合する関数を生成します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> removeExtension(java.lang.String elementName, java.lang.String attrName)
          拡張子を取り除く関数を生成します。
static void removeThisAndText(org.w3c.dom.Node node)
          指定された DOM ノードを削除し、さらにその後ろにあるテキストノードを全て削除します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> updateAuto(java.lang.Iterable<java.lang.String> attrNames, GettingEL componentEL, GettingEL configEL)
          DOM エレメントの属性値をプロパティ名としてコンポーネントから値を取得し、 DOM ノードに自動設定する関数を生成します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> updateAuto(java.lang.Iterable<java.lang.String> attrNames, GettingEL componentEL, GettingEL configEL, java.util.Collection<java.lang.Class<?>> atomCollection, GettingEL errorEL)
          DOM エレメントの属性値をプロパティ名としてコンポーネントから値を取得し、 DOM ノードに自動設定する関数を生成します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> updateToSelectedValue(GettingEL valueEL, GettingEL mapEL)
          値に対応するラベルを再生成する関数を生成します。
static ValueUpdater<java.lang.RuntimeException> updateValue(GettingEL valueEL)
          値を再生成する関数を生成します。
static ValueUpdater<java.lang.RuntimeException> updateValue(GettingEL valueEL, GettingEL mapEL)
          値を再生成する関数を生成します。
static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> updateValue(GettingEL valueEL, GettingEL mapEL, boolean selectFlag)
          値を再生成する関数を生成します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

COMPRESS_SPACE

public static final Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> COMPRESS_SPACE
テキストノードの空白文字を圧縮する関数です。


MERGE_CELL_ALL

public static final Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> MERGE_CELL_ALL
テーブルの全ての列の上下同一値のセルを結合する関数です。


NORMALIZE_CASE

public static final Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> NORMALIZE_CASE
エレメント名を大文字に、属性名を小文字に変換する関数です。


REMOVE_COMMENT

public static final Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> REMOVE_COMMENT
SCRIPT ノード以外のコメントノードを削除する関数です。


REMOVE_THIS_AND_TEXTS

public static final Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> REMOVE_THIS_AND_TEXTS
指定された DOM ノードを削除し、さらにその後ろにあるテキストノードを全て削除する関数です。

メソッドの詳細

removeThisAndText

public static void removeThisAndText(org.w3c.dom.Node node)
指定された DOM ノードを削除し、さらにその後ろにあるテキストノードを全て削除します。 ラジオボタン・チェックボックスを削除するために使用します。

パラメータ:
node -

updateAuto

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> updateAuto(java.lang.Iterable<java.lang.String> attrNames,
                                                                                   GettingEL componentEL,
                                                                                   GettingEL configEL,
                                                                                   java.util.Collection<java.lang.Class<?>> atomCollection,
                                                                                   GettingEL errorEL)
DOM エレメントの属性値をプロパティ名としてコンポーネントから値を取得し、 DOM ノードに自動設定する関数を生成します。

パラメータ:
attrNames - 属性名の一覧。
componentEL - コンポーネントへの参照。
configEL - 設定値への参照。
atomCollection - 値の個数に関して原子的であるクラスの一覧。
errorEL - 値取得に失敗した場合の値の取得先。
戻り値:
関数。
関連項目:
AutoUpdater

updateAuto

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> updateAuto(java.lang.Iterable<java.lang.String> attrNames,
                                                                                   GettingEL componentEL,
                                                                                   GettingEL configEL)
DOM エレメントの属性値をプロパティ名としてコンポーネントから値を取得し、 DOM ノードに自動設定する関数を生成します。 値取得に失敗した場合は何もしません。

パラメータ:
attrNames - 属性名の一覧。
componentEL - コンポーネントへの参照。
configEL - 設定値への参照。
戻り値:
関数。
関連項目:
AutoUpdater

branchPropertyCount

public static <C extends NodeContext,E extends java.lang.Exception> Fn<C,java.lang.Void,E> branchPropertyCount(EL el,
                                                                                                               java.lang.Iterable<java.lang.String> attrNames,
                                                                                                               Fn<? super C,java.lang.Void,? extends E> firstFn,
                                                                                                               Fn<? super C,java.lang.Void,? extends E> pluralFn)
各属性値の出現回数(1回か2回以上)により処理を分岐する関数を生成します。

型パラメータ:
C -
E -
パラメータ:
el - プロパティの出現回数を保持する位置。
attrNames - 属性名の一覧。
firstFn - 最初の検索結果に対する委譲先。
pluralFn - 2番目以降の検索結果に対する委譲先。
戻り値:
関数。

convertRowAttr

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> convertRowAttr(java.lang.String attrName,
                                                                                       java.lang.String[] attrValueArray)
テーブルの行毎の属性値を循環的に設定する関数を生成します。

パラメータ:
attrName - 属性名。
attrValueArray - 属性値の一覧。
戻り値:
関数。

hiddenAllToChild

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> hiddenAllToChild(GettingEL mapEL,
                                                                                         java.util.Collection<java.lang.String> excludeProperties)
子ノードに HTML の隠し項目(hidden パラメータ)を追加する関数を生成します。

パラメータ:
mapEL - hidden にする情報が格納されたMapへの参照。
excludeProperties - hidden として追加しないキーの一覧。
戻り値:
関数。

insertRowIndex

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> insertRowIndex(java.lang.String headValue)
テーブルに行番号列を追加する関数を生成します。

パラメータ:
headValue - 最初の行の値。
戻り値:
関数。

makeRadio

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> makeRadio(GettingEL mapEL)
Mapに格納された値とラベルの対応表を使用して HTML のラジオボタンまたはチェックボックスを再生成する関数を生成します。

パラメータ:
mapEL - 値とラベルのMapへの参照。キー・値ともObject.toString()で文字列として扱います。
戻り値:
関数。

makeSelect

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> makeSelect(GettingEL mapEL)
Mapに格納された値とラベルの対応表を使用して HTML のセレクトを再生成する関数を生成します。

パラメータ:
mapEL - 値とラベルのMapへの参照。キー・値ともObject.toString()で文字列として扱います。
戻り値:
関数。

mergeCell

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> mergeCell(int colIndex)
テーブルの指定した列の上下同一値のセルを結合する関数を生成します。

パラメータ:
colIndex - 結合対象の列。
戻り値:
関数。

updateToSelectedValue

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> updateToSelectedValue(GettingEL valueEL,
                                                                                              GettingEL mapEL)
値に対応するラベルを再生成する関数を生成します。 値が複数の場合は複数のラベルを再生成します。 Mapが存在しない場合またはMap に対応するキーが存在しない場合は値をそのまま表示します。 前の画面のラジオボタン・チェックボックス・セレクトで選択した値を確認画面で表示するために使用します。

パラメータ:
valueEL - 値の取得先への参照。
mapEL - 値とラベルのMapへの参照。 キー・値ともObject.toString()で文字列として扱います。mapEL は null を許容します。
戻り値:
関数。

updateValue

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> updateValue(GettingEL valueEL,
                                                                                    GettingEL mapEL,
                                                                                    boolean selectFlag)
値を再生成する関数を生成します。 入力部品(file, image)の場合はなにもしません。 ノードの種類がラジオボタン/チェックボックス/セレクトで selectFlag の場合、 selected 属性の有無または checked 属性の有無を変更します。 ノードの種類がラジオボタン/チェックボックス/セレクトで selectFlag でないか、 入力部品(text, password, hidden, submit, reset, button)の場合、 value 属性値を変更します。 ノードの種類が入力部品以外であるかテキストエリアの場合、子ノードを値のテキストで置き換えます。

パラメータ:
valueEL - 値の取得先への参照。
mapEL - 値とラベルのMapへの参照。
selectFlag - selected または checked 属性の有無を変更するなら true。value の属性値を変更するなら false。
戻り値:
関数。

updateValue

public static ValueUpdater<java.lang.RuntimeException> updateValue(GettingEL valueEL,
                                                                   GettingEL mapEL)
値を再生成する関数を生成します。 selected または checked 属性の有無を変更するモードです。

パラメータ:
valueEL - 値の取得先。
mapEL - 値とラベルのMapへの参照。
戻り値:
関数。
関連項目:
updateValue(GettingEL, GettingEL, boolean)

updateValue

public static ValueUpdater<java.lang.RuntimeException> updateValue(GettingEL valueEL)
値を再生成する関数を生成します。 selected または checked 属性の有無を変更するモードです。

パラメータ:
valueEL - 値の取得先への参照。
戻り値:
関数。
関連項目:
updateValue(GettingEL, GettingEL, boolean)

removeExtension

public static Fn<NodeContext,java.lang.Void,java.lang.RuntimeException> removeExtension(java.lang.String elementName,
                                                                                        java.lang.String attrName)
拡張子を取り除く関数を生成します。

パラメータ:
elementName - 作用対象のエレメント名。
attrName - 作用対象の属性名。
戻り値:
関数。

Woolpack API

Copyright (C) 2006-2007 Takahiro Nakamura. All rights reserved.