XCat Service

service で共通カテゴリ管理機能を提供してみることにしたのですが、ちと時間がかかっています。
週末に予定が入っていたのと、ちまちまやってたらすぐに前調べたことを忘れてしまうパタンに。

  • Preload でサービスを生成し ServiceManager に登録(addService)
  • XCube_Service を継承した Service.class.php を /service に作成
  • XCube_Service 継承クラスで addFunction を使い、サービスで提供する機能を登録
  • 登録したファンクションの中身をコード
  • addType で返り値の定義?

とりあえず動いたっぽい。
最後の addType の使い方が良く分かっていません。たぶん配列を返す際にキーと型を定義しているんだと思うのですが、Legacy_ArrayOfInt, Legacy_SearchModuleResult とかはなぜ定義されているのか分からない。定義はされているけど使われている気配がありません。

あと、XCat 関係で、Category, Category Group, Tree の三つのオブジェクトがあるんだけど、これは一つのサービスで扱ったほうがいいのかなあ。