com.springsource.bundlor.internal
Interface ArtefactAnalyser

All Known Implementing Classes:
AbstractXmlDocumentArtefactAnalyser, AsmTypeArtefactAnalyser, HibernateMappingArtefactAnalyser, JpaPersistenceArtefactAnalyser, PropertiesFileArtifactAnalyzer, SpringApplicationContextArtefactAnalyser, StaticResourceArtefactAnalyser, WebApplicationArtifactAnalyzer

public interface ArtefactAnalyser

Strategy interface for scanning artefacts in a JAR file and adding to the PartialManifest.

Concurrent Semantics
Implementations must be threadsafe.

Author:
Rob Harrop

Method Summary
 void analyse(java.io.InputStream artefact, java.lang.String artefactName, PartialManifest partialManifest)
          Analyse the supplied artefact and update the supplied PartialManifest as needed.
 boolean canAnalyse(java.lang.String artefactName)
          Can this ArtefactAnalyser analyse the artefact with the supplied name.
 

Method Detail

analyse

void analyse(java.io.InputStream artefact,
             java.lang.String artefactName,
             PartialManifest partialManifest)
             throws java.lang.Exception
Analyse the supplied artefact and update the supplied PartialManifest as needed.

Parameters:
artefact - the artefact to scan.
artefactName - the name of the artefact.
partialManifest - the PartialManifest to update.
Throws:
java.lang.Exception - if an error occurs during scanning.

canAnalyse

boolean canAnalyse(java.lang.String artefactName)
Can this ArtefactAnalyser analyse the artefact with the supplied name.

Parameters:
artefactName - the name of the artefact.
Returns:
true if the artefact can be analysed; otherwise false.