org.apache.jdo.impl.enhancer
Class ClassFileEnhancerTimer

java.lang.Object
  extended byorg.apache.jdo.impl.enhancer.util.Assertion
      extended byorg.apache.jdo.impl.enhancer.util.Support
          extended byorg.apache.jdo.impl.enhancer.ClassFileEnhancerTimer
All Implemented Interfaces:
ClassFileEnhancer

public final class ClassFileEnhancerTimer
extends Support
implements ClassFileEnhancer

Timer-wrapper for ClassFileEnhancer instances.

Author:
Martin Zaun

Field Summary
protected  ClassFileEnhancer delegate
           
 
Fields inherited from class org.apache.jdo.impl.enhancer.util.Support
timer
 
Constructor Summary
ClassFileEnhancerTimer(ClassFileEnhancer delegate)
          Creates an instance.
 
Method Summary
 boolean enhanceClassFile(java.io.InputStream inClassFile, java.io.OutputStream outClassFile)
          Enhances a given class according to the JDO meta-data.
 boolean enhanceClassFile(java.io.InputStream inClassFile, OutputStreamWrapper outClassFile)
          Enhances a given class according to the JDO meta-data.
 
Methods inherited from class org.apache.jdo.impl.enhancer.util.Support
getI18N, getI18N, getI18N, getI18N, getI18N, getI18N
 
Methods inherited from class org.apache.jdo.impl.enhancer.util.Assertion
affirm, affirm, affirm, affirm
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

delegate

protected final ClassFileEnhancer delegate
Constructor Detail

ClassFileEnhancerTimer

public ClassFileEnhancerTimer(ClassFileEnhancer delegate)
Creates an instance.

Method Detail

enhanceClassFile

public boolean enhanceClassFile(java.io.InputStream inClassFile,
                                java.io.OutputStream outClassFile)
                         throws EnhancerUserException,
                                EnhancerFatalError
Description copied from interface: ClassFileEnhancer
Enhances a given class according to the JDO meta-data. If the input class has been enhanced or not - the output stream is always written, either with the enhanced class or with the non-enhanced class.

Specified by:
enhanceClassFile in interface ClassFileEnhancer
Parameters:
inClassFile - The byte-code of the class to be enhanced.
outClassFile - The byte-code of the enhanced class.
Returns:
true if the class has been enhanced, false otherwise.
Throws:
EnhancerUserException
EnhancerFatalError

enhanceClassFile

public boolean enhanceClassFile(java.io.InputStream inClassFile,
                                OutputStreamWrapper outClassFile)
                         throws EnhancerUserException,
                                EnhancerFatalError
Description copied from interface: ClassFileEnhancer
Enhances a given class according to the JDO meta-data. If the input class has been enhanced or not - the output stream is always written, either with the enhanced class or with the non-enhanced class.

Furthermore, the enhancer has to set the classname of the enhanced class to the output stream wrapper object (it's possible to get the input stream without knowing the classname).

Specified by:
enhanceClassFile in interface ClassFileEnhancer
Parameters:
inClassFile - The byte-code of the class to be enhanced.
outClassFile - The byte-code of the enhanced class.
Returns:
true if the class has been enhanced, false otherwise.
Throws:
EnhancerUserException
EnhancerFatalError


Copyright © 2005-2007 Apache Software Foundation. All Rights Reserved.