ヘンリー要件
とは、Fisshplateのテンプレートがちゃんと正しく書けてるか確認するのに、いちいち埋め込みデータをJavaでコーディングして用意しなくても、EXCELにルールに従って書いておいてそれを埋め込み用データとして読み込めば、出力ファイルが出来るのであとは目視で確認ね、と云う要件である。
基本動作は出来たぽい。ソースはきちゃない。
ループのネストにはまだ対応してない。ここをどうするかだなー。
やり方としては、埋め込みデータ用EXCELのシートの名前がMapのキーになります。「root」って名前にするとMapのルートになる。ルートはなくってもOK。
で、1行目はプロパティ名。その下のセルに値を入れる。「root」など繰り返し要素じゃないものは値は1行分のみ。
で、rootにぶらさがる要素は、他のシートに書く。やっぱり1行目がプロパティ名で、その下が値。
値が複数行あるとリストを作るので、テンプレート上から「#foreach var:シート名」でアクセスする。
値が1行しかない場合は、「${シート名.プロパティ名}」でアクセスする。S2Fisshplate用のテンプレートで「${data.hoge}」なんて場合は、シート名を「data」にしておけばいい。
さて問題が、この「${data}」の下にリストがぶらさがったり、リストの中にリストがネストした場合なんだけど、各親リストの持つ子リストの中身が全部同じって制限があれば、シート名を「親要素.子要素」って風にすればいいかなーと思っているが、実装はまだしていない。
「.」だと見難いかもしれないので、「親要素#子要素」とか、他の記号にしようかとも思っています。慣例によりシャープかなー。
てなわけでしばしお待ちを。ホントは仕事しなきゃいけないの・・・・。
名前どうしよう、出力ファイルの目視確認が基本だから、自動化出来ないのでどうもxUnitって名前がしっくりこないんだなー。