net.sf.appinfo.reader
Class AbstractManifestReader

java.lang.Object
  extended by net.sf.appinfo.reader.AbstractManifestReader
All Implemented Interfaces:
ManifestReader
Direct Known Subclasses:
FileManifestReader, JarManifestReader, ServletContextManifestReader

public abstract class AbstractManifestReader
extends Object
implements ManifestReader

Abstract ManifestReader implementation with common mechanisms (like synchronization and exception conversion) delegating Manifest initialization to concrete subclasses.

Since:
0.5.2
Author:
Marcin ZajÄ…czkowski, 2010-12-21

Constructor Summary
AbstractManifestReader()
           
 
Method Summary
 Manifest getManifest()
          Returns initialized Manifest object.
protected abstract  Manifest initializeAndReturnManifest()
          Delegated initialization (and return of) Manifest object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractManifestReader

public AbstractManifestReader()
Method Detail

getManifest

public Manifest getManifest()
                     throws ReaderInitializationException
Returns initialized Manifest object.

Specified by:
getManifest in interface ManifestReader
Returns:
Manifest object
Throws:
ReaderInitializationException - problem with (manifest)reader initialization

initializeAndReturnManifest

protected abstract Manifest initializeAndReturnManifest()
                                                 throws ReaderInitializationException,
                                                        IOException
Delegated initialization (and return of) Manifest object. Should be implemented in concreate classes which create Manifest from data in file, JAR, etc. Throwing IOException isn't very pretty, but it allows to remove duplication and move conversion IOException to ReaderInitializationException to a superclass. It's only internal method in ManifestReader hierarchy and doesn't complicate cooperation with other classes.

Returns:
initialized Manifest object
Throws:
IOException - error during Manifest initialization
ReaderInitializationException - other (no IO) error during Manifest initialization


Copyright © 2010-2011. All Rights Reserved.