Uploaded image for project: 'AppFormer'
  1. AppFormer
  2. AF-2913

Support External DataSets in DashBuilder

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Done
    • Icon: Major Major
    • None
    • None
    • Dashbuilder
    • None

      This is a task to bring support for external Datasets in DashBuilder.

       

      External DataSets is a new provider that will perform lookup using HTTP to a microservice that collects the data and transforms into a dataset.

      The External dataset definition should support the following parameters:

       

      1) Name: A name for the dataset; 

      2) URL: The Base URL for the external microservice;

       

      Dashbuilder will send a GET request to the specified URL and it will expected a response of type 200 - a different response will result in error. The response format should be a two dimension JSON array or an object that contains the columns description and the values for the dataset.

      Format with columns description. Mostly used if the external dataset needs to specify the columns type

       {
         "columns":[
            {
               "id":"CL1",
               "type":"NUMBER"
            },
            {
               "id":"CL2",
               "type":"LABEL"
            },
            {
               "id":"CL3",
               "type":"TEXT"
            },
            {
               "id":"CL4",
               "type":"date"
            }
         ],
         "values":[
            [
               "1.0",
               "L1",
               "JOHN",
               "2021-10-16T01:27:19.430Z"
            ],
            [
               "9.0",
               "L2",
               "MARY",
               "2021-10-16T01:48:15.647Z"
            ]
         ]
      }

       Two dimension arrays. In this case Dashbuilder parses the first row to find the columns type. The default type is LABEL. Dashbuilder will use Number or date if the column data is compatible. If it is required to use other column type, then the object format should be used instead.

       [
        [ "1.0", "L1", "JOHN", "2021-10-16T01:27:19.430Z" ],
        [ "9.0", "L2", "MARY", "2021-10-16T01:48:15.647Z" ]
      ]

       

      The external dataset provider should respect the cache settings, mainly the cache invalidation setting.

       

      It should also be possible to change a dataset URL using system propery dashbuilder.dataset.(uuid | name).url. This is important to allow users to move between environments and reuse the same dashboard.

            rhn-support-wsiqueir William Siqueira
            rhn-support-wsiqueir William Siqueira
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: