Oct 19 – 22, 2020
UTC timezone

Autoplot and Java Libraries for HAPI and Science Processing

Oct 21, 2020, 1:10 PM


Jeremy Jeremy Faden


Autoplot has been useful for developing science processes that interact with HAPI and Das2 Servers, CDF files, and other file formats where a collection of files form a database covering long time spans ("aggregations"). Internally, Autoplot's Java code implements these features, and to make use of them codes will use Autoplot as a library. This is messy, and I've extracted functionality from Autoplot to form two independent Java libraries.

First, a library for handling the URI Templates (https://github.com/hapi-server/uri-templates/wiki/Specification) which are used for aggregation is available. Given a time range and template, the list of files covering the interval is computed. Or, given a list of files, the time range for each file is computed. I realize this is fairly trivial for any given aggregation, but URI_Templates are a standard specification and this library makes using this specification easy.

Second, an independent library for interacting with HAPI servers is available (https://github.com/hapi-server/client-java). This library manages transactions with HAPI servers, and provides serial (record-by-record) access as well as returning all the data as one transaction. Further, HAPI data is cached, so that repeated interactions with a server will not require repeating downloads, while quick checks of freshness are used to ensure the cache is up-to-date. IDL, Matlab, and Python have Java bridges which make the library useful in these environments as well, which will also be demonstrated.

I will also briefly show Autoplot and review new features introduced this past year.

Abstract I accept that the content of my abstract is present in the book of abstracts.
Online Material I give my consent to share my material with the conference participants.
Open access I authorise the IHDEA to openly distribute my presentation material.

Primary author

Presentation materials