opendap/src/main/java/opendap/dap/DConnect2.java
public DataDDS getData(String CE, StatusUI statusUI) throws MalformedURLException, IOException,
            ParseException, DDSException, DAP2Exception
    {

        return getData(CE, statusUI, new DefaultFactory());
    }
public DataDDS getData(String CE, StatusUI statusUI) throws MalformedURLException, IOException,
            ParseException, DDSException, DAP2Exception
    {

        return getData(CE, statusUI, new DefaultFactory());
    }
Returns the `Data object' from the dataset referenced by this object's
URL given the constraint expression CE. Note that the Data object is
really just a DDS object with data bound to the variables. The DDS will
probably contain fewer variables (and those might have different
types) than in the DDS returned by getDDS() because that method returns
the entire DDS (but without any data) while this method returns
only those variables listed in the projection part of the constraint
expression.
<p>
Note that if CE is an empty String then the entire dataset will be
returned, unless a "sticky" CE has been specified in the constructor.

@param CE       The constraint expression to be applied to this request by the
server.  This is combined with any CE given in the constructor.
@param statusUI the <code>StatusUI</code> object to use for GUI updates
and user cancellation notification (may be null).
@return The <code>DataDDS</code> object that results from applying the
given CE, combined with this object's sticky CE, on the referenced
dataset.
@throws MalformedURLException if the URL given to the constructor
has an error
@throws IOException           if any error connecting to the remote server
@throws ParseException        if the DDS parser returned an error
@throws DDSException          on an error constructing the DDS
@throws DAP2Exception         if any error returned by the remote server