com.jeantessier.classreader
Class ClassfileLoader

java.lang.Object
  |
  +--com.jeantessier.classreader.ClassfileLoader
Direct Known Subclasses:
ClassfileLoaderDecorator, ClassfileLoaderEventSource

public abstract class ClassfileLoader
extends java.lang.Object

Base interface for parsing .class files. This should have been a Java interface, but I needed the protected contract for the Decorator Pattern.

See Also:
ClassfileLoaderDecorator

Constructor Summary
ClassfileLoader()
           
 
Method Summary
abstract  void addLoadListener(LoadListener listener)
           
abstract  Classfile Classfile(java.lang.String name)
           
abstract  java.util.Collection Classfiles()
           
abstract  java.util.Collection Classnames()
           
protected abstract  void fireBeginClassfile(java.lang.String filename, java.lang.String element)
           
protected abstract  void fireBeginGroup(java.lang.String filename, int size)
           
protected abstract  void fireBeginSession()
           
protected abstract  void fireEndClassfile(java.lang.String filename, java.lang.String element, Classfile classfile)
           
protected abstract  void fireEndGroup(java.lang.String filename)
           
protected abstract  void fireEndSession()
           
 void Load(java.util.Collection filenames)
           
protected abstract  Classfile Load(java.io.DataInputStream in)
           
protected abstract  void Load(java.lang.String filename)
           
abstract  void removeLoadListener(LoadListener listener)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClassfileLoader

public ClassfileLoader()
Method Detail

Classfile

public abstract Classfile Classfile(java.lang.String name)

Classfiles

public abstract java.util.Collection Classfiles()

Classnames

public abstract java.util.Collection Classnames()

Load

public void Load(java.util.Collection filenames)

Load

protected abstract void Load(java.lang.String filename)

addLoadListener

public abstract void addLoadListener(LoadListener listener)

removeLoadListener

public abstract void removeLoadListener(LoadListener listener)

fireBeginSession

protected abstract void fireBeginSession()

fireBeginGroup

protected abstract void fireBeginGroup(java.lang.String filename,
                                       int size)

fireBeginClassfile

protected abstract void fireBeginClassfile(java.lang.String filename,
                                           java.lang.String element)

fireEndClassfile

protected abstract void fireEndClassfile(java.lang.String filename,
                                         java.lang.String element,
                                         Classfile classfile)

fireEndGroup

protected abstract void fireEndGroup(java.lang.String filename)

fireEndSession

protected abstract void fireEndSession()

Load

protected abstract Classfile Load(java.io.DataInputStream in)
                           throws java.io.IOException