org.autoplot.hapi.HapiServer
Utility methods for interacting with HAPI servers.
HapiServer( )
UTF8
all transactions must be done in UTF-8
createURL
createURL( java.net.URL server, String append ) → URL
return the URL by appending the text to the end of the server URL. This
avoids extra slashes, etc.
Parameters
server - an URL
append - a String
Returns:
a java.net.URL
[search for examples]
[view on GitHub]
[view on old javadoc]
createURL( java.net.URL server, String append, java.util.Map singletonMap ) → URL
decodeURL
decodeURL( java.net.URL s ) → String
decode the URL into a string useful in Autoplot URIs.
Parameters
s - an URL
Returns:
a String
[search for examples]
[view on GitHub]
[view on old javadoc]
decodeURLParameters
decodeURLParameters( String s ) → String
replace %2B with pluses and pluses with spaces.
Parameters
s - a String
Returns:
a String
[search for examples]
[view on GitHub]
[view on old javadoc]
encodeURL
encodeURL( String s ) → URL
encode the string into a URL, handling encoded characters. Note this does
nothing right now, but should still be used as the one place to handle URLs.
Parameters
s - a String
Returns:
a java.net.URL
[search for examples]
[view on GitHub]
[view on old javadoc]
encodeURLParameters
encodeURLParameters( String s ) → String
replace pluses with %2B and spaces with pluses.
Parameters
s - a String
Returns:
a String
[search for examples]
[view on GitHub]
[view on old javadoc]
getCatalog
getCatalog( java.net.URL server ) → JSONArray
return the list of datasets available at the server.
This should not be called from the event thread.
Parameters
server - the root of the server, which should should contain "catalog"
Returns:
list of catalog entries, which have "id" and "title" tags.
[search for examples]
[view on GitHub]
[view on old javadoc]
getCatalogIds
getCatalogIds( java.net.URL server ) → List
return the list of datasets available at the server.
This should not be called from the event thread.
Parameters
server - the root of the server, which should should contain "catalog"
Returns:
list of dataset ids
[search for examples]
[view on GitHub]
[view on old javadoc]
getDataURL
getDataURL( java.net.URL server, String id, DatumRange tr, String parameters ) → URL
return the URL for data requests.
Parameters
server - an URL
id - string like "data4" or "spase://..."
tr - the time range
parameters - zero-length, or a comma-delineated list of parameters.
Returns:
the request, with the ID and parameters URL encoded.
[search for examples]
[view on GitHub]
[view on old javadoc]
getHapiServerVersion
getHapiServerVersion( java.net.URL server ) → String
Parameters
server - an URL
Returns:
java.lang.String
[search for examples]
[view on GitHub]
[view on old javadoc]
getInfo
getInfo( java.net.URL server, String id ) → JSONObject
return the info as a JSONObject.
This should not be called from the event thread.
Parameters
server - HAPI server.
id - the parameter id.
Returns:
JSONObject containing information.
[search for examples]
[view on GitHub]
[view on old javadoc]
getInfoURL
getInfoURL( java.net.URL server, String id ) → URL
return the URL for getting info.
Parameters
server - an URL
id - a String
Returns:
a java.net.URL
[search for examples]
[view on GitHub]
[view on old javadoc]
getKnownServers
getKnownServers( ) → List
get known servers.
Returns:
known servers
[search for examples]
[view on GitHub]
[view on old javadoc]
getKnownServersArray
getKnownServersArray( ) → String
get known servers
Returns:
known servers
[search for examples]
[view on GitHub]
[view on old javadoc]
getParameters
getParameters( java.net.URL server, String id ) → JSONArray
Parameters
server - an URL
id - a String
Returns:
JSONArray
[search for examples]
[view on GitHub]
[view on old javadoc]
getRange
getRange( JSONObject info ) → DatumRange
return the range of available data. For example, Polar/Hydra data is available
from 1996-03-20 to 2008-04-15. Note this supports old schemas.
Parameters
info - a JSONObject
Returns:
the range of available data.
[search for examples]
[view on GitHub]
[view on old javadoc]
getSampleTimeRange
getSampleTimeRange( JSONObject info ) → DatumRange
return a time which is a suitable time to discover the data.
Parameters
info - a JSONObject
Returns:
a DatumRange
[search for examples]
[view on GitHub]
[view on old javadoc]
listHapiServers
listHapiServers( ) → List
add the default known servers, plus the ones we know about.
The zeroth server will be the last server used.
This should not be called from the event thread.
Returns:
list of server URLs.
[search for examples]
[view on GitHub]
[view on old javadoc]
listHapiServersArray
listHapiServersArray( ) → String
add the default known servers, plus the ones we know about.
Returns:
list of servers
[search for examples]
[view on GitHub]
[view on old javadoc]
readFromCachedURL
readFromCachedURL( java.net.URL url, String type ) → String
return the resource, if cached, or null if the data is not cached.
Parameters
url - an URL
type - "json" (the extension) or "" for no additional extension.
Returns:
the data or null.
[search for examples]
[view on GitHub]
[view on old javadoc]
readFromFile
readFromFile( java.io.File f ) → String
read the file into a string.
Parameters
f - non-empty file
Returns:
String containing file contents.
[search for examples]
[view on GitHub]
[view on old javadoc]
readFromURL
readFromURL( java.net.URL url, String type ) → String
read data from the URL.
Parameters
url - the URL to read from
type - the extension to use for the cache file (JSON).
Returns:
non-empty string
[search for examples]
[view on GitHub]
[view on old javadoc]
urlEncode
urlEncode( String id ) → String
make sure spaces are encoded.
Parameters
id - a String
Returns:
a String
[search for examples]
[view on GitHub]
[view on old javadoc]
writeToCachedURL
writeToCachedURL( java.net.URL url, String type, String data ) → void
write the data (for example, an info response) to a cache file. This is called
from readFromURL to cache the data.
Parameters
url - the resource location, query param id is handled specially, but others are ignored.
type - "json" (the extension), or "" if no extension should be added.
data - the data.
Returns:
void (returns nothing)
[search for examples]
[view on GitHub]
[view on old javadoc]