Package uk.ac.starlink.ttools.cea
Class CeaWriter
java.lang.Object
uk.ac.starlink.util.XmlWriter
uk.ac.starlink.ttools.cea.CeaWriter
- Direct Known Subclasses:
ImplementationCeaWriter
,ServiceCeaWriter
public abstract class CeaWriter
extends uk.ac.starlink.util.XmlWriter
Writes an application description file suitable for use with
the AstroGrid Common Execution Architecture.
There are variants of the format according to what the purpose of the output XML will be. This class is an abstract superclass providing common methods whose concrete subclasses do the actual writing.
This makes a best effort at providing a CEA-friendly interface to
the capabilities of STILTS. Call the main(java.lang.String[])
method with
the -help
flag for a usage message.
- Since:
- 17 March 2006
- Author:
- Mark Taylor
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
CeaWriter
(PrintStream out, CeaConfig config, CeaTask[] tasks, boolean redirects, String cmdline) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionabstract int
Hook for additional configuration of concrete subclasses using command-line flags.protected void
Convenience method to end an element described by an ElementDeclaration.abstract String
Returns the URL of the schema to which the output of this object conforms.static void
Main method.protected void
Convenience method to start an element described by an ElementDeclaration.protected void
startElement
(ElementDeclaration el, String moreAtts) Convenience method to start an element described by an ElementDeclaration with supplied attributes.protected abstract void
Performs the implementation-specific output of XML elements.void
Writes the configuration XML document.protected void
Writes an Interfaces element suitable for use with CEA.protected void
Writes a Parameters element suitable for use with CEA.Methods inherited from class uk.ac.starlink.util.XmlWriter
addElement, endElement, formatAttribute, formatText, getIndent, getLevel, print, println, setOut, startElement, startElement, writeDeclaration
-
Constructor Details
-
CeaWriter
protected CeaWriter(PrintStream out, CeaConfig config, CeaTask[] tasks, boolean redirects, String cmdline) Constructor.- Parameters:
out
- output stream for XMLconfig
- configuration object for the specific flavour of outputtasks
- list of tasks to be described by the outputredirects
- true iff you want stdout/stderr parameters for standard output/error redirectioncmdline
- command line string, used for logging within the output only
-
-
Method Details
-
configure
Hook for additional configuration of concrete subclasses using command-line flags.- Parameters:
args
- array of command-line arguments all of which are directed at this object (any generic ones will have been removed)- Returns:
- 0 for success, otherwise an error status
-
writeDocument
Writes the configuration XML document.- Throws:
SAXException
-
writeContent
Performs the implementation-specific output of XML elements. Invoked bywriteDocument()
; presumably invokeswriteParameters()
andwriteInterfaces()
.- Throws:
SAXException
-
getSchemaLocation
Returns the URL of the schema to which the output of this object conforms.- Returns:
- validation schema location
-
writeParameters
Writes a Parameters element suitable for use with CEA.- Throws:
SAXException
-
writeInterfaces
Writes an Interfaces element suitable for use with CEA.- Throws:
SAXException
-
startElement
Convenience method to start an element described by an ElementDeclaration. No attributes are written.- Parameters:
el
- element
-
startElement
Convenience method to start an element described by an ElementDeclaration with supplied attributes.- Parameters:
el
- elementmoreAtts
- formatted attribute string additional to any defined by the element declaration
-
endElement
Convenience method to end an element described by an ElementDeclaration.- Parameters:
el
- element
-
main
Main method. Run with-help
for a usage message.- Parameters:
args
- argument list- Throws:
uk.ac.starlink.util.LoadException
SAXException
-