## org.das2.util.filesystem.HttpFileSystem

Make a web folder accessible. This assumes listings are provided in html form by requesting links ending in a slash. For example, http://autoplot.org/data/pngwalk/. Links to resources "outside" of the filesystem are not considered part of the filesystem. Again, this assumes listings are HTML content, and I suspect this will be changing (xml+client-side-xslt)...

## createHttpFileSystem

createHttpFileSystem( java.net.URI rooturi ) → org.das2.util.filesystem.HttpFileSystem

Create a filesystem from the URI. Note "user@" will be added to the URI if credentials are needed and added automatically.

### Parameters

rooturi - an URI

### Returns:

the filesystem.
[search for examples] [view on GitHub] [view on old javadoc] [view source]

## isDirectory

isDirectory( String filename ) → boolean

dumb method looks for / in parent directory's listing. Since we have to list the parent, then IOException can be thrown.

### Parameters

filename - a String

### Returns:

true if the name appears to be a directory (folder).
[search for examples] [view on GitHub] [view on old javadoc] [view source]

## isRegexNoWild

isRegexNoWild( String regex ) → boolean

return true if the regular expression for the file is actually a single file with no wildcards. This is tricky because for years a single period (".") has been left in the name, so that "." matches ".", and really screen.png would match screen_png. To contain this logic, this routine is introduced. Presently it just checks for "screen.png" so that a pngwalk of each screenshot (https://autoplot.org/jnlp/v$x/screen.png) can be made, which is useful when looking for old versions.

### Parameters

regex - a String

### Returns:

a boolean
[search for examples] [view on GitHub] [view on old javadoc] [view source]

## listDirectory

listDirectory( String directory ) → String[]

list the directory, using the cached entry from listDirectoryFromMemory, or by HtmlUtil.getDirectoryListing. If there is a ro_cache, then add extra entries from here as well. Note the following extentions are hidden: .css, .php, .jnlp, .part.

### Parameters

directory - name within the filesystem

### Returns:

names within the directory
[search for examples] [view on GitHub] [view on old javadoc] [view source]
listDirectory( String directory, String regex ) → String[] [view source]

## maybeUpdateDirectoryEntry

maybeUpdateDirectoryEntry( String filename, boolean force ) → org.das2.util.filesystem.FileSystem.DirectoryEntry

HTTP listings are really done by querying the single file, so support this by issuing a head request

### Parameters

filename - filename within the system
force - if true, then guarantee a listing and throw an IOException if it cannot be done.

### Returns:

the DirectoryEntry showing size and date.
[search for examples] [view on GitHub] [view on old javadoc] [view source]