Package org.mapfish.print.processor.map
Class CreateMapProcessor
- java.lang.Object
-
- org.mapfish.print.processor.AbstractProcessor<CreateMapProcessor.Input,CreateMapProcessor.Output>
-
- org.mapfish.print.processor.map.CreateMapProcessor
-
- All Implemented Interfaces:
ConfigurationObject
,Processor<CreateMapProcessor.Input,CreateMapProcessor.Output>
public final class CreateMapProcessor extends AbstractProcessor<CreateMapProcessor.Input,CreateMapProcessor.Output>
A processor to render a map that can be embedded as a sub-report into a JasperReports template.See also: !map attribute [[examples=verboseExample]]
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CreateMapProcessor.Input
The Input object for processor.static class
CreateMapProcessor.Output
Output for the processor.-
Nested classes/interfaces inherited from class org.mapfish.print.processor.AbstractProcessor
AbstractProcessor.Context
-
Nested classes/interfaces inherited from interface org.mapfish.print.processor.Processor
Processor.ExecutionContext
-
-
Field Summary
-
Fields inherited from interface org.mapfish.print.processor.Processor
MDC_APPLICATION_ID_KEY, MDC_JOB_ID_KEY
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
CreateMapProcessor()
Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MapBounds
adjustBoundsToScaleAndMapSize(GenericMapAttribute.GenericMapAttributeValues mapValues, java.awt.Rectangle paintArea, MapBounds bounds, double dpi)
If requested, adjust the bounds to the nearest scale and the map size.CreateMapProcessor.Input
createInputParameter()
Returns a new/clean instance of a parameter object.static MapfishMapContext
createMapContext(MapAttribute.MapAttributeValues mapValues)
static org.apache.batik.svggen.SVGGraphics2D
createSvgGraphics(java.awt.Dimension size)
Create a SVG graphic with the give dimensions.CreateMapProcessor.Output
execute(CreateMapProcessor.Input param, Processor.ExecutionContext context)
Perform the process on the input attributes.protected void
extraValidation(java.util.List<java.lang.Throwable> validationErrors, Configuration configuration)
Perform any extra validation a subclass may need to perform.static void
saveSvgFile(org.apache.batik.svggen.SVGGraphics2D graphics2d, java.io.File path)
Save a SVG graphic to the given path.-
Methods inherited from class org.mapfish.print.processor.AbstractProcessor
getInputMapperBiMap, getInputPrefix, getOutputMapperBiMap, getOutputPrefix, getOutputType, setInputMapper, setInputPrefix, setOutputMapper, setOutputPrefix, setPrefix, toString, toString, validate
-
-
-
-
Method Detail
-
createMapContext
public static MapfishMapContext createMapContext(MapAttribute.MapAttributeValues mapValues)
- Parameters:
mapValues
- The map parameters.- Returns:
- The map context.
-
adjustBoundsToScaleAndMapSize
public static MapBounds adjustBoundsToScaleAndMapSize(GenericMapAttribute.GenericMapAttributeValues mapValues, java.awt.Rectangle paintArea, MapBounds bounds, double dpi)
If requested, adjust the bounds to the nearest scale and the map size.- Parameters:
mapValues
- Map parameters.paintArea
- The size of the painting area.bounds
- The map bounds.dpi
- the DPI.
-
createSvgGraphics
public static org.apache.batik.svggen.SVGGraphics2D createSvgGraphics(java.awt.Dimension size) throws javax.xml.parsers.ParserConfigurationException
Create a SVG graphic with the give dimensions.- Parameters:
size
- The size of the SVG graphic.- Throws:
javax.xml.parsers.ParserConfigurationException
-
saveSvgFile
public static void saveSvgFile(org.apache.batik.svggen.SVGGraphics2D graphics2d, java.io.File path) throws java.io.IOException
Save a SVG graphic to the given path.- Parameters:
graphics2d
- The SVG graphic to save.path
- The file.- Throws:
java.io.IOException
-
createInputParameter
public CreateMapProcessor.Input createInputParameter()
Description copied from interface:Processor
Returns a new/clean instance of a parameter object. This instance's will be inspected using reflection to find its public fields and the properties will be set from theValues
object.The way the properties will be looked up is to
- take the bean property name
- map it using the input mapper, (if the input mapper does not have a mapping for the property then the unmapped property name is used)
- Look up the property value in the
Values
object using the mapped property name - set the value on the instance created by this method. If the value is null an exception
will be thrown UNLESS the
HasDefaultValue
annotation is on the field for the property.
It is important to realize that super classes will also be analyzed, so care must be had with inheritance.
-
execute
public CreateMapProcessor.Output execute(CreateMapProcessor.Input param, Processor.ExecutionContext context) throws java.io.IOException, javax.xml.parsers.ParserConfigurationException, net.sf.jasperreports.engine.JRException
Description copied from interface:Processor
Perform the process on the input attributes.- Parameters:
param
- A Java object whose public fields are populated from theValues
object (which is used for transferring properties between processors).context
- The execution context for a print task.- Returns:
- A Java object whose public fields will be put into the
Values
object. The key in theValues
object is the name of the field or if there is a mapping in theProcessor.getOutputMapperBiMap()
map, the mapped name. The key is determined in a similar way as for the input object. - Throws:
java.io.IOException
javax.xml.parsers.ParserConfigurationException
net.sf.jasperreports.engine.JRException
-
extraValidation
protected void extraValidation(java.util.List<java.lang.Throwable> validationErrors, Configuration configuration)
Description copied from class:AbstractProcessor
Perform any extra validation a subclass may need to perform.- Specified by:
extraValidation
in classAbstractProcessor<CreateMapProcessor.Input,CreateMapProcessor.Output>
- Parameters:
validationErrors
- a list to add errors to so that all validation errors are reported as one.configuration
- the containing configuration
-
-