-
Task
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
-
NEW
-
NEW
Evaluate if external datasets should also support "dynamic external datasets". In this case, Dashbuilder will consult the external dataset to retrieve its metadata and also send lookup requests as explained in the following lines.
The contract to create dynamic external datasets are based on HTTP requests to the following endpoints:
GET /metadata -> returns the dataset metadata. It should contain the columns IDS and types and the total number of rows:
{ "columns":[ { "id":"CL1", "type":"NUMBER" }, { "id":"CL2", "type":"LABEL" }, { "id":"CL3", "type":"TEXT" }, { "id":"CL4", "type":"DATE" } ], "numberOfRows":2 }
GET / -> performs a dataset lookup - the URL params contains the lookup information. The endpoint should return a JSON using the following formation:
page: The page to start the dataset;
size: Number of results;
grouping: A map with group operation
sort: A map with sort operations;
The external dataset should return the dataset in the format specified in AF-2913. An advanced boolean parameter will determine if the dataset supports advanced filtered. If it is marked, DashBuilder will request metadata from the dataset and pass query parameters to during the dataset retrieval, making the external dataset responsible for the lookup.