Package gov.nasa.pds.objectAccess
Class ObjectAccess
java.lang.Object
gov.nasa.pds.objectAccess.ObjectAccess
- All Implemented Interfaces:
ObjectProvider
public class ObjectAccess extends Object implements ObjectProvider
The
ObjectAccess class is a point of entry into parsed PDS (including PDS 4/XML-schema-labeled) objects.- Author:
- dcberrio
-
Constructor Summary
Constructors Constructor Description ObjectAccess()Creates a new instance with the current local directory as the archive root path.ObjectAccess(File archiveRoot)Constructs anObjectAccessobject and sets the archive root path.ObjectAccess(String archiveRoot)Constructs anObjectAccessobject and sets the archive root path.ObjectAccess(URL archiveRoot)Constructs anObjectAccessobject and sets the archive root path. -
Method Summary
Modifier and Type Method Description StringgetArchiveRoot()Gets the root file path of the object archive(s) for this ObjectProvider.List<Array2DImage>getArray2DImages(FileAreaObservational observationalFileArea)Returns a list of Array2DImage objects given an observation file area object.List<Array3DImage>getArray3DImages(FileAreaObservational observationalFileArea)Returns a list of Array3DImage objects given an observation file area object.List<Array3DSpectrum>getArray3DSpectrums(FileAreaObservational observationalFileArea)Returns a list of Array3DSpectrum objects given an observation file area object.List<Array>getArrays(FileArea fileArea)Gets a list of Array objects from a file area.List<Array>getArrays(FileAreaBrowse fileArea)Gets a list of Array objects from a browse file area.List<Array>getArrays(FileAreaObservational fileArea)Gets a list of Array objects from an observational file area.List<FieldBinary>getFieldBinaries(TableBinary table)Returns a list of FieldBinary objects given a table binary object.List<Object>getFieldBinaryAndGroupFieldBinaries(TableBinary table)Returns a list of FieldBinary and GroupFieldBinary objects given a table binary object.List<Object>getFieldCharacterAndGroupFieldCharacters(TableCharacter table)Returns a list of FieldCharacter and GroupFieldCharacter objects given a table character object.List<FieldCharacter>getFieldCharacters(TableCharacter table)Returns a list of FieldCharacter objects given a table character object.List<Object>getFieldDelimitedAndGroupFieldDelimiteds(TableDelimited table)Returns a list of FieldDelimited and GroupFieldDelimited objects given a table delimited object.List<FieldDelimited>getFieldDelimiteds(TableDelimited table)Returns a list of FieldDelimited objects given a table delimited object.List<GroupFieldDelimited>getGroupFieldDelimiteds(TableDelimited table)Returns a list of GroupFieldDelimited objects given a table delimited object.List<Object>getHeaderObjects(FileArea fileArea)List<Object>getHeaderObjects(FileAreaAncillary anciilaryFileArea)List<Object>getHeaderObjects(FileAreaBrowse browseFileArea)List<Object>getHeaderObjects(FileAreaObservational observationalFileArea)Returns a list of Header objectsProductObservationalgetObservationalProduct(String relativeXmlFilePath)Gets an instance of ProductObservational.<T> TgetProduct(File labelFile, Class<T> productClass)Reads a product label of a specified class, and returns an instance of that class as a result.<T> TgetProduct(URL label, Class<T> productClass)Reads a product label of a specified class, and returns an instance of that class as a result.URLgetRoot()Gets the root file path of the object archive(s) for this ObjectProvider.List<TableBinary>getTableBinaries(FileAreaObservational observationalFileArea)Returns a list of TableBinary objects given an observation file area object.List<TableCharacter>getTableCharacters(FileAreaObservational observationalFileArea)Returns a list of TableCharacter objects given an observation file area object.List<TableDelimited>getTableDelimiteds(FileAreaObservational observationalFileArea)Returns a list of TableDelimited objects given an observation file area object.List<Object>getTableObjects(FileArea fileArea)List<Object>getTableObjects(FileAreaAncillary anciilaryFileArea)List<Object>getTableObjects(FileAreaBrowse browseFileArea)List<Object>getTableObjects(FileAreaObservational observationalFileArea)Returns a list of table objects.List<Object>getTableObjects(FileAreaObservationalSupplemental observationalFileAreaSupplemental)List<Object>getTablesAndImages(FileArea fileArea)List<Object>getTablesAndImages(FileAreaBrowse browseFileArea)List<Object>getTablesAndImages(FileAreaObservational observationalFileArea)XMLLabelContextgetXMLLabelContext()voidsetObservationalProduct(String relativeXmlFilePath, ProductObservational product)Writes a label given the product XML file.voidsetObservationalProduct(String relativeXmlFilePath, ProductObservational product, XMLLabelContext labelContext)Writes a label given the product XML file.
-
Constructor Details
-
ObjectAccess
Creates a new instance with the current local directory as the archive root path. -
ObjectAccess
Constructs anObjectAccessobject and sets the archive root path.- Parameters:
archiveRoot- the archive root path- Throws:
URISyntaxExceptionMalformedURLExceptionException
-
ObjectAccess
Constructs anObjectAccessobject and sets the archive root path.- Parameters:
archiveRoot- the archive root path- Throws:
URISyntaxExceptionMalformedURLExceptionException
-
ObjectAccess
Constructs anObjectAccessobject and sets the archive root path.- Parameters:
archiveRoot- the archive root path- Throws:
URISyntaxExceptionMalformedURLException
-
-
Method Details
-
getProduct
Description copied from interface:ObjectProviderReads a product label of a specified class, and returns an instance of that class as a result.- Specified by:
getProductin interfaceObjectProvider- Type Parameters:
T- the product object class- Parameters:
labelFile- the file containing the XML labelproductClass- the product object class- Returns:
- an instance of the product object
- Throws:
ParseException- if there is an error parsing the label
-
getProduct
Description copied from interface:ObjectProviderReads a product label of a specified class, and returns an instance of that class as a result.- Specified by:
getProductin interfaceObjectProvider- Type Parameters:
T- the product object class- Parameters:
label- the url containing the XML labelproductClass- the product object class- Returns:
- an instance of the product object
- Throws:
ParseException- if there is an error parsing the label
-
getObservationalProduct
Description copied from interface:ObjectProviderGets an instance of ProductObservational.- Specified by:
getObservationalProductin interfaceObjectProvider- Parameters:
relativeXmlFilePath- the XML file path and name of the product to obtain, relative to the ObjectAccess archive root- Returns:
- an instance of ProductObservational
-
setObservationalProduct
public void setObservationalProduct(String relativeXmlFilePath, ProductObservational product) throws ExceptionDescription copied from interface:ObjectProviderWrites a label given the product XML file.- Specified by:
setObservationalProductin interfaceObjectProvider- Parameters:
relativeXmlFilePath- the XML file path and name of the product to set, relative to the ObjectAccess archive rootproduct- The Product_Observational object to serialize into an XML file.- Throws:
Exception
-
setObservationalProduct
public void setObservationalProduct(String relativeXmlFilePath, ProductObservational product, XMLLabelContext labelContext) throws ExceptionWrites a label given the product XML file. This method assumes that the label will be written to the local file system. Therefore, the protocol of the ObjectAccess archive root must be a 'file'.- Specified by:
setObservationalProductin interfaceObjectProvider- Parameters:
relativeXmlFilePath- the XML file path and name of the product to set, relative to the ObjectAccess archive rootproduct- The Product_Observational object to serialize into an XML file.labelContext- A context to use when creating the XML file. Can be set to null.- Throws:
Exception- If there was an error creating the XML file.
-
getArrays
Description copied from interface:ObjectProviderGets a list of Array objects from a file area.- Specified by:
getArraysin interfaceObjectProvider- Parameters:
fileArea- the file area.- Returns:
- an list of arrays, which may be empty.
-
getArrays
Description copied from interface:ObjectProviderGets a list of Array objects from an observational file area.- Specified by:
getArraysin interfaceObjectProvider- Parameters:
fileArea- the observational file area.- Returns:
- an list of arrays, which may be empty.
-
getArrays
Description copied from interface:ObjectProviderGets a list of Array objects from a browse file area.- Specified by:
getArraysin interfaceObjectProvider- Parameters:
fileArea- the browse file area- Returns:
- an list of arrays, which may be empty
-
getArray2DImages
Description copied from interface:ObjectProviderReturns a list of Array2DImage objects given an observation file area object.- Specified by:
getArray2DImagesin interfaceObjectProvider- Returns:
- a list of image objects
-
getArray3DImages
Description copied from interface:ObjectProviderReturns a list of Array3DImage objects given an observation file area object.- Specified by:
getArray3DImagesin interfaceObjectProvider- Returns:
- a list of image objects
-
getArray3DSpectrums
Description copied from interface:ObjectProviderReturns a list of Array3DSpectrum objects given an observation file area object.- Specified by:
getArray3DSpectrumsin interfaceObjectProvider- Returns:
- a list of image objects
-
getHeaderObjects
- Specified by:
getHeaderObjectsin interfaceObjectProvider
-
getHeaderObjects
Description copied from interface:ObjectProviderReturns a list of Header objects- Specified by:
getHeaderObjectsin interfaceObjectProvider- Returns:
- a list of Header objects
-
getHeaderObjects
- Specified by:
getHeaderObjectsin interfaceObjectProvider
-
getHeaderObjects
- Specified by:
getHeaderObjectsin interfaceObjectProvider
-
getTableObjects
Description copied from interface:ObjectProviderReturns a list of table objects.- Specified by:
getTableObjectsin interfaceObjectProvider- Returns:
- a list of table objects
-
getTableObjects
- Specified by:
getTableObjectsin interfaceObjectProvider
-
getTableObjects
- Specified by:
getTableObjectsin interfaceObjectProvider
-
getTableObjects
public List<Object> getTableObjects(FileAreaObservationalSupplemental observationalFileAreaSupplemental)- Specified by:
getTableObjectsin interfaceObjectProvider
-
getTableObjects
- Specified by:
getTableObjectsin interfaceObjectProvider
-
getTablesAndImages
- Specified by:
getTablesAndImagesin interfaceObjectProvider
-
getTablesAndImages
- Specified by:
getTablesAndImagesin interfaceObjectProvider
-
getTablesAndImages
- Specified by:
getTablesAndImagesin interfaceObjectProvider
-
getTableCharacters
Description copied from interface:ObjectProviderReturns a list of TableCharacter objects given an observation file area object.- Specified by:
getTableCharactersin interfaceObjectProvider- Returns:
- list of TableCharacter objects
-
getTableBinaries
Description copied from interface:ObjectProviderReturns a list of TableBinary objects given an observation file area object.- Specified by:
getTableBinariesin interfaceObjectProvider- Returns:
- list of TableBinary objects
-
getTableDelimiteds
Description copied from interface:ObjectProviderReturns a list of TableDelimited objects given an observation file area object.- Specified by:
getTableDelimitedsin interfaceObjectProvider- Returns:
- list of TableDelimited objects
-
getFieldCharacters
Description copied from interface:ObjectProviderReturns a list of FieldCharacter objects given a table character object.- Specified by:
getFieldCharactersin interfaceObjectProvider- Parameters:
table- TableCharacter object- Returns:
- list of FieldCharacter objects
-
getFieldDelimiteds
Description copied from interface:ObjectProviderReturns a list of FieldDelimited objects given a table delimited object.- Specified by:
getFieldDelimitedsin interfaceObjectProvider- Parameters:
table- TableDelimited object- Returns:
- list of FieldDelimited objects
-
getGroupFieldDelimiteds
Description copied from interface:ObjectProviderReturns a list of GroupFieldDelimited objects given a table delimited object.- Specified by:
getGroupFieldDelimitedsin interfaceObjectProvider- Parameters:
table- TableDelimited object- Returns:
- list of GroupFieldDelimited objects
-
getFieldDelimitedAndGroupFieldDelimiteds
Description copied from interface:ObjectProviderReturns a list of FieldDelimited and GroupFieldDelimited objects given a table delimited object.- Specified by:
getFieldDelimitedAndGroupFieldDelimitedsin interfaceObjectProvider- Parameters:
table- TableDelimited object- Returns:
- list of FieldDelimited and GroupFieldDelimited objects
-
getFieldCharacterAndGroupFieldCharacters
Description copied from interface:ObjectProviderReturns a list of FieldCharacter and GroupFieldCharacter objects given a table character object.- Specified by:
getFieldCharacterAndGroupFieldCharactersin interfaceObjectProvider- Parameters:
table- TableCharacter object- Returns:
- list of FieldCharacter and GroupFieldCharacter objects
-
getFieldBinaryAndGroupFieldBinaries
Description copied from interface:ObjectProviderReturns a list of FieldBinary and GroupFieldBinary objects given a table binary object.- Specified by:
getFieldBinaryAndGroupFieldBinariesin interfaceObjectProvider- Parameters:
table- TableBinary object- Returns:
- list of FieldBinary and GroupFieldBinary objects
-
getFieldBinaries
Description copied from interface:ObjectProviderReturns a list of FieldBinary objects given a table binary object.- Specified by:
getFieldBinariesin interfaceObjectProvider- Parameters:
table- TableBinary object- Returns:
- list of FieldBinary objects
-
getArchiveRoot
Description copied from interface:ObjectProviderGets the root file path of the object archive(s) for this ObjectProvider.- Specified by:
getArchiveRootin interfaceObjectProvider- Returns:
- the root file path of the object archive(s) for this ObjectProvider
-
getRoot
Description copied from interface:ObjectProviderGets the root file path of the object archive(s) for this ObjectProvider.- Specified by:
getRootin interfaceObjectProvider- Returns:
- the root file path of the object archive(s) for this ObjectProvider
-
getXMLLabelContext
-