<h2>org.autoplot.cdaweb.CDAWebDB</h2><p>Class for encapsulating the functions of the database</p>
<h2>CDAWebDB( )</h2>
<p></p>

<hr>
<a name="CDAWeb"></a>
<h2>CDAWeb</h2>
<p></p>

<hr>
<a name="dbloc"></a>
<h2>dbloc</h2>
<p></p>

<hr>
<a name="getBaseUrl"></a>
<h2>getBaseUrl</h2>
getBaseUrl( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> spid ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>returns the base URL.  FTP urls in the all.xml file are converted to HTTP by replacing
 "ftp://cdaweb.gsfc.nasa.gov/pub/istp/" with  "https://cdaweb.gsfc.nasa.gov/sp_phys/data/"</p>

<h3>Parameters</h3>
spid - the id like "AC_H2_CRIS"

<h3>Returns:</h3>
the base URL like https://cdaweb.gsfc.nasa.gov/sp_phys/data/ace/cris/level_2_cdaweb/cris_h2
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getBaseUrl&unscoped_q=getBaseUrl">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getBaseUrl">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="getFiles"></a>
<h2>getFiles</h2>
getFiles( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> spid, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> tr, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> useWebServiceHint, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> mon ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a>

<p>isolate the code that resolves which files need to be accessed, so that
 we can use the web service when it is available.</p>

<h3>Parameters</h3>
spid - the service provider id, like "AC_H2_CRIS"
<br>
tr - the timerange
<br>
useWebServiceHint - null means no preference, or "T", or "F" means use file template found in all.xml.
<br>
mon - progress monitor for the download

<h3>Returns:</h3>
array of strings, with filename|startTime|endTime
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getFiles&unscoped_q=getFiles">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getFiles">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="getFilesAndRangesFromWebService"></a>
<h2>getFilesAndRangesFromWebService</h2>
getFilesAndRangesFromWebService( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> spid, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> tr ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a>

<p>get the list of files from the web service</p>

<h3>Parameters</h3>
spid - the id like "AC_H2_CRIS"
<br>
tr - the timerange constraint

<h3>Returns:</h3>
filename|startTime|endTime
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getFilesAndRangesFromWebService&unscoped_q=getFilesAndRangesFromWebService">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getFilesAndRangesFromWebService">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="getInstance"></a>
<h2>getInstance</h2>
getInstance(  ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/autoplot/cdaweb/CDAWebDB.html'>org.autoplot.cdaweb.CDAWebDB</a>

<p></p>

<h3>Returns:</h3>
org.autoplot.cdaweb.CDAWebDB

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getInstance&unscoped_q=getInstance">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getInstance">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="getMasterFile"></a>
<h2>getMasterFile</h2>
getMasterFile( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> ds, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> p ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return the name of a master file, which is used to override the metadata
 of the daily files.</p>

<h3>Parameters</h3>
ds - the name, like A1_K0_MPA
<br>
p - progress monitor

<h3>Returns:</h3>
the name (http://...) of the master file to use, which may be one of the data files.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getMasterFile&unscoped_q=getMasterFile">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getMasterFile">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="getNaming"></a>
<h2>getNaming</h2>
getNaming( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> spid ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>returns the filename convention for spid, found in all.xml at /sites/datasite/dataset[@serviceprovider_ID='%s']/access
 For AC_H2_CRIS, this combines the subdividedby and filenaming properties to get %Y/ac_h2_cris_%Y%m%d_?%v.cdf</p>

<h3>Parameters</h3>
spid - the id like "AC_H2_CRIS"

<h3>Returns:</h3>
URI template like "%Y/ac_h2_cris_%Y%m%d_?%v.cdf"
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getNaming&unscoped_q=getNaming">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getNaming">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="getOriginalFilesAndRangesFromWebService"></a>
<h2>getOriginalFilesAndRangesFromWebService</h2>
getOriginalFilesAndRangesFromWebService( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> spid, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> tr, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> mon ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a>

<p>get the list of files from the web service</p>

<h3>Parameters</h3>
spid - the service provider id, like "AC_H2_CRIS"
<br>
tr - the timerange constraint
<br>
mon - progress monitor

<h3>Returns:</h3>
filename|startTime|endTime
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getOriginalFilesAndRangesFromWebService&unscoped_q=getOriginalFilesAndRangesFromWebService">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getOriginalFilesAndRangesFromWebService">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="getSampleFile"></a>
<h2>getSampleFile</h2>
getSampleFile( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> spid ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return a sample file from the dataset.</p>

<h3>Parameters</h3>
spid - the id like "AC_H2_CRIS"

<h3>Returns:</h3>
a downloadable file like http://cdaweb.gsfc.nasa.gov/pub/data/ace/cris/level_2_cdaweb/cris_h2/2015/ac_h2_cris_20151115_v06.cdf
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getSampleFile&unscoped_q=getSampleFile">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getSampleFile">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="getSampleTime"></a>
<h2>getSampleTime</h2>
getSampleTime( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> spid ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return a range of a file that could be plotted.  Right now, this
 just creates a FSM and gets a file.</p>

<h3>Parameters</h3>
spid - the id like "AC_H2_CRIS"

<h3>Returns:</h3>
a String

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getSampleTime&unscoped_q=getSampleTime">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getSampleTime">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="getServiceProviderIds"></a>
<h2>getServiceProviderIds</h2>
getServiceProviderIds(  ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/util/Map.html'>java.util.Map</a>

<p></p>

<h3>Returns:</h3>
Map from serviceproviderId to description
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getServiceProviderIds&unscoped_q=getServiceProviderIds">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getServiceProviderIds">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="getTimeRange"></a>
<h2>getTimeRange</h2>
getTimeRange( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> spid ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return the timerange spanning the availability of the dataset.</p>

<h3>Parameters</h3>
spid - service provider id.

<h3>Returns:</h3>
the time range (timerange_start, timerange_stop) for the dataset.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getTimeRange&unscoped_q=getTimeRange">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#getTimeRange">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="isOnline"></a>
<h2>isOnline</h2>
isOnline(  ) &rarr; boolean

<p>returns true if the CDAWeb is on line.</p>

<h3>Returns:</h3>
true if the CDAWeb is on line.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=isOnline&unscoped_q=isOnline">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#isOnline">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="main"></a>
<h2>main</h2>
main( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a> args ) &rarr; void

<p>4.2 seconds before getting description.  After too!</p>

<h3>Parameters</h3>
args - a java.lang.String[]

<h3>Returns:</h3>
void (returns nothing)

<br><br>
<a href="https://github.com/autoplot/dev/search?q=main&unscoped_q=main">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#main">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="maybeRefresh"></a>
<h2>maybeRefresh</h2>
maybeRefresh( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> mon ) &rarr; void

<p>refresh no more often than once per 10 minutes.  We don't need to refresh
 often.  Note it only takes a few seconds to refresh, plus download time,
 but we don't want to pound on the CDAWeb server needlessly.</p>

<h3>Parameters</h3>
mon - a ProgressMonitor

<h3>Returns:</h3>
void (returns nothing)

<br><br>
<a href="https://github.com/autoplot/dev/search?q=maybeRefresh&unscoped_q=maybeRefresh">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#maybeRefresh">[view on old javadoc]</a>
<br>
<br>
<hr>
<a name="refresh"></a>
<h2>refresh</h2>
refresh( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> mon ) &rarr; void

<p>Download and parse the all.xml to create a database of available products.</p>

<h3>Parameters</h3>
mon - progress monitor for the task

<h3>Returns:</h3>
void (returns nothing)

<br><br>
<a href="https://github.com/autoplot/dev/search?q=refresh&unscoped_q=refresh">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/autoplot/cdaweb/CDAWebDB.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/autoplot/cdaweb/CDAWebDB.html#refresh">[view on old javadoc]</a>
<br>
<br>