public class ImplementationManager
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected EnvironmentFactoryInternal |
environmentFactory |
protected Technology |
technology |
Constructor and Description |
---|
ImplementationManager(EnvironmentFactoryInternal environmentFactory) |
Modifier and Type | Method and Description |
---|---|
void |
addClassLoader(java.lang.ClassLoader classLoader) |
void |
dispose() |
java.util.List<java.lang.ClassLoader> |
getClassLoaders() |
LibraryProperty |
getPropertyImplementation(Element asNavigationExp,
java.lang.Object sourceValue,
Property property) |
LibraryFeature |
loadImplementation(Feature feature)
Return the implementation of a feature.
|
@NonNull protected final EnvironmentFactoryInternal environmentFactory
@NonNull protected final Technology technology
public ImplementationManager(@NonNull EnvironmentFactoryInternal environmentFactory)
public void addClassLoader(@NonNull java.lang.ClassLoader classLoader)
@NonNull public java.util.List<java.lang.ClassLoader> getClassLoaders()
@NonNull public LibraryProperty getPropertyImplementation(@Nullable Element asNavigationExp, @Nullable java.lang.Object sourceValue, @NonNull Property property)
public void dispose()
@Nullable public LibraryFeature loadImplementation(@NonNull Feature feature) throws java.lang.ClassNotFoundException, java.lang.SecurityException, java.lang.NoSuchFieldException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException
feature
- to be implemented.java.lang.ClassNotFoundException
- if the implementation class realising
the implementation is not loadablejava.lang.NoSuchFieldException
- if the implementation class realising
the implementation does not provide a static INSTANCE fieldjava.lang.SecurityException
- if the implementation class is not accessiblejava.lang.IllegalAccessException
- if the implementation class is not accessiblejava.lang.IllegalArgumentException
- if the implementation class is not accessible