public class BeanContainerImpl extends Object implements ExtendedBeanContainer
| Modifier and Type | Field and Description |
|---|---|
protected static org.slf4j.Logger |
logger |
ANONYMOUS_BEAN_PREFIX, PROTOTYPE_BEAN_PREFIX| Constructor and Description |
|---|
BeanContainerImpl() |
| Modifier and Type | Method and Description |
|---|---|
void |
addOrReplaceProperty(Property prop,
Collection<Property> set)
Add or replace a Property in a bean's property set
Also updates a the Map of Property with a bean ref.
|
Bean |
duplicateBean(String id,
String alias,
Bean parent,
boolean isAnonymous)
Duplicate a Bean's definition, changing id, alias and anonymous status on the fly
|
String |
generateAnonymousBeanId() |
protected String |
generatePrototypeBeanId(String beanName) |
Map<String,String> |
getAliases() |
Bean |
getBean(String id)
Resolve a bean by name, id or alias
|
Map<String,Bean> |
getBeans()
Retrieve all resolved Beans in the container
|
LinkedHashSet<String> |
getOrderedBeanIds()
Resolve beans dependencies to order them so that for each Bean, all its dependencies are ordered before it
|
LinkedList<Bean> |
getOrderedBeans()
Resolve beans dependencies to order them so that for each Bean, all its dependencies are ordered before it
|
DependencyManager<DefinitionDependency> |
getParentDependencyManager() |
List<Property> |
getPropertyReferences() |
Set<String> |
getPrototypeBeans() |
DependencyManager<RunTimeDependency> |
getRunTimeDependencyManager() |
void |
register(Bean bean)
Register a bean in the bean map
|
void |
register(ExtendedBeanContainer container)
Register another ExtendedBeanContainer's content into this ExtendedBeanContainer
Merge parent and runtime dependencies, prototypeBeans, aliases and propertyReferences
|
void |
register(Map<String,Bean> beans)
Register a set of beans in the bean map
|
void |
registerAlias(String beanName,
String alias)
Register a name alias
|
void |
registerParent(DefinitionDependency dependency)
Register a bean -> parent dependency
|
void |
registerRunTimeDependency(RunTimeDependency dependency)
Register a bean -> parent dependency
|
void |
resolveParentDefinition()
Resolve all parent definitions
|
void |
resolveReferences()
Resolve aliases and prototype references once for all
|
public String generateAnonymousBeanId()
generateAnonymousBeanId in interface BeanContainerprotected String generatePrototypeBeanId(String beanName)
public void addOrReplaceProperty(Property prop, Collection<Property> set)
addOrReplaceProperty in interface BeanContainerprop - set - public Bean duplicateBean(String id, String alias, Bean parent, boolean isAnonymous)
BeanContainerduplicateBean in interface BeanContainerid - of the duplicated Beanalias - of the duplicated Beanparent - Bean to be duplicatedisAnonymous - whether the duplicated Bean should be anonymous or notpublic void register(Bean bean)
register in interface BeanContainerbean - to be registeredpublic void register(Map<String,Bean> beans)
register in interface BeanContainerbeans - public void registerAlias(String beanName, String alias)
registerAlias in interface BeanContainerbeanName - to be referenced by the aliasalias - of the Beanpublic void registerParent(DefinitionDependency dependency)
registerParent in interface BeanContainerdependency - to be registeredpublic void registerRunTimeDependency(RunTimeDependency dependency)
registerRunTimeDependency in interface BeanContainerdependency - to be registeredpublic void register(ExtendedBeanContainer container)
register in interface ExtendedBeanContainercontainer - whose content is to be register in the current containerpublic Bean getBean(String id)
getBean in interface SimpleBeanContainerid - of the Bean to retrievepublic Map<String,Bean> getBeans()
getBeans in interface SimpleBeanContainerpublic void resolveParentDefinition()
resolveParentDefinition in interface ExtendedBeanContainerpublic LinkedHashSet<String> getOrderedBeanIds()
BeanContainergetOrderedBeanIds in interface BeanContainerpublic LinkedList<Bean> getOrderedBeans()
BeanContainergetOrderedBeans in interface BeanContainerpublic void resolveReferences()
ExtendedBeanContainerresolveReferences in interface ExtendedBeanContainerpublic DependencyManager<DefinitionDependency> getParentDependencyManager()
getParentDependencyManager in interface ExtendedBeanContainerpublic DependencyManager<RunTimeDependency> getRunTimeDependencyManager()
getRunTimeDependencyManager in interface ExtendedBeanContainerpublic Set<String> getPrototypeBeans()
getPrototypeBeans in interface ExtendedBeanContainerpublic List<Property> getPropertyReferences()
getPropertyReferences in interface ExtendedBeanContainerpublic Map<String,String> getAliases()
getAliases in interface ExtendedBeanContainerCopyright © 2012-2013 Static IOC OSS project. All Rights Reserved.