Class AbstractLazyRenderer<PARENT,​CONFIG,​DATA,​LAZY_DATA>

  • Type Parameters:
    PARENT - type of parent component on which renderer is able to render
    CONFIG - type of configuration for renderer
    DATA - type of data that may be rendered
    LAZY_DATA - type of data that is lazy loaded
    All Implemented Interfaces:
    NotifyingWidgetComponentRenderer<PARENT,​CONFIG,​DATA>, WidgetComponentRenderer<PARENT,​CONFIG,​DATA>

    public abstract class AbstractLazyRenderer<PARENT,​CONFIG,​DATA,​LAZY_DATA>
    extends AbstractWidgetComponentRenderer<PARENT,​CONFIG,​DATA>
    Abstract renderer which allows lazy and non-blocking ui rendering
    • Constructor Detail

      • AbstractLazyRenderer

        public AbstractLazyRenderer()
    • Method Detail

      • render

        public void render​(PARENT parent,
                           CONFIG configuration,
                           DATA data,
                           DataType dataType,
                           WidgetInstanceManager widgetInstanceManager)
        Description copied from interface: WidgetComponentRenderer
        Renders a component inside parent, representing given data and complying to given ui configuration. The data should be of give dataType. The renderer implementation could communicate with underlying widget via widgetInstanceManager.
        Parameters:
        parent - parent component on which to render
        configuration - configuration of renderer
        data - data to be rendered
        dataType - meta information about type of data provided
        widgetInstanceManager - widget manager in scope of which renderer is used
      • renderBeforeLoad

        protected abstract void renderBeforeLoad​(PARENT parent,
                                                 CONFIG configuration,
                                                 DATA data,
                                                 DataType dataType,
                                                 WidgetInstanceManager widgetInstanceManager)
        Renders component before lazy loaded data is available.
        Parameters:
        parent - parent component on which to render
        configuration - configuration of renderer
        data - data to be rendered
        dataType - meta information about type of data provided
        widgetInstanceManager - widget manager in scope of which renderer is used
      • loadData

        protected abstract LAZY_DATA loadData​(CONFIG configuration,
                                              DATA data,
                                              DataType dataType)
        Loads data of type LAZY_DATA
        Parameters:
        configuration - configuration of renderer
        data - data to be used for collecting additional information
        dataType - meta information about type of data provided
        Returns:
        Supplier
      • renderAfterLoad

        protected abstract void renderAfterLoad​(PARENT parent,
                                                CONFIG configuration,
                                                DATA data,
                                                DataType dataType,
                                                WidgetInstanceManager wim,
                                                LazyTaskResult<LAZY_DATA> lazyLoadedData)
        Renders component when lazy loaded data is available.
        Parameters:
        parent - parent component on which to render
        configuration - configuration of renderer
        data - data to be rendered
        dataType - meta information about type of data provided
        wim - widget manager in scope of which renderer is used
        lazyLoadedData - additional data returned by loadData method, wrapped by LazyTaskResult
      • setLazyTasksExecutorFactory

        public void setLazyTasksExecutorFactory​(LazyTasksExecutorFactory tasksExecutorFactory)