public interface LaContainer extends MetaDefAware
コンポーネントの管理を行う機能を提供します。 コンポーネントとは1つかまたそれ以上のクラスで構成されるJavaオブジェクトです。 S2コンテナはコンポーネントの生成、コンポーネントの初期化、コンポーネントの取得を提供します。 コンポーネントを取得するキーには、コンポーネント名、コンポーネントのクラス、またはコンポーネントが実装するインターフェースを指定することができます。
S2コンテナ全体は複数のコンテナにより階層化されています。 一つのコンテナは複数のコンテナをインクルードすることができます。 複数のコンテナが同一のコンテナをインクルードすることができます。
インクルードの参照範囲についてのイメージを示します。

コンテナの検索順についてのイメージを示します。
S2コンテナは3種類のインジェクションをサポートします。
コンストラクタ・インジェクションセッター・インジェクションメソッド・インジェクションコンテナへの登録、コンテナからのコンポーネント取得、検索などを行うコンポーネントを管理する機能
getComponentgetComponentDefSizegetComponentDeffindComponentsfindAllComponentsfindLocalComponentsfindComponentDefsfindAllComponentDefsfindLocalComponentDefshasComponentDefregisterinjectDependencygetNamespacesetNamespacegetPath getPath getPathsetPath setPath setPathgetClassLoadersetClassLoaderinitdestroygetExternalContextsetExternalContextgetExternalContextComponentDefRegistersetExternalContextComponentDefRegisterhasDescendantgetDescendantregisterDescendantincludegetChildSizegetChildgetParentSizegetParentaddParentgetRootsetRootregisterMapaddMetaDef, getMetaDef, getMetaDef, getMetaDefs, getMetaDefSize<COMPONENT> COMPONENT getComponent(Object componentKey) throws ComponentNotFoundRuntimeException, TooManyRegistrationRuntimeException, CyclicReferenceRuntimeException
Object[] findComponents(Object componentKey) throws CyclicReferenceRuntimeException
Object[] findAllComponents(Object componentKey) throws CyclicReferenceRuntimeException
Object[] findLocalComponents(Object componentKey) throws CyclicReferenceRuntimeException
componentKey - The key of the component. (NotNull)CyclicReferenceRuntimeExceptionvoid injectDependency(Object outerComponent) throws ClassUnmatchRuntimeException
void injectDependency(Object outerComponent, Class<?> componentClass) throws ClassUnmatchRuntimeException
void injectDependency(Object outerComponent, String componentName) throws ClassUnmatchRuntimeException
void register(Object component)
void register(Class<?> componentClass)
void register(ComponentDef componentDef)
void registerByClass(ComponentDef componentDef)
int getComponentDefSize()
ComponentDef getComponentDef(int index)
ComponentDef getComponentDef(Object componentKey) throws ComponentNotFoundRuntimeException
ComponentDef[] findComponentDefs(Object componentKey)
ComponentDef[] findAllComponentDefs(Object componentKey)
ComponentDef[] findLocalComponentDefs(Object componentKey)
boolean hasComponentDef(Object componentKey)
boolean hasDescendant(String path)
LaContainer getDescendant(String path) throws ContainerNotRegisteredRuntimeException
void registerDescendant(LaContainer descendant)
void include(LaContainer child)
LaContainer findChild(String namespace)
int getChildSize()
LaContainer getChild(int index)
int getParentSize()
LaContainer getParent(int index)
void addParent(LaContainer parent)
void init()
void destroy()
void registerMap(Object key, ComponentDef componentDef, LaContainer container)
String getNamespace()
void setNamespace(String namespace)
boolean isInitializeOnCreate()
void setInitializeOnCreate(boolean initializeOnCreate)
String getPath()
void setPath(String path)
LaContainer getRoot()
void setRoot(LaContainer root)
ExternalContext getExternalContext()
void setExternalContext(ExternalContext externalContext)
ExternalContextComponentDefRegister getExternalContextComponentDefRegister()
void setExternalContextComponentDefRegister(ExternalContextComponentDefRegister externalContextComponentDefRegister)
ClassLoader getClassLoader()
void setClassLoader(ClassLoader classLoader)
Copyright © 2015 The DBFlute Project. All rights reserved.