org.opengis.test.report
Class OperationParametersReport

Show UML class diagram
Object
  extended by Report
      extended by OperationParametersReport

public class OperationParametersReport
extends Report

Generates a list of operations (typically map projections) and their parameters. The operations are described by instances of an IdentifiedObject subtype, for example coordinates OperationMethod. Each operation can be associated to a ParameterDescriptorGroup instance. Those elements can be added individually in the rows list. Alternatively, a convenience method can be used for adding all operation methods available from a given MathTransformFactory.

This class recognizes the following property values:

Key Remarks Meaning
TITLE   Title of the web page to produce.
DESCRIPTION optional Description to write after the introductory paragraph.
OBJECTS.KIND   Kind of objects listed in the page (e.g. "Operation Methods").
PRODUCT.NAME   Name of the product for which the report is generated.
PRODUCT.VERSION  Version of the product for which the report is generated.
PRODUCT.URL   URL where more information is available about the product.
JAVADOC.GEOAPI predefinedBase URL of GeoAPI javadoc.
FILENAME predefinedName of the file to create if the write(File) argument is a directory.

How to use this class:

Since:
3.1

Nested Class Summary
protected static class OperationParametersReport.Row
          A single row in the table produced by OperationParametersReport.
 
Field Summary
protected  List<OperationParametersReport.Row> rows
          The operations to publish in the HTML report.
 
Fields inherited from class Report
properties
 
Constructor Summary
OperationParametersReport(Properties properties)
          Creates a new report generator using the given property values.
 
Method Summary
 void add(IdentifiedObject operation, ParameterDescriptorGroup parameters)
          Adds an operation to be show on the HTML page.
 void add(MathTransformFactory factory)
          Convenience method adding all available methods from the given factory.
protected  OperationParametersReport.Row createRow(IdentifiedObject operation, ParameterDescriptorGroup parameters, Set<String> codeSpaces)
          Creates a new row for the given operation and parameters.
 File write(File destination)
          Formats the current content of the rows list as a HTML page in the given file.
 
Methods inherited from class Report
getLocale, progress
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

rows

protected final List<OperationParametersReport.Row> rows
The operations to publish in the HTML report.

See Also:
add(IdentifiedObject, ParameterDescriptorGroup), add(MathTransformFactory)
Constructor Detail

OperationParametersReport

public OperationParametersReport(Properties properties)
Creates a new report generator using the given property values. See the class javadoc for a list of expected values.

Parameters:
properties - The property values, or null for the default values.
Method Detail

add

public void add(IdentifiedObject operation,
                ParameterDescriptorGroup parameters)
Adds an operation to be show on the HTML page. The default implementation performs the following steps:

Parameters:
operation - The operation to show on the HTML page.
parameters - The operation parameters, or null if none.

add

public void add(MathTransformFactory factory)
Convenience method adding all available methods from the given factory. Each coordinate operation method is added to the rows list as below:
add(method, method.getParameters());

Parameters:
factory - The factory for which to add available methods.

createRow

protected OperationParametersReport.Row createRow(IdentifiedObject operation,
                                                  ParameterDescriptorGroup parameters,
                                                  Set<String> codeSpaces)
Creates a new row for the given operation and parameters. This method is invoked by the add(…) method when a new row needs to be created, either for an operation or for one of its parameters.

The default implementation instantiate a new OperationParametersReport.Row with the given operation and code spaces. Then, if the given parameters argument is non-null, this method iterates over all parameter descriptor and invokes this method recursively for creating their rows.

Parameters:
operation - The operation.
parameters - The operation parameters, or null if none.
codeSpaces - The code spaces for which to get the name and aliases.
Returns:
The new row, or null if none.

write

public File write(File destination)
           throws IOException
Formats the current content of the rows list as a HTML page in the given file.

Specified by:
write in class Report
Parameters:
destination - The file to generate.
Returns:
The given destination file.
Throws:
IOException - If an error occurred while writing the report.


Copyright © 1994-2013 Open Geospatial Consortium. All Rights Reserved.