public class HDSReference extends Object implements Cloneable
It also deals with translating object location information to and from a URL. Other classes ought to use this class to translate between URLs and HDS paths so that the HDS URL format can be changed easily in a single place. The format of a URL representing an HDS location is currently of the form container.sdf#hdspath. This may get changed.
| Constructor and Description | 
|---|
| HDSReference(File container)Constructs a new HDSReference representing the top level object in an
 HDS container file. | 
| HDSReference(File container,
            String path)Constructs an HDSReference given a container file and an 
 HDS path string within it. | 
| HDSReference(File container,
            String[] path)Constructs an HDSReference given a container file and an HDS path
 array within it. | 
| HDSReference(HDSObject hobj)Constructs an HDSReference from an existing HDSObject. | 
| HDSReference(String path)Constructs an HDSRefernce from a 'traditional' HDS pathname. | 
| HDSReference(URL url)Constructs an HDSReference from a URL. | 
| Modifier and Type | Method and Description | 
|---|---|
| Object | clone()Returns a copy of this object - modifying the returned object will
 not affect the original one. | 
| File | getContainerFile()Returns the container file associated with this HDSReference
 (including the '.sdf' extension). | 
| String | getContainerName()Returns the HDS-style name of the container file associated with 
 this HDSReference - this does not include the '.sdf'
 extension. | 
| HDSObject | getObject(String accessMode)Opens a new primary HDSObject at the location referenced by this
 HDSReference. | 
| String[] | getPath()Returns the HDS path of this HDSReference as an array of Strings. | 
| URL | getURL()Returns a URL which describes this HDSReference. | 
| String | pop()Removes an element from the end of the current path, thus
 navigating up the HDS hierarchy. | 
| void | push(String pathEl)Adds a new path element to the end of the current path, thus 
 navigating down the HDS hierarchy. | 
| String | toString() | 
public HDSReference(File container)
container - a File object giving the container file 
                     (including the .sdf extension)IllegalArgumentException - if the filename does not end '.sdf'public HDSReference(File container, String[] path)
container - a File object giving the container file 
                      (including the .sdf extension)path - an array of Strings each representing the name
                      of one level of the HDS pathIllegalArgumentException - if the filename does not
                      end in ".sdf"public HDSReference(File container, String path)
container - a File object giving the container file 
                      (including the .sdf extension)path - a dot-separated string giving the HDS pathIllegalArgumentException - if the filename does not end '.sdf'public HDSReference(String path)
path - a dot-separated string in which the container name
                 minus its '.sdf' forms the front and the HDS path
                 proper forms the backpublic HDSReference(URL url)
file: protocol are supported.url - a URL describing the location of the HDSObjectUnsupportedOperationException - if the protocol
          of url is not filepublic HDSReference(HDSObject hobj) throws HDSException
hobj - the object whose location is to be referenced.HDSException - if an HDS error occurspublic File getContainerFile()
public String getContainerName()
public String[] getPath()
public URL getURL()
public HDSObject getObject(String accessMode) throws HDSException
accessMode - the HDS access mode for the hdsOpen call -
                     "READ", "WRITE" or "UPDATE"HDSExceptionpublic void push(String pathEl)
pathEl - the new path element to addpublic String pop()
Copyright © 2025 Central Laboratory of the Research Councils. All Rights Reserved.