[[OpenSocial/shindig/php版]]
 
 ** 概要 [#p3c286b2]
 gadgetを形成するためのAPI(JS)群を取得する
 必要なJSはshindig/features(config.phpのfeatures_pathで指定)配下に機能毎にディレクトリをわけて格納されている
  shidig.example.com/gadgets/js/core:caja
 のようにコロンで区切って指定することで複数のAPIを取得できる
 XMLでラップされたgadget(ラップされたものはgadget.containerというオブジェクトに格納されるらしい)の場合は必要なAPIは<Require feature>で指定されており、レンダリング時に挿入されるので使う機会は限られる
 containerから使用する場合はcというクエリを追加して
  shindig.example.com/gadgets/js/core?c=1
 のように呼び出す
 shindig/features/somedir/feature.xmlにgadget用、container用それぞれに出力するjsが記述されている
 
 ** 呼び出されるクラス [#c8c02e29]
 - src/gadgets/http/JsServlet.phpのJsServletクラス
 - src/common/HttpServlet.phpのHttpServletクラス(modified headerやcache controllなどを担当)を継承している
 
 他に
  src/gadgets/GadgetFeatureRegistry.php
  src/gadgets/JsFeatureLoader.php
  src/gadgets/JsLibrary.php
  src/gadgets/GadgetFeatureFactory.php
  src/gadgets/GadgetFeature.php
  src/gadgets/JsLibraryFeatureFactory.php
 をrequireしている
 
 ** 動作 [#w588e222]
 JsServlet内のパブリックメソッドはdoGet()のみ
 forやifが入り組んでいるので詳細な動作はまだ把握していない
 
 
 #blikifooter(斉藤)
 
 tag: [[OpenSocial>tag/OpenSocial]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

アークウェブのサービスやソリューションはこちら