Package org.eclipse.sisu.plexus
Class ClassRealmManager
- java.lang.Object
-
- org.eclipse.sisu.plexus.ClassRealmManager
-
- All Implemented Interfaces:
org.codehaus.plexus.classworlds.ClassWorldListener
public final class ClassRealmManager extends java.lang.Object implements org.codehaus.plexus.classworlds.ClassWorldListener
ManagesClassRealm
associated data for the Plexus container.
-
-
Field Summary
Fields Modifier and Type Field Description private MutableBeanLocator
beanLocator
private static boolean
GET_IMPORT_REALMS_SUPPORTED
private java.util.concurrent.ConcurrentMap<org.codehaus.plexus.classworlds.realm.ClassRealm,com.google.inject.Injector>
injectors
private static java.util.concurrent.ConcurrentMap<org.codehaus.plexus.classworlds.realm.ClassRealm,java.util.Set<java.lang.String>>
visibility
-
Constructor Summary
Constructors Constructor Description ClassRealmManager(MutableBeanLocator beanLocator)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static java.util.Set<java.lang.String>
computeVisibleNames(org.codehaus.plexus.classworlds.realm.ClassRealm forRealm)
static org.codehaus.plexus.classworlds.realm.ClassRealm
contextRealm()
boolean
isManaged(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
void
manage(org.codehaus.plexus.classworlds.realm.ClassRealm realm, com.google.inject.Injector injector)
Manages the association between the given realm and its injector.void
realmCreated(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
void
realmDisposed(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
static java.util.Set<java.lang.String>
visibleRealmNames(org.codehaus.plexus.classworlds.realm.ClassRealm contextRealm)
Walks theClassRealm
import graph to find all realms visible from the given realm.
-
-
-
Field Detail
-
GET_IMPORT_REALMS_SUPPORTED
private static final boolean GET_IMPORT_REALMS_SUPPORTED
-
visibility
private static final java.util.concurrent.ConcurrentMap<org.codehaus.plexus.classworlds.realm.ClassRealm,java.util.Set<java.lang.String>> visibility
-
injectors
private final java.util.concurrent.ConcurrentMap<org.codehaus.plexus.classworlds.realm.ClassRealm,com.google.inject.Injector> injectors
-
beanLocator
private final MutableBeanLocator beanLocator
-
-
Constructor Detail
-
ClassRealmManager
public ClassRealmManager(MutableBeanLocator beanLocator)
-
-
Method Detail
-
contextRealm
public static org.codehaus.plexus.classworlds.realm.ClassRealm contextRealm()
- Returns:
- Current context realm
-
visibleRealmNames
public static java.util.Set<java.lang.String> visibleRealmNames(org.codehaus.plexus.classworlds.realm.ClassRealm contextRealm)
Walks theClassRealm
import graph to find all realms visible from the given realm.- Parameters:
contextRealm
- The initial realm- Returns:
- Names of all realms visible from the given realm
-
isManaged
public boolean isManaged(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
- Returns:
true
if the realm is already managed, otherwisefalse
-
manage
public void manage(org.codehaus.plexus.classworlds.realm.ClassRealm realm, com.google.inject.Injector injector)
Manages the association between the given realm and its injector.- Parameters:
realm
- The realminjector
- The injector
-
realmCreated
public void realmCreated(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
- Specified by:
realmCreated
in interfaceorg.codehaus.plexus.classworlds.ClassWorldListener
-
realmDisposed
public void realmDisposed(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
- Specified by:
realmDisposed
in interfaceorg.codehaus.plexus.classworlds.ClassWorldListener
-
computeVisibleNames
private static java.util.Set<java.lang.String> computeVisibleNames(org.codehaus.plexus.classworlds.realm.ClassRealm forRealm)
-
-