Interface DashboardComponentDefinitionModel

All Known Implementing Classes:
BaseDashboardComponentDefinitionModel

public interface DashboardComponentDefinitionModel
A dashboard component definition defines how a component gets its data and what options are available. Not that there is a frontend part, which isn't captured in this model, the frontend part will use the meta information here, but it would need a specific implementation per type. A dashboard component consists of - a set of input parameters, determining how the component interacts with the dashboard context. - a set of options, which typically changes the visualization, but also needs to be passed to the backend as it might have influence on the query. - a query model that fetches the data displayed in this component. - a visual part (which lives in the backend) For example, a 'process instance throughput line chart' would have - input parameters could be definition keys, start and time times, etc. - an option could be to group by day, month, etc. - the query model could be doing the ES query for throughput per time period. - A frontend implementation for line charts.
  • Method Details

    • getKey

      String getKey()
      Returns the business key usually used to reference or lookup a dashboard component definition regardless of its version.
    • getName

      String getName()
      Returns the name of this dashboard component definition.
    • getDescription

      String getDescription()
      Returns the optional description of this dashboard component definition, describing where and how it might be used.
    • getStaticData

      com.fasterxml.jackson.databind.JsonNode getStaticData()
      Returns the static data, if any is set. If static data is set, no query will be executed to get real data.
    • getType

      String getType()
      Returns the high-level type of this dashboard component, for example 'line chart'.
    • getSubType

      String getSubType()
      Specifies the component further and together with the type should fully classify the component. For exampler 'processInstanceThroughput'.
    • getQueryModel

      Returns the key of the query model that is used to fetch the data needed to display this component.
    • getInputParameters

      Returns the list of input parameters that this component can use.
    • getOptions

      Returns the list of potential options for this component.
    • getConfiguration

      com.fasterxml.jackson.databind.node.ObjectNode getConfiguration()
      A configuration that is component dependent
    • getQueryResultMapping

      Returns the mapping configuration to map from the result of executing the query model to the data format.