Class JRAbstractClassCompiler
- java.lang.Object
-
- net.sf.jasperreports.engine.design.JRAbstractCompiler
-
- net.sf.jasperreports.engine.design.JRAbstractJavaCompiler
-
- net.sf.jasperreports.engine.design.JRAbstractClassCompiler
-
- All Implemented Interfaces:
JRClassCompiler
,JRCompiler
,JRMultiClassCompiler
- Direct Known Subclasses:
JRAbstractMultiClassCompiler
,JRAbstractSingleClassCompiler
public abstract class JRAbstractClassCompiler extends JRAbstractJavaCompiler implements JRMultiClassCompiler
- Author:
- Teodor Danciu (teodord@users.sourceforge.net)
-
-
Field Summary
-
Fields inherited from class net.sf.jasperreports.engine.design.JRAbstractJavaCompiler
EXCEPTION_MESSAGE_KEY_EXPECTED_JAVA_LANGUAGE, EXCEPTION_MESSAGE_KEY_EXPRESSION_CLASS_NOT_LOADED, PROPERTY_EVALUATOR_CLASS_REFERENCE_FIX_ENABLED
-
Fields inherited from class net.sf.jasperreports.engine.design.JRAbstractCompiler
EXCEPTION_MESSAGE_KEY_CROSSTAB_ID_NOT_FOUND, EXCEPTION_MESSAGE_KEY_DESIGN_COMPILE_ERROR, EXCEPTION_MESSAGE_KEY_LANGUAGE_NOT_SUPPORTED, EXCEPTION_MESSAGE_KEY_REPORT_EXPRESSIONS_COMPILE_ERROR, EXCEPTION_MESSAGE_KEY_TEMP_DIR_NOT_FOUND, jasperReportsContext, reportClassFilter
-
Fields inherited from interface net.sf.jasperreports.engine.design.JRCompiler
COMPILER_CLASS, COMPILER_CLASSPATH, COMPILER_KEEP_JAVA_FILE, COMPILER_PREFIX, COMPILER_TEMP_DIR
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
JRAbstractClassCompiler(JasperReportsContext jasperReportsContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
checkLanguage(String language)
Checks that the report language is supported by the compiler.protected String
compileUnits(JRCompilationUnit[] units, String classpath, File tempDirFile)
Compiles several expression evaluator units.protected JRCompilationSourceCode
generateSourceCode(JRSourceCompileTask sourceTask)
Generates expression evaluator code.protected String
getSourceFileName(String unitName)
Returns the name of the source file where generated source code for an unit is saved.-
Methods inherited from class net.sf.jasperreports.engine.design.JRAbstractJavaCompiler
classCacheKey, directValueFilter, getClassFromCache, loadClass, loadClass, loadEvaluator, putClassInCache, toCompiledClasses
-
Methods inherited from class net.sf.jasperreports.engine.design.JRAbstractCompiler
compileReport, createCompileData, createEvaluator, effectiveDirectValueFilter, getCompilerClass, getSourceFile, getUnitName, getUnitName, getUnitName, getUnitName, getUnitName, loadEvaluator, loadEvaluator, loadEvaluator
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sf.jasperreports.engine.design.JRClassCompiler
compileClass
-
Methods inherited from interface net.sf.jasperreports.engine.design.JRMultiClassCompiler
compileClasses
-
-
-
-
Constructor Detail
-
JRAbstractClassCompiler
protected JRAbstractClassCompiler(JasperReportsContext jasperReportsContext)
-
-
Method Detail
-
compileUnits
protected String compileUnits(JRCompilationUnit[] units, String classpath, File tempDirFile) throws JRException
Description copied from class:JRAbstractCompiler
Compiles several expression evaluator units.The result of the compilation should be set by calling
setCompileData
on all compile units.- Specified by:
compileUnits
in classJRAbstractCompiler
- Parameters:
units
- the compilation unitsclasspath
- the compilation classpathtempDirFile
- temporary directory- Returns:
- a string containing compilation errors, or null if the compilation was successfull
- Throws:
JRException
-
checkLanguage
protected void checkLanguage(String language) throws JRException
Description copied from class:JRAbstractCompiler
Checks that the report language is supported by the compiler.- Specified by:
checkLanguage
in classJRAbstractCompiler
- Parameters:
language
- the report language- Throws:
JRException
-
generateSourceCode
protected JRCompilationSourceCode generateSourceCode(JRSourceCompileTask sourceTask) throws JRException
Description copied from class:JRAbstractCompiler
Generates expression evaluator code.- Specified by:
generateSourceCode
in classJRAbstractCompiler
- Parameters:
sourceTask
- the source code generation information- Returns:
- generated expression evaluator code
- Throws:
JRException
-
getSourceFileName
protected String getSourceFileName(String unitName)
Description copied from class:JRAbstractCompiler
Returns the name of the source file where generated source code for an unit is saved.If the compiler needs source files for compilation or
COMPILER_KEEP_JAVA_FILE
is set, the generated source will be saved in a file having the name returned by this method.- Specified by:
getSourceFileName
in classJRAbstractCompiler
- Parameters:
unitName
- the unit name- Returns:
- the source file name
-
-