com.springsource.bundlor.support.contributors
Class BundleClassPathArtifactAnalyzer

java.lang.Object
  extended by com.springsource.bundlor.support.contributors.BundleClassPathArtifactAnalyzer
All Implemented Interfaces:
ArtifactAnalyzer, ManifestContributor

public class BundleClassPathArtifactAnalyzer
extends java.lang.Object
implements ArtifactAnalyzer, ManifestContributor


Nested Class Summary
private static class BundleClassPathArtifactAnalyzer.JarInputStreamClassPath
           
private static class BundleClassPathArtifactAnalyzer.JarInputStreamClassPathEntry
           
 
Field Summary
private  java.util.List<ArtifactAnalyzer> artifactAnalyzers
           
private  java.util.List<java.lang.String> bundleClassPaths
           
private  java.lang.Object monitor
           
 
Constructor Summary
BundleClassPathArtifactAnalyzer(java.util.List<ArtifactAnalyzer> artifactAnalyzers)
           
 
Method Summary
 void analyse(java.io.InputStream artifact, java.lang.String artefactName, PartialManifest partialManifest)
          Analyse the supplied artefact and update the supplied PartialManifest as needed.
private  void analyzeEntries(ClassPath classPath, PartialManifest partialManifest)
           
private  void analyzeEntry(ClassPathEntry classPathEntry, PartialManifest partialManifest)
           
 boolean canAnalyse(java.lang.String artefactName)
          Can this ArtifactAnalyzer analyse the artefact with the supplied name.
 void contribute(com.springsource.util.parser.manifest.ManifestContents manifest)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

bundleClassPaths

private final java.util.List<java.lang.String> bundleClassPaths

artifactAnalyzers

private final java.util.List<ArtifactAnalyzer> artifactAnalyzers

monitor

private final java.lang.Object monitor
Constructor Detail

BundleClassPathArtifactAnalyzer

public BundleClassPathArtifactAnalyzer(java.util.List<ArtifactAnalyzer> artifactAnalyzers)
Method Detail

analyse

public void analyse(java.io.InputStream artifact,
                    java.lang.String artefactName,
                    PartialManifest partialManifest)
             throws java.lang.Exception
Description copied from interface: ArtifactAnalyzer
Analyse the supplied artefact and update the supplied PartialManifest as needed.

Specified by:
analyse in interface ArtifactAnalyzer
partialManifest - the PartialManifest to update.
Throws:
java.lang.Exception - if an error occurs during scanning.

canAnalyse

public boolean canAnalyse(java.lang.String artefactName)
Description copied from interface: ArtifactAnalyzer
Can this ArtifactAnalyzer analyse the artefact with the supplied name.

Specified by:
canAnalyse in interface ArtifactAnalyzer
Returns:
true if the artefact can be analysed; otherwise false.

contribute

public void contribute(com.springsource.util.parser.manifest.ManifestContents manifest)
Specified by:
contribute in interface ManifestContributor

analyzeEntries

private void analyzeEntries(ClassPath classPath,
                            PartialManifest partialManifest)

analyzeEntry

private void analyzeEntry(ClassPathEntry classPathEntry,
                          PartialManifest partialManifest)