Report Providers

Report Providers are a tool used to return the report data, they are fairly straightforwards.

Report providers:

Report ProviderSinceDescription
File Report Storage Provider0File backed reports, stored in report loc
Cached Report Storage Provider1.1Uses the decorator pattern on an existing report provider to cache the values.
Super File Report Storage Provider1.1All reports in one YAML file, for simplicity
GIT Report Storage ProviderRemoved, Todo

A report provider that uses GIT.

S3 Report Storage ProviderTodoA report provider that uses s3 as the backing
Compressed File Report Storage ProviderTodoWhere reports are in a compressed file

File Report Storage Provider

Currently (1.4) the only supported mechanism for storing a file. It provides a report from a configuration as follows:

<reportName>/reportconf.yaml or <reportName>/reportconf.json

It depends on the com.base2.kagura.reportloc configuration option for the location. More information can be found here: Building a basic JNDI/JDBC report

Cached Report Storage Provider

Cached Report Storage Provider uses the decorator pattern to add a caching system to any other report system. In some cases it isn't necessary, it depends on how the client library uses the API.

Super File Report Storage Provider

Identical to File Report Storage Provider, however instead of using directories, it uses a HashMap<String, ReportConfig> configuration in a single YAML file.