-一段落

どうもここのところ、ビジネスデベロップメント風のことであちこちウロウロしてましたが、一段落。あとは果報を寝ずに待つのみか。。。
S2Rhinoなる謎なリクエストが某所でありましたが、要件(追記:まちがい。いわば仕様)まとめられているのであればサクッとGWに作る時間がなくもないw。なぜならGWはずっと妻子が姫路に帰省してるのです。しかし私は4月28日の午前中に姫路で法事に出たのち、すぐさま東京に移動して、夕方から友人の結婚式に出席。その後はひとりで家でゴロゴロしてます(5月1日と2日は普通に会社業務日ですけどね)。
まじめにRhinoのAPIの話をすると、JavaScriptでトップレベルスコープにS2をぶち込むのはorg.mozilla.javascript.Scriptableを実装したオブジェクトのgetメソッドで渡されるIDに対応したコンポーネントを取得するように実装し、putとdeleteは例外処理しておけばいいぐらいです。Mayaaのソースではorg.seasar.mayaa.impl.cycle.script.rhino.NativeAttributeScopeあたりがサンプルになるかと思います。しかし、ブートストラップとしてどういう風に親切実装しとくかが使われ方次第なのでこのへんはなんとも。
もっとシンプルなのは、それこそトップレベルに「s2」とか「seasar」とかの組み込みオブジェクトを作っておくことかな。まあ、なんにせよRhinoをS2拡張したものを何に使うかという要件(追記:こっちはいわゆる要件そのまま)次第ということで。MayaaはRhinoを結構込み入った使い方しているので、全体的に参考になるかと思いますです。