image

  • フォト Amazonギフト券
    ※この時計の時刻は、閲覧しているパソコンのものであり、必ずしも正確な時間とは限りません

検索

最近のトラックバック

無料ブログはココログ

« 感想: 朧の森に棲む鬼 | トップページ | 納豆騒動を kizasi で確かめてみる その3 »

2007-01-28

xfy 1.3 の java API の実験: 002 (InstructionContext)

xfy 1.3 の java API の実験: 002 (InstructionContext)

Apiinstructioncontext
今回は、public class InstructionContext extends WrapperContext.

http://homepage2.nifty.com/youichi_kato/src.html
  xfy -1.3 の java API の調査   InstructionContext (2007-01-28)
にソースとスクリーンショットを置いた。

これは、インストラクションを作るときの基本情報源のデータのようだ。
ソース XML にアクセスしようとしたら、ここからたどっていくことになる。

http://www.xfy.com/jp/manual/1.3/documents/dev/developer/1.3/javadoc/com/xfy/common/framework/instruction/InstructionContext.html

このクラス特有のメソッドは以下のものがある。
void     clear()
           このコンテキストに設定されている変数およびXMLソース情報をクリアします。
Value     getVariable(Name name)
           指定された変数の値を取得します。
boolean     hasVariable(Name name)
           指定された名前の変数が存在するかしないかを返します。
void     setSource(XmlSource source)
           このコンテキストのXMLソース情報を設定します。
void     setVariable(Name name, Value value)
           このコンテキストに対して変数を設定します。
これらはちょっと まだ今はよく判らない。

継承されたメソッドは以下のものがある。
Context     getBaseContext()
          コンテキストを新しく作成するときに、作成元となったコンテキスト(ベースコンテキスト)を返します。
Node     getNode()
          このコンテキストでのコンテキストノードを返します。
Value     getPosition()
          このコンテキストのコンテキストポジションを、1からはじまる値で返します。
Value     getSize()
          このコンテキストのコンテキストサイズの値を返します。
Value     getVariable(Name name)
          指定された変数の値を取得します。
Name[]     getVariableNames()
          このコンテキストのスコープに存在するすべての変数名を返します。
boolean     hasVariable(Name name)
          指定された名前の変数が存在するかしないかを返します。
boolean     isValid()
          このコンテキストが有効か無効かを返します。

まずは、
getNode(), getPosition(),getSize(), getVariable(Name name), getVariableNames(), hasVariable(Name name)
を試してみよう。

   public void execute() throws CommandException {
   final StringBuilder sb = new StringBuilder();
       try {
           sb.append("InstructionContext.¥n");
           sb.append("  getNode()=[" + this.context.getNode() + "]¥n");
           sb.append("  getPosition()=[" + this.context.getPosition() + "]¥n");
           sb.append("  getSize()=[" + this.context.getSize() + "]¥n");

            Name[] names = this.context.getVariableNames();
            sb.append(" getVariableNames() size=" + names.length + "¥n");
            for (int i = 0; i < names.length; i++) {
              sb.append("  [" + i + "]" +  names[i].toString() + "]¥n");
            }
        }

この sb.toText() を表示 させるようなインストラクションをつくり、実行させた画面結果がページ先頭の画像だ。

getNode() は、インストラクション実行がされた ソースXML の Node を返すようだ。
次回は、Node クラスの API の実験を加えて、Node クラスの詳細を調べよう。
Node の使い方がわかれば、ソースDOM は自在に参照/編集ができるようになるかもしれない。

getPosition()、getSize() はそれなりの値が返ってきているが、意味や使い方は不明。
getValiableNames() は xvcd:variable で宣言した変数が取得できるもののようだ。
xvcd ファイル中に同時に記載した xvcd:user-data や instruction:variable は、このメソッドの返り値には含まれていないから。

« 感想: 朧の森に棲む鬼 | トップページ | 納豆騒動を kizasi で確かめてみる その3 »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/184434/13692796

この記事へのトラックバック一覧です: xfy 1.3 の java API の実験: 002 (InstructionContext):

« 感想: 朧の森に棲む鬼 | トップページ | 納豆騒動を kizasi で確かめてみる その3 »

mokuji

2013年12月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

google

  • twitter
  • __
  • _
    Googleボットチェッカー

合わせて読む

  • 合わせて読む
    フィードメーター - katoy: cocolog あわせて読みたい

リンク