(2)Cairngorm2.2 CairngormEnterprise
今回は、Cairngorm2.2のEnterpriseの方のソースを見てみます。
Cairngorm2.2におけるEnterprise側のクラスは3つです。
IEnterpriseServiceLocator.as
EnterpriseServiceLocator.as
DataServices.as
■IEnterpriseServiceLocator.as
インターフェイスなので中身の説明は省略しますね
■EnterpriseServiceLocator.as
上記インターフェイスを実装し、ServiceLocatorを継承したクラス。
Enterpriseを使用する際は、こちらのEnterpriseServiceLocatorを利用することになりそうです。
シングルトンなので使用する際はgetInstance()を!
で、
中身ですが、基本的にはDataServicesインスタンスを保持する(管理する)クラスです。
そのほかには認証系のメソッドがあります。
■DataServices.as
AbstractServicesを継承したクラス。
基本的にサービスクラスをprivateメンバであるDictionaryで保持する。
Dictionaryへの登録は、register()メソッドで行っており、register()メソッドはEnterpriseServiceLocatorによって呼び出されます。
またregister()メソッド内では、DataServiceインスタンスを、使用者(プログラマ)が記述したServiceMXMLのアクセッサから取得しています(javaでいうリフレクションしてる →実際にはAbstractServiceがやってるっぽいですw)
あとは認証系w
というわけで、Cairngorm2.1と、使用方法はあまり変わらないっぽいが、中身(特にクラス個々のレイアウト)がけっこう変わっていました。
私は業務ではFDS使ってませんので、当面は使用しません。。。
次回は、普通の?Cairngorm2.2に戻って、ServiceLocator周りをチェックしてみます。