package org.romaframework.aspect.reporting.jr.template;
import java.io.InputStream;
import java.util.List;
import net.sf.jasperreports.engine.design.JasperDesign;
import org.romaframework.aspect.reporting.ReportingException;
import org.romaframework.aspect.reporting.jr.DesignJr;
import org.romaframework.aspect.reporting.jr.domain.TemplateFile;
import org.romaframework.core.resource.AutoReloadListener;
import org.romaframework.core.schema.SchemaClassDefinition;
public interface TemplateManager extends AutoReloadListener {
public void addDesign(String iId, DesignJr iDesign);
public void removeDesign(String iId);
public DesignJr getDesign(String iId);
public JasperDesign getBaseDesign(String iName, SchemaClassDefinition schemaClass);
public JasperDesign getSubReportTemplate(String iName, SchemaClassDefinition schemaClass);
public JasperDesign getCustomSRFile(SchemaClassDefinition schemaClass, String id);
public void saveTemplate(JasperDesign design, SchemaClassDefinition clazz) throws Exception;
public List<TemplateFile> getTemplateFiles(SchemaClassDefinition classDefinition);
public InputStream getTemplateStream(TemplateFile template, SchemaClassDefinition schemaClassDefinition)
throws ReportingException;
public void uploadTemplate(InputStream stream, SchemaClassDefinition schemaClassDefinition, String fileName)
throws ReportingException;
}
|