Package gov.nasa.pds.imaging.generate
Class Generator
- java.lang.Object
-
- gov.nasa.pds.imaging.generate.Generator
-
public class Generator extends Object
-
-
Constructor Summary
Constructors Constructor Description Generator()
Generator(PDSObject pdsObject, File templateFile, File outputFile)
Initialize Generator object with a PDSObject.Generator(PDSObject pdsObject, File templateFile, File outputFile, File inputFile)
Initialize Generator object with a PDSObject.Generator(PDSObject pdsObject, File templateFile, File outputFile, File inputFile, Boolean isXML)
Generator constructor class.Generator(PDSObject pdsObject, File templateFile, File outputFile, Boolean isXML)
Initialize Generator object with a PDSObject.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPdsObject(PDSObject pdsObject, String contextStr)
addPdsObject add an additional PDSObject The contextStr is the variable prefix used in a velocity template * $extra.SOMETHING if contextStr is "extra" The pdsObject.getContext() value should be this same String * it is used by getPdsObjectvoid
generate(boolean toStdOut)
Functionality to generate the PDS4 Label from the Velocity Templatevoid
generate(OutputStream os)
Functionality to generate the PDS4 Label from the Velocity Templatevoid
generate(ImageOutputStream ios)
Functionality to generate the PDS4 Label from the Velocity Templateorg.apache.velocity.VelocityContext
getContext()
ContextMappings
getContextMappings()
boolean
getIsXML()
File
getOutputFile()
PDSObject
getPdsObject()
PDSObject
getPdsObject(String context_label)
getPdsObjectorg.apache.velocity.Template
getTemplate()
File
getTemplateFile()
String
getTemplatePath()
void
initTemplate()
Initializes and reads in the Velocity Template into the Velocity Engine.void
setContext()
Sets the Velocity Template contexts specified by the PDSObject API and ContextMappings object.void
setContext(org.apache.velocity.VelocityContext context)
void
setContextMappings(ContextMappings ctxMappings)
void
setInputFilePath(String inputFilePath)
void
setIsXML(boolean isXML)
void
setOutputFile(File outputFile)
void
setPDSObject(PDSObject pdsObject)
void
setTemplate(org.apache.velocity.Template template)
void
setTemplateFile(File templateFile)
void
setTemplatePath(String templatePath)
-
-
-
Constructor Detail
-
Generator
public Generator() throws TemplateException, IOException
- Throws:
TemplateException
IOException
-
Generator
public Generator(PDSObject pdsObject, File templateFile, File outputFile) throws Exception
Initialize Generator object with a PDSObject. Defaults as XML output.- Parameters:
pdsObject
-templateFile
-outputFile
-- Throws:
Exception
-
Generator
public Generator(PDSObject pdsObject, File templateFile, File outputFile, File inputFile) throws Exception
Initialize Generator object with a PDSObject. Defaults as XML output.- Parameters:
pdsObject
-templateFile
-outputFile
-inputFile
-- Throws:
Exception
-
Generator
public Generator(PDSObject pdsObject, File templateFile, File outputFile, Boolean isXML) throws Exception
Initialize Generator object with a PDSObject. Defaults as XML output.- Parameters:
pdsObject
-templateFile
-outputFile
-isXML
- flag to specify whether or not the output is expected to be XML- Throws:
Exception
-
Generator
public Generator(PDSObject pdsObject, File templateFile, File outputFile, File inputFile, Boolean isXML) throws Exception
Generator constructor class.- Parameters:
pdsObject
- pds object, i.e. PDS3 labeltemplateFile
- velocity template file pathoutputFile
- path to output file. can be null in cases where we output to streamsinputFile
- path to input file. can be null in cases where we don't careisXML
- flag to specify whether or not the output is expected to be XML- Throws:
Exception
-
-
Method Detail
-
generate
public void generate(ImageOutputStream ios) throws Exception
Functionality to generate the PDS4 Label from the Velocity Template- Parameters:
ImageOutputStream
- - ImageOutputStream write to ImageOutputStream and OutputStream are NOT related so we must use one or the other no casting allowed- Throws:
Exception
- - when output file does not exist, or error close String writerTemplateException
- - when output is null - reason needs to be found * may be able to merge the 2 generate()s together since we actually write to a PrintWriter which can wrap a File or OutputStream
-
generate
public void generate(OutputStream os) throws Exception
Functionality to generate the PDS4 Label from the Velocity Template- Parameters:
OutputStream
- - OutputStream write to- Throws:
Exception
- - when output file does not exist, or error close String writerTemplateException
- - when output is null - reason needs to be found * may be able to merge the 2 generate()s together since we actually write to a PrintWriter which can wrap a File or OutputStream
-
generate
public void generate(boolean toStdOut) throws FileNotFoundException, TemplateException
Functionality to generate the PDS4 Label from the Velocity Template- Parameters:
toStdOut
- - Determines whether the output should be to a file or System.out- Throws:
FileNotFoundException
Exception
- - when output file does not exist, or error close String writerTemplateException
- - when output is null - reason needs to be found
-
initTemplate
public void initTemplate() throws TemplateException
Initializes and reads in the Velocity Template into the Velocity Engine.- Throws:
TemplateException
IOException
-
addPdsObject
public void addPdsObject(PDSObject pdsObject, String contextStr) throws TemplateException, Exception
addPdsObject add an additional PDSObject The contextStr is the variable prefix used in a velocity template * $extra.SOMETHING if contextStr is "extra" The pdsObject.getContext() value should be this same String * it is used by getPdsObject- Parameters:
extraLabel
-contextStr
-- Throws:
TemplateException
Exception
-
setPDSObject
public void setPDSObject(PDSObject pdsObject) throws TemplateException
- Throws:
TemplateException
-
getPdsObject
public PDSObject getPdsObject()
-
setContext
public void setContext() throws TemplateException
Sets the Velocity Template contexts specified by the PDSObject API and ContextMappings object.- Throws:
TemplateException
Exception
-
getContext
public org.apache.velocity.VelocityContext getContext()
-
getContextMappings
public ContextMappings getContextMappings()
-
getOutputFile
public File getOutputFile()
-
getTemplate
public org.apache.velocity.Template getTemplate()
-
getTemplateFile
public File getTemplateFile()
-
getTemplatePath
public String getTemplatePath()
-
getIsXML
public boolean getIsXML()
-
setContext
public void setContext(org.apache.velocity.VelocityContext context)
-
setContextMappings
public void setContextMappings(ContextMappings ctxMappings)
-
setOutputFile
public void setOutputFile(File outputFile)
-
setTemplate
public void setTemplate(org.apache.velocity.Template template)
-
setTemplateFile
public void setTemplateFile(File templateFile) throws TemplateException
- Throws:
TemplateException
-
setTemplatePath
public void setTemplatePath(String templatePath)
-
setInputFilePath
public void setInputFilePath(String inputFilePath)
-
setIsXML
public void setIsXML(boolean isXML)
-
-