<h2>org.das2.fsm.FileStorageModel</h2><p>Represents a method for storing data sets in a set of files by time.  The
 client provides a regex for the files and how each group of the regex is
 interpreted as a time digit.  The model can then be used to provide the set
 of files that cover a time range, etc.

 This new implementation uses a TimeParser object to more quickly process 
 file names.</p>
<hr>
<a name="cacheCleanup"></a>
<h2>cacheCleanup</h2>
cacheCleanup(  ) &rarr; void

<p>remove files that have been identified as old versions.</p>

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

<br><br>
<a href="https://github.com/autoplot/dev/search?q=cacheCleanup&unscoped_q=cacheCleanup">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#cacheCleanup">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="containsFile"></a>
<h2>containsFile</h2>
containsFile( <a href='https://docs.oracle.com/javase/8/docs/api/java/io/File.html'>java.io.File</a> file ) &rarr; boolean

<p>return true if the file came (or could come) from this FileStorageModel.</p>

<h3>Parameters</h3>
file - the file

<h3>Returns:</h3>
true if the file came (or could come) from this FileStorageModel.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=containsFile&unscoped_q=containsFile">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#containsFile">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="containsName"></a>
<h2>containsName</h2>
containsName( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> name ) &rarr; boolean

<p>return true if the name came (or could come) from this FileStorageModel.</p>

<h3>Parameters</h3>
name - the name within the filesystem.

<h3>Returns:</h3>
true if the name came (or could come) from this FileStorageModel.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=containsName&unscoped_q=containsName">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#containsName">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="create"></a>
<h2>create</h2>
create( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/filesystem/FileSystem.html'>org.das2.util.filesystem.FileSystem</a> root, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> template ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/fsm/FileStorageModel.html'>org.das2.fsm.FileStorageModel</a>

<p>creates a FileStorageModel for the given template, which uses:
 <pre>%Y-%m-%dT%H:%M:%S.%{milli}Z";
    %Y  4-digit year
    %m  2-digit month
    %d  2-digit day of month
    %j  3-digit day of year
    %H  2-digit Hour
    %M  2-digit Minute
    %S  2-digit second
    %v  best version by number  Also %(v,sep) for 4.3.2  or %(v,alpha)
    %{milli}  3-digit milliseconds </pre>
 product_$(o,id=ftp://stevens.lanl.gov/pub/projects/rbsp/autoplot/orbits/rbspa_pp).png</p>

<h3>Parameters</h3>
root - FileSystem source of the files.
<br>
template - describes how filenames are constructed.  This is converted to a regular expression and may contain regex elements without groups.  The
   string may contain $ instead of percents as long as there are no percents in the string.

<h3>Returns:</h3>
a newly-created FileStorageModel.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=create&unscoped_q=create">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#create">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
create( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/filesystem/FileSystem.html'>org.das2.util.filesystem.FileSystem</a> root, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> template, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> fieldName, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/TimeParser/FieldHandler.html'>org.das2.datum.TimeParser.FieldHandler</a> fieldHandler ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/fsm/FileStorageModel.html'>org.das2.fsm.FileStorageModel</a><br>
<hr>
<a name="generateNamesFor"></a>
<h2>generateNamesFor</h2>
generateNamesFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> range ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a>

<p>generate the names of the files that would cover this range.  This was
 taken from Autoplot's org.virbo.jythonsupport.Util.  
 TODO: versioning, etc.</p>

<h3>Parameters</h3>
range - the time range to cover.

<h3>Returns:</h3>
the string names, each in the context of the filesystem.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=generateNamesFor&unscoped_q=generateNamesFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#generateNamesFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="getBestFilesFor"></a>
<h2>getBestFilesFor</h2>
getBestFilesFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> targetRange ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/io/File.html'>java.io.File[]</a>

<p>return the best files found for the range, without progress feedback.</p>

<h3>Parameters</h3>
targetRange - a DatumRange

<h3>Returns:</h3>
a java.io.File[]

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getBestFilesFor&unscoped_q=getBestFilesFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getBestFilesFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
getBestFilesFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> targetRange, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/io/File.html'>java.io.File[]</a><br>
<hr>
<a name="getBestNamesFor"></a>
<h2>getBestNamesFor</h2>
getBestNamesFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> targetRange, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a>

<p>return the names in the range, minding version numbers, or all available 
 names if the range is null.  This will list directories.</p>

<h3>Parameters</h3>
targetRange - range limit, or null.
<br>
monitor - a ProgressMonitor

<h3>Returns:</h3>
array of names within the system.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getBestNamesFor&unscoped_q=getBestNamesFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getBestNamesFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
getBestNamesFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> targetRange ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a><br>
<hr>
<a name="getCacheTagFor"></a>
<h2>getCacheTagFor</h2>
getCacheTagFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/fsm/FileStorageModel.html'>org.das2.fsm.FileStorageModel</a> fsm, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> range, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a> names ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/CacheTag.html'>org.das2.datum.CacheTag</a>

<p></p>

<h3>Parameters</h3>
fsm - a FileStorageModel
<br>
range - a DatumRange
<br>
names - a java.lang.String[]

<h3>Returns:</h3>
org.das2.datum.CacheTag

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getCacheTagFor&unscoped_q=getCacheTagFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getCacheTagFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
getCacheTagFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/fsm/FileStorageModel.html'>org.das2.fsm.FileStorageModel</a> fsm, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> range, <a href='https://docs.oracle.com/javase/8/docs/api/java/io/File.html'>java.io.File[]</a> files ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/CacheTag.html'>org.das2.datum.CacheTag</a><br>
<hr>
<a name="getChildFileSystem"></a>
<h2>getChildFileSystem</h2>
getChildFileSystem( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/filesystem/FileSystem.html'>org.das2.util.filesystem.FileSystem</a> root, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> child, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/filesystem/FileSystem.html'>org.das2.util.filesystem.FileSystem</a>

<p>return a child filesystem, with special code for LocalFileSystems to support
 Windows.  TODO: look into .zip child.</p>

<h3>Parameters</h3>
root - a FileSystem
<br>
child - a String
<br>
monitor - a ProgressMonitor

<h3>Returns:</h3>
the FileSystem
<h3>See Also:</h3>
<a href='https://sourceforge.net/p/autoplot/bugs/2132'>https://sourceforge.net/p/autoplot/bugs/2132</a> <br>
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getChildFileSystem&unscoped_q=getChildFileSystem">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getChildFileSystem">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="getField"></a>
<h2>getField</h2>
getField( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> field, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> name ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return the field value for the given name.  For example, if the spec
 is $Y/$m/$d/$Y$m$d_v$(v,sep).dat and the name matched is 2014/04/04/20140404_v2.3.dat
 then calling this for the field "v" would result in "2.3"  This should not
 be used to retrieve fields that are components of the time range, such as 
 $Y or $m.</p>

<h3>Parameters</h3>
field - field, for example "v"
<br>
name - name, for example 2014/04/04/20140404_v2.3.dat

<h3>Returns:</h3>
the field value, for example, "2.3" when the spec is $Y/$m/$d/$Y$m$d_v$v.dat
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getField&unscoped_q=getField">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getField">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="getFileFor"></a>
<h2>getFileFor</h2>
getFileFor( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> name ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/io/File.html'>java.io.File</a>

<p>download the file for the given name within the filesystem.</p>

<h3>Parameters</h3>
name - the name within the filesystem.

<h3>Returns:</h3>
null or a local file which can be opened.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getFileFor&unscoped_q=getFileFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getFileFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
getFileFor( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> name, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/io/File.html'>java.io.File</a><br>
<hr>
<a name="getFileSystem"></a>
<h2>getFileSystem</h2>
getFileSystem(  ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/filesystem/FileSystem.html'>org.das2.util.filesystem.FileSystem</a>

<p>return the filesystem used to implement this.</p>

<h3>Returns:</h3>
filesystem
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getFileSystem&unscoped_q=getFileSystem">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getFileSystem">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="getFilenameFor"></a>
<h2>getFilenameFor</h2>
getFilenameFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/Datum.html'>Datum</a> start, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/Datum.html'>Datum</a> end ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return a filename that would intersect the range.  Note this file
 may not actually exist.  This may be used to quantize the range.
 The template may not contain versions.</p>

<h3>Parameters</h3>
start - a Datum
<br>
end - a Datum

<h3>Returns:</h3>
a String

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getFilenameFor&unscoped_q=getFilenameFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getFilenameFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="getFilesFor"></a>
<h2>getFilesFor</h2>
getFilesFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> targetRange ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/io/File.html'>java.io.File[]</a>

<p></p>

<h3>Parameters</h3>
targetRange - a DatumRange

<h3>Returns:</h3>
java.io.File[]

<br><br>
<a href="https://github.com/autoplot/dev/search?q=getFilesFor&unscoped_q=getFilesFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getFilesFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
getFilesFor( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a> names, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/io/File.html'>java.io.File[]</a><br>
getFilesFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> targetRange, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/io/File.html'>java.io.File[]</a><br>
<hr>
<a name="getNameFor"></a>
<h2>getNameFor</h2>
getNameFor( <a href='https://docs.oracle.com/javase/8/docs/api/java/io/File.html'>java.io.File</a> file ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>Provides a way to recover the model name of a file.  The returned File from getFilesFor can be anywhere,
 so it would be good to provide a way to get it back into a FSM name.  For example, a filesystem
 might download the remote file to a cache directory, which is the File that is provided to the
 client, sometimes the client will need to recover the name of the corresponding FileObject, so
 this maps the File back to the name.</p>

<h3>Parameters</h3>
file - the file

<h3>Returns:</h3>
the canonical name of the file.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getNameFor&unscoped_q=getNameFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getNameFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="getNamesFor"></a>
<h2>getNamesFor</h2>
getNamesFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> targetRange ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a>

<p>return the names in the range, or all names if the range is null.</p>

<h3>Parameters</h3>
targetRange - range limit, or null.

<h3>Returns:</h3>
array of names within the system.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getNamesFor&unscoped_q=getNamesFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getNamesFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
getNamesFor( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> targetRange, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String[]</a><br>
<hr>
<a name="getParent"></a>
<h2>getParent</h2>
getParent(  ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/fsm/FileStorageModel.html'>org.das2.fsm.FileStorageModel</a>

<p>returns the parent or null if none exists.  None will exist when there
 are no more wildcards. (/home/foo/$Y/$m-$d.dat has parent /home/foo/$Y
 which has parent null.)</p>

<h3>Returns:</h3>
parent or null.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getParent&unscoped_q=getParent">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getParent">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="getRangeFor"></a>
<h2>getRangeFor</h2>
getRangeFor( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> name ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a>

<p>return the time range represented by this name.</p>

<h3>Parameters</h3>
name - like 2013-10-31

<h3>Returns:</h3>
the timerange representing the day 2013-10-31
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getRangeFor&unscoped_q=getRangeFor">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getRangeFor">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="getRepresentativeFile"></a>
<h2>getRepresentativeFile</h2>
getRepresentativeFile( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return a random file from the FSM, which can be used to represent a typical file.  For
 example, we need to look at metadata to see what is available.</p>

<h3>Parameters</h3>
monitor - progress monitor in case a file must be downloaded.

<h3>Returns:</h3>
a reference to the file within the FileSystem, or null if one is not found.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getRepresentativeFile&unscoped_q=getRepresentativeFile">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getRepresentativeFile">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
getRepresentativeFile( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> childRegex ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a><br>
getRepresentativeFile( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> childRegex, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> range ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a><br>
getRepresentativeFile( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/fsm/FileStorageModel.html'>org.das2.fsm.FileStorageModel</a> ths, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/util/monitor/ProgressMonitor.html'>ProgressMonitor</a> monitor, <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> childRegex, <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> range, int depth ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a><br>
<hr>
<a name="getRoot"></a>
<h2>getRoot</h2>
getRoot(  ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p>return the root of the filesystem as a string.</p>

<h3>Returns:</h3>
the root of the filesystem as a string.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=getRoot&unscoped_q=getRoot">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#getRoot">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="hasField"></a>
<h2>hasField</h2>
hasField( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> field ) &rarr; boolean

<p>returns true if the parser has the field.</p>

<h3>Parameters</h3>
field - e.g. "x"

<h3>Returns:</h3>
true if the parser has the field.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=hasField&unscoped_q=hasField">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#hasField">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="quantize"></a>
<h2>quantize</h2>
quantize( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> timeRange ) &rarr; <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a>

<p>return the timerange that contains the given timerange and
 exactly contains a set of granules.
 
 This needs to be synchronized because the timeParser.</p>

<h3>Parameters</h3>
timeRange - arbitrary time range

<h3>Returns:</h3>
list of file timeranges covering file input timeRange.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=quantize&unscoped_q=quantize">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#quantize">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="setContext"></a>
<h2>setContext</h2>
setContext( <a href='http://www-pw.physics.uiowa.edu/~jbf/autoplot/doc/org/das2/datum/DatumRange.html'>DatumRange</a> trdr ) &rarr; void

<p>set the datum range giving context to the files.  For example,
 filenames are just $H$M$S.dat, and the context is "Jan 17th, 2015"</p>

<h3>Parameters</h3>
trdr - the context

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

<br><br>
<a href="https://github.com/autoplot/dev/search?q=setContext&unscoped_q=setContext">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#setContext">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="splitIndex"></a>
<h2>splitIndex</h2>
splitIndex( <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a> surl ) &rarr; int

<p>This returns the index splitting the static part of the filename from the templated part.
 For example, http://autoplot.org/data/C1_CP_EDI_EGD__$Y$m$d_V$v.cef is split into:<br>
 <pre>http://autoplot.org/data/
C1_CP_EDI_EGD__$Y$m$d_V$v.cef</pre> and
 http://emfisis.physics.uiowa.edu/Flight/RBSP-A/Quick-Look/$Y/$m/$d/rbsp-a_magnetometer_4sec-gsm_emfisis-Quick-Look_$Y$m$d_v$(v,sep).cdf:<br>
 <pre>http://emfisis.physics.uiowa.edu/Flight/RBSP-A/Quick-Look/
$Y/$m/$d/rbsp-a_magnetometer_4sec-gsm_emfisis-Quick-Look_$Y$m$d_v$(v,sep).cdf</pre>
 <tt></tt><br>

 <p>
 This new version uses regexs and is more complete than versions found in Autoplot, and they should
 eventually use this instead.  Note the Autoplot one returns the index of the last /, whereas this
 returns that index plus one.
 </p>
 
 <p>Taken from Autoplot's AggregatingDataSourceFactory, where Autoplot just has a URI and needs to get a file list.
 See also org/autoplot/pngwalk/WalkUtil.java splitIndex, which also allows wildcards like *.</p>
 
 Note, ages ago %Y was valid as well as $Y.  This is no longer supported, since it is useful
 to have Python templates working alongside URI_Templates.</p>

<h3>Parameters</h3>
surl - a string like http://autoplot.org/data/C1_CP_EDI_EGD__$Y$m$d_V$v.cef

<h3>Returns:</h3>
an integer indicating the split index, so that surl.substring(0,i) includes the slash.
<br><br>
<a href="https://github.com/autoplot/dev/search?q=splitIndex&unscoped_q=splitIndex">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#splitIndex">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>
<hr>
<a name="toString"></a>
<h2>toString</h2>
toString(  ) &rarr; <a href='https://docs.oracle.com/javase/8/docs/api/java/lang/String.html'>String</a>

<p></p>

<h3>Returns:</h3>
java.lang.String

<br><br>
<a href="https://github.com/autoplot/dev/search?q=toString&unscoped_q=toString">[search for examples]</a>
 <a href="https://github.com/autoplot/documentation/tree/master/javadoc/org/das2/fsm/FileStorageModel.md">[view on GitHub]</a>
 <a href="http://www-pw.physics.uiowa.edu/~jbf/autoplot/javadoc2018/org/das2/fsm/FileStorageModel.html#toString">[view on old javadoc]</a>
 <a href="https://saturn.physics.uiowa.edu/svn/das2/dasCore/community/autoplot2011/trunk/dasCore/src/org/das2/fsm/FileStorageModel.java">[view source]</a>
<br>
<br>