public class FabClassPathResolver extends Object implements io.fabric8.fab.FabConfiguration
| Modifier and Type | Field and Description |
|---|---|
protected List<io.fabric8.common.util.Filter<io.fabric8.fab.DependencyTree>> |
pruningFilters |
| Constructor and Description |
|---|
FabClassPathResolver(FabFacade connection,
Properties instructions,
Map<String,Object> embeddedResources) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addBundleClassPath(String path) |
protected void |
addDependencies(io.fabric8.fab.DependencyTree tree) |
protected void |
addInstallDependencies(io.fabric8.fab.DependencyTree node) |
protected void |
addPackages(io.fabric8.fab.DependencyTree tree) |
protected void |
addPackagesRecursive(io.fabric8.fab.DependencyTree tree)
Recursively add all the package information for each node in the tree, before filtering takes place!
|
void |
addPruningFilter(io.fabric8.common.util.Filter<io.fabric8.fab.DependencyTree> filter) |
protected void |
addSharedDependency(io.fabric8.fab.DependencyTree tree) |
Map<String,io.fabric8.fab.DependencyTree> |
getDependenciesByPackage() |
Map<String,Map<String,String>> |
getExtraImportPackages() |
List<io.fabric8.fab.DependencyTree> |
getInstallDependencies() |
Collection<String> |
getInstallFeatures() |
Collection<URI> |
getInstallFeatureURLs() |
Manifest |
getManifest() |
String |
getManifestProperty(String name) |
List<io.fabric8.fab.DependencyTree> |
getNonSharedDependencies() |
List<io.fabric8.fab.DependencyTree> |
getOptionalDependencies() |
io.fabric8.common.util.Filter<io.fabric8.fab.DependencyTree> |
getOptionalDependencyFilter()
Returns a Filter which returns true if the dependency should be treated as optional (and so excluded by default) or false if the dependency matches
the
ServiceConstants.INSTR_FAB_OPTIONAL_DEPENDENCY pattern |
io.fabric8.fab.DependencyTree |
getRootTree() |
List<io.fabric8.fab.DependencyTree> |
getSharedDependencies() |
String |
getStringProperty(String name) |
protected void |
importAllExportedPackages(io.fabric8.fab.DependencyTree dependencyTree) |
protected boolean |
includeSharedResources(io.fabric8.fab.DependencyTree tree)
If there are any matching shared resources using the current filters
then extract them from the jar and create a new jar to be added to the Bundle-ClassPath
containing the shared resources; which are then added to the flat class path to avoid
breaking the META-INF/services contracts
|
protected boolean |
isExcludedDependency(io.fabric8.fab.DependencyTree child) |
protected boolean |
isIncludedOptionaDependency(io.fabric8.fab.DependencyTree child) |
protected boolean |
isInstallProvidedBundleDependencies()
Get the value of the
ServiceConstants.INSTR_FAB_INSTALL_PROVIDED_BUNDLE_DEPENDENCIES |
boolean |
isOffline() |
boolean |
isProcessImportPackages() |
protected boolean |
isSharedOrRequired(io.fabric8.fab.DependencyTree child) |
protected void |
processFabInstructions() |
void |
resolve() |
protected void |
resolveExtensions(io.fabric8.fab.DependencyTree root,
io.fabric8.common.util.Filter<org.sonatype.aether.graph.Dependency> excludeDependencyFilter) |
protected final List<io.fabric8.common.util.Filter<io.fabric8.fab.DependencyTree>> pruningFilters
public FabClassPathResolver(FabFacade connection, Properties instructions, Map<String,Object> embeddedResources)
public void resolve()
throws org.sonatype.aether.RepositoryException,
IOException,
org.osgi.framework.BundleException
org.sonatype.aether.RepositoryExceptionIOExceptionorg.osgi.framework.BundleExceptionprotected void processFabInstructions()
public List<io.fabric8.fab.DependencyTree> getInstallDependencies()
public List<io.fabric8.fab.DependencyTree> getSharedDependencies()
public List<io.fabric8.fab.DependencyTree> getNonSharedDependencies()
public boolean isOffline()
public io.fabric8.fab.DependencyTree getRootTree()
public io.fabric8.common.util.Filter<io.fabric8.fab.DependencyTree> getOptionalDependencyFilter()
ServiceConstants.INSTR_FAB_OPTIONAL_DEPENDENCY patternprotected void resolveExtensions(io.fabric8.fab.DependencyTree root,
io.fabric8.common.util.Filter<org.sonatype.aether.graph.Dependency> excludeDependencyFilter)
throws IOException,
org.sonatype.aether.RepositoryException
IOExceptionorg.sonatype.aether.RepositoryExceptionprotected void importAllExportedPackages(io.fabric8.fab.DependencyTree dependencyTree)
public boolean isProcessImportPackages()
public Manifest getManifest()
protected void addPackagesRecursive(io.fabric8.fab.DependencyTree tree)
protected void addPackages(io.fabric8.fab.DependencyTree tree)
protected void addDependencies(io.fabric8.fab.DependencyTree tree)
throws IOException
IOExceptionprotected boolean isIncludedOptionaDependency(io.fabric8.fab.DependencyTree child)
protected boolean isExcludedDependency(io.fabric8.fab.DependencyTree child)
protected boolean isSharedOrRequired(io.fabric8.fab.DependencyTree child)
protected void addSharedDependency(io.fabric8.fab.DependencyTree tree)
throws IOException
IOExceptionprotected boolean includeSharedResources(io.fabric8.fab.DependencyTree tree)
throws IOException
IOExceptionprotected void addBundleClassPath(String path)
protected void addInstallDependencies(io.fabric8.fab.DependencyTree node)
public Collection<String> getInstallFeatures()
public Collection<URI> getInstallFeatureURLs()
public Map<String,io.fabric8.fab.DependencyTree> getDependenciesByPackage()
public List<io.fabric8.fab.DependencyTree> getOptionalDependencies()
public void addPruningFilter(io.fabric8.common.util.Filter<io.fabric8.fab.DependencyTree> filter)
protected boolean isInstallProvidedBundleDependencies()
ServiceConstants.INSTR_FAB_INSTALL_PROVIDED_BUNDLE_DEPENDENCIEStrue if the MANIFEST.MF header has been set to trueCopyright © 2011–2014 Red Hat. All rights reserved.