opendap.dap
Class DataDDS

java.lang.Object
  extended by opendap.dap.BaseType
      extended by opendap.dap.DConstructor
          extended by opendap.dap.DStructure
              extended by opendap.dap.DDS
                  extended by opendap.dap.DataDDS
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, ClientIO

public class DataDDS
extends DDS

The DataDDS class extends DDS to add new methods for retrieving data from the server, and printing out the contents of the data.

Version:
$Revision: 23881 $
Author:
jehamby
See Also:
DDS, Serialized Form

Field Summary
 
Fields inherited from class opendap.dap.DStructure
vars
 
Constructor Summary
DataDDS(ServerVersion ver)
          Construct the DataDDS with the given server version.
DataDDS(ServerVersion ver, BaseTypeFactory btf)
           
 
Method Summary
 void externalize(java.io.OutputStream os, boolean compress, boolean headers)
          Dump the dataset using externalize methods.
 ServerVersion getServerVersion()
          Returns the ServerVersion given in the constructor.
 void printVal(java.io.OutputStream os)
          Print the dataset using OutputStream.
 void printVal(java.io.PrintWriter pw)
          Print the dataset just read.
 void readData(java.io.InputStream is, StatusUI statusUI)
          Read the data stream from the given InputStream.
 
Methods inherited from class opendap.dap.DDS
addVariable, checkForAttributeNameConflict, checkSemantics, clone, delVariable, getBlobContentID, getDAS, getDDSText, getDDXText, getFactory, getVariable, getVariables, ingestDAS, normalize, numVariables, parse, parseXML, parseXML, print, print, printDAS, printDAS, printXML, printXML, resolveAliases, search, setBlobContentID, setFactory, tokenizeAliasField
 
Methods inherited from class opendap.dap.DStructure
deserialize, elementCount, externalize, getTypeName, getVar, printDecl, printVal
 
Methods inherited from class opendap.dap.DConstructor
addVariable, someChildHasAttributes
 
Methods inherited from class opendap.dap.BaseType
addAttributeAlias, addAttributeContainer, appendAttribute, appendAttribute, appendAttributeContainer, checkSemantics, delAttribute, delAttribute, elementCount, getAttribute, getAttribute, getAttributeNames, getAttributeTable, getClearName, getLongName, getName, getParent, hasAttributes, newPrimitiveVector, printAttributes, printAttributes, printAttributes, printAttributes, printDecl, printDecl, printDecl, printDecl, printDecl, printDecl, printDecl, printVal, printVal, printVal, printXML, printXML, printXML, setClearName, setName, setParent
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DataDDS

public DataDDS(ServerVersion ver)
Construct the DataDDS with the given server version.

Parameters:
ver - the ServerVersion returned from the open OPeNDAP connection.

DataDDS

public DataDDS(ServerVersion ver,
               BaseTypeFactory btf)
Method Detail

getServerVersion

public final ServerVersion getServerVersion()
Returns the ServerVersion given in the constructor.

Returns:
the ServerVersion given in the constructor.

readData

public void readData(java.io.InputStream is,
                     StatusUI statusUI)
              throws java.io.IOException,
                     java.io.EOFException,
                     DAP2Exception
Read the data stream from the given InputStream. In the C++ version, this code was in Connect.

Parameters:
is - the InputStream to read from
statusUI - the StatusUI object to use, or null
Throws:
java.io.EOFException - if EOF is found before the variable is completely deserialized.
java.io.IOException - thrown on any other InputStream exception.
DataReadException - when invalid data is read, or if the user cancels the download.
DAP2Exception - if the OPeNDAP server returned an error.

printVal

public void printVal(java.io.PrintWriter pw)
Print the dataset just read. In the C++ version, this code was in geturl.

Parameters:
pw - the PrintWriter to use.

printVal

public final void printVal(java.io.OutputStream os)
Print the dataset using OutputStream.

Parameters:
os - the OutputStream to use.

externalize

public final void externalize(java.io.OutputStream os,
                              boolean compress,
                              boolean headers)
                       throws java.io.IOException
Dump the dataset using externalize methods. This should create a multipart Mime document with the binary representation of the DDS that is currently in memory.

Parameters:
os - the OutputStream to use.
compress - true if we should compress the output.
headers - true if we should print HTTP headers.
Throws:
java.io.IOException - thrown on any OutputStream exception.