public final class DefaultPlexusContainer extends java.lang.Object implements MutablePlexusContainer
PlexusContainer shim that delegates to a Plexus-aware Guice Injector.| Modifier and Type | Class and Description |
|---|---|
(package private) class |
DefaultPlexusContainer.BootModule |
(package private) class |
DefaultPlexusContainer.ContainerModule |
(package private) class |
DefaultPlexusContainer.DefaultsModule |
(package private) class |
DefaultPlexusContainer.LoggerManagerProvider |
(package private) class |
DefaultPlexusContainer.LoggerProvider |
(package private) class |
DefaultPlexusContainer.SLF4JLoggerFactoryProvider |
| Modifier and Type | Field and Description |
|---|---|
(package private) ClassRealmManager |
classRealmManager |
private java.lang.String |
componentVisibility |
private com.google.inject.Module |
containerModule |
(package private) org.codehaus.plexus.classworlds.realm.ClassRealm |
containerRealm |
(package private) Context |
context |
private static java.lang.String |
DEFAULT_REALM_NAME |
private com.google.inject.Module |
defaultsModule |
(package private) java.util.Map<org.codehaus.plexus.classworlds.realm.ClassRealm,java.util.List<ComponentDescriptor<?>>> |
descriptorMap |
private boolean |
disposing |
private boolean |
isAutoWiringEnabled |
private Logger |
logger |
private LoggerManager |
loggerManager |
(package private) DefaultPlexusContainer.LoggerManagerProvider |
loggerManagerProvider |
(package private) java.lang.ThreadLocal<org.codehaus.plexus.classworlds.realm.ClassRealm> |
lookupRealm |
private static com.google.inject.Module[] |
NO_CUSTOM_MODULES |
(package private) PlexusBeanLocator |
plexusBeanLocator |
(package private) BeanManager |
plexusBeanManager |
(package private) java.util.concurrent.atomic.AtomicInteger |
plexusRank |
(package private) MutableBeanLocator |
qualifiedBeanLocator |
private BeanScanning |
scanning |
(package private) java.util.Map<?,?> |
variables |
| Constructor and Description |
|---|
DefaultPlexusContainer() |
DefaultPlexusContainer(ContainerConfiguration configuration) |
DefaultPlexusContainer(ContainerConfiguration configuration,
com.google.inject.Module... customModules) |
| Modifier and Type | Method and Description |
|---|---|
void |
addComponent(java.lang.Object component,
java.lang.String role) |
<T> void |
addComponent(T component,
java.lang.Class<?> role,
java.lang.String hint) |
<T> void |
addComponentDescriptor(ComponentDescriptor<T> descriptor) |
com.google.inject.Injector |
addPlexusInjector(java.util.List<? extends PlexusBeanModule> beanModules,
com.google.inject.Module... customModules) |
org.codehaus.plexus.classworlds.realm.ClassRealm |
createChildRealm(java.lang.String id) |
java.util.List<ComponentDescriptor<?>> |
discoverComponents(org.codehaus.plexus.classworlds.realm.ClassRealm realm) |
java.util.List<ComponentDescriptor<?>> |
discoverComponents(org.codehaus.plexus.classworlds.realm.ClassRealm realm,
com.google.inject.Module... customModules) |
void |
dispose() |
org.codehaus.plexus.classworlds.ClassWorld |
getClassWorld() |
<T> ComponentDescriptor<T> |
getComponentDescriptor(java.lang.Class<T> type,
java.lang.String role,
java.lang.String hint) |
ComponentDescriptor<?> |
getComponentDescriptor(java.lang.String role,
java.lang.String hint) |
<T> java.util.List<ComponentDescriptor<T>> |
getComponentDescriptorList(java.lang.Class<T> type,
java.lang.String role) |
java.util.List |
getComponentDescriptorList(java.lang.String role) |
<T> java.util.Map<java.lang.String,ComponentDescriptor<T>> |
getComponentDescriptorMap(java.lang.Class<T> type,
java.lang.String role) |
java.util.Map |
getComponentDescriptorMap(java.lang.String role) |
org.codehaus.plexus.classworlds.realm.ClassRealm |
getContainerRealm() |
Context |
getContext() |
private static Context |
getContextComponent(ContainerConfiguration configuration) |
Logger |
getLogger() |
LoggerManager |
getLoggerManager() |
org.codehaus.plexus.classworlds.realm.ClassRealm |
getLookupRealm() |
private java.util.Collection<org.codehaus.plexus.classworlds.realm.ClassRealm> |
getVisibleRealms() |
boolean |
hasComponent(java.lang.Class role) |
boolean |
hasComponent(java.lang.Class role,
java.lang.String hint) |
boolean |
hasComponent(java.lang.Class type,
java.lang.String role,
java.lang.String hint) |
boolean |
hasComponent(java.lang.String role) |
boolean |
hasComponent(java.lang.String role,
java.lang.String hint) |
private static <T> boolean |
hasPlexusBeans(java.lang.Iterable<PlexusBean<T>> beans) |
private <T> java.lang.Iterable<PlexusBean<T>> |
locate(java.lang.String role,
java.lang.Class<T> type,
java.lang.String... hints) |
<T> T |
lookup(java.lang.Class<T> role) |
<T> T |
lookup(java.lang.Class<T> role,
java.lang.String hint) |
<T> T |
lookup(java.lang.Class<T> type,
java.lang.String role,
java.lang.String hint) |
java.lang.Object |
lookup(java.lang.String role) |
java.lang.Object |
lookup(java.lang.String role,
java.lang.String hint) |
private static org.codehaus.plexus.classworlds.realm.ClassRealm |
lookupContainerRealm(ContainerConfiguration configuration)
Finds container
ClassRealm, taking existing ClassWorlds or ClassLoaders into account. |
<T> java.util.List<T> |
lookupList(java.lang.Class<T> role) |
java.util.List<java.lang.Object> |
lookupList(java.lang.String role) |
<T> java.util.Map<java.lang.String,T> |
lookupMap(java.lang.Class<T> role) |
java.util.Map<java.lang.String,java.lang.Object> |
lookupMap(java.lang.String role) |
private java.net.URL |
lookupPlexusXml(ContainerConfiguration configuration)
Finds container configuration URL, may search the container
ClassRealm and local file-system. |
private static <T> ComponentDescriptor<T> |
newComponentDescriptor(java.lang.String role,
PlexusBean<T> bean) |
private static BeanScanning |
parseScanningOption(java.lang.String scanning) |
void |
release(java.lang.Object component) |
void |
releaseAll(java.util.List<?> components) |
void |
releaseAll(java.util.Map<java.lang.String,?> components) |
void |
setLoggerManager(LoggerManager loggerManager) |
org.codehaus.plexus.classworlds.realm.ClassRealm |
setLookupRealm(org.codehaus.plexus.classworlds.realm.ClassRealm realm) |
private static final java.lang.String DEFAULT_REALM_NAME
private static final com.google.inject.Module[] NO_CUSTOM_MODULES
final java.util.concurrent.atomic.AtomicInteger plexusRank
final java.util.Map<org.codehaus.plexus.classworlds.realm.ClassRealm,java.util.List<ComponentDescriptor<?>>> descriptorMap
final java.lang.ThreadLocal<org.codehaus.plexus.classworlds.realm.ClassRealm> lookupRealm
final DefaultPlexusContainer.LoggerManagerProvider loggerManagerProvider
final MutableBeanLocator qualifiedBeanLocator
final Context context
final java.util.Map<?,?> variables
final org.codehaus.plexus.classworlds.realm.ClassRealm containerRealm
final ClassRealmManager classRealmManager
final PlexusBeanLocator plexusBeanLocator
final BeanManager plexusBeanManager
private final java.lang.String componentVisibility
private final boolean isAutoWiringEnabled
private final BeanScanning scanning
private final com.google.inject.Module containerModule
private final com.google.inject.Module defaultsModule
private LoggerManager loggerManager
private Logger logger
private boolean disposing
public DefaultPlexusContainer()
throws PlexusContainerException
PlexusContainerExceptionpublic DefaultPlexusContainer(ContainerConfiguration configuration) throws PlexusContainerException
PlexusContainerExceptionpublic DefaultPlexusContainer(ContainerConfiguration configuration, com.google.inject.Module... customModules) throws PlexusContainerException
PlexusContainerExceptionpublic Context getContext()
getContext in interface PlexusContainerpublic java.lang.Object lookup(java.lang.String role)
throws ComponentLookupException
lookup in interface PlexusContainerComponentLookupExceptionpublic java.lang.Object lookup(java.lang.String role,
java.lang.String hint)
throws ComponentLookupException
lookup in interface PlexusContainerComponentLookupExceptionpublic <T> T lookup(java.lang.Class<T> role)
throws ComponentLookupException
lookup in interface PlexusContainerComponentLookupExceptionpublic <T> T lookup(java.lang.Class<T> role,
java.lang.String hint)
throws ComponentLookupException
lookup in interface PlexusContainerComponentLookupExceptionpublic <T> T lookup(java.lang.Class<T> type,
java.lang.String role,
java.lang.String hint)
throws ComponentLookupException
lookup in interface PlexusContainerComponentLookupExceptionpublic java.util.List<java.lang.Object> lookupList(java.lang.String role)
throws ComponentLookupException
lookupList in interface PlexusContainerComponentLookupExceptionpublic <T> java.util.List<T> lookupList(java.lang.Class<T> role)
throws ComponentLookupException
lookupList in interface PlexusContainerComponentLookupExceptionpublic java.util.Map<java.lang.String,java.lang.Object> lookupMap(java.lang.String role)
throws ComponentLookupException
lookupMap in interface PlexusContainerComponentLookupExceptionpublic <T> java.util.Map<java.lang.String,T> lookupMap(java.lang.Class<T> role)
throws ComponentLookupException
lookupMap in interface PlexusContainerComponentLookupExceptionpublic boolean hasComponent(java.lang.String role)
hasComponent in interface PlexusContainerpublic boolean hasComponent(java.lang.String role,
java.lang.String hint)
hasComponent in interface PlexusContainerpublic boolean hasComponent(java.lang.Class role)
hasComponent in interface PlexusContainerpublic boolean hasComponent(java.lang.Class role,
java.lang.String hint)
hasComponent in interface PlexusContainerpublic boolean hasComponent(java.lang.Class type,
java.lang.String role,
java.lang.String hint)
hasComponent in interface PlexusContainerpublic void addComponent(java.lang.Object component,
java.lang.String role)
addComponent in interface PlexusContainerpublic <T> void addComponent(T component,
java.lang.Class<?> role,
java.lang.String hint)
addComponent in interface PlexusContainerpublic <T> void addComponentDescriptor(ComponentDescriptor<T> descriptor)
addComponentDescriptor in interface PlexusContainerpublic ComponentDescriptor<?> getComponentDescriptor(java.lang.String role, java.lang.String hint)
getComponentDescriptor in interface PlexusContainerpublic <T> ComponentDescriptor<T> getComponentDescriptor(java.lang.Class<T> type, java.lang.String role, java.lang.String hint)
getComponentDescriptor in interface PlexusContainerpublic java.util.List getComponentDescriptorList(java.lang.String role)
getComponentDescriptorList in interface PlexusContainerpublic <T> java.util.List<ComponentDescriptor<T>> getComponentDescriptorList(java.lang.Class<T> type, java.lang.String role)
getComponentDescriptorList in interface PlexusContainerpublic java.util.Map getComponentDescriptorMap(java.lang.String role)
getComponentDescriptorMap in interface PlexusContainerpublic <T> java.util.Map<java.lang.String,ComponentDescriptor<T>> getComponentDescriptorMap(java.lang.Class<T> type, java.lang.String role)
getComponentDescriptorMap in interface PlexusContainerpublic java.util.List<ComponentDescriptor<?>> discoverComponents(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
discoverComponents in interface PlexusContainerpublic java.util.List<ComponentDescriptor<?>> discoverComponents(org.codehaus.plexus.classworlds.realm.ClassRealm realm, com.google.inject.Module... customModules)
public com.google.inject.Injector addPlexusInjector(java.util.List<? extends PlexusBeanModule> beanModules, com.google.inject.Module... customModules)
public org.codehaus.plexus.classworlds.ClassWorld getClassWorld()
getClassWorld in interface MutablePlexusContainerpublic org.codehaus.plexus.classworlds.realm.ClassRealm getContainerRealm()
getContainerRealm in interface PlexusContainerpublic org.codehaus.plexus.classworlds.realm.ClassRealm setLookupRealm(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
setLookupRealm in interface PlexusContainerpublic org.codehaus.plexus.classworlds.realm.ClassRealm getLookupRealm()
getLookupRealm in interface PlexusContainerpublic org.codehaus.plexus.classworlds.realm.ClassRealm createChildRealm(java.lang.String id)
createChildRealm in interface PlexusContainerpublic LoggerManager getLoggerManager()
getLoggerManager in interface MutablePlexusContainer@Inject(optional=true) public void setLoggerManager(LoggerManager loggerManager)
setLoggerManager in interface MutablePlexusContainerpublic Logger getLogger()
getLogger in interface MutablePlexusContainerpublic void release(java.lang.Object component)
release in interface PlexusContainerpublic void releaseAll(java.util.Map<java.lang.String,?> components)
releaseAll in interface PlexusContainerpublic void releaseAll(java.util.List<?> components)
releaseAll in interface PlexusContainerpublic void dispose()
dispose in interface PlexusContainerprivate static BeanScanning parseScanningOption(java.lang.String scanning)
private static org.codehaus.plexus.classworlds.realm.ClassRealm lookupContainerRealm(ContainerConfiguration configuration) throws PlexusContainerException
ClassRealm, taking existing ClassWorlds or ClassLoaders into account.configuration - The container configurationPlexusContainerExceptionprivate java.net.URL lookupPlexusXml(ContainerConfiguration configuration)
ClassRealm and local file-system.configuration - The container configurationprivate static Context getContextComponent(ContainerConfiguration configuration)
private <T> java.lang.Iterable<PlexusBean<T>> locate(java.lang.String role, java.lang.Class<T> type, java.lang.String... hints)
private java.util.Collection<org.codehaus.plexus.classworlds.realm.ClassRealm> getVisibleRealms()
private static <T> boolean hasPlexusBeans(java.lang.Iterable<PlexusBean<T>> beans)
private static <T> ComponentDescriptor<T> newComponentDescriptor(java.lang.String role, PlexusBean<T> bean)