Package com.vaadin.flow.data.renderer
Class ComponentDataGenerator<T>
java.lang.Object
com.vaadin.flow.data.provider.AbstractComponentDataGenerator<T>
com.vaadin.flow.data.renderer.ComponentDataGenerator<T>
- Type Parameters:
T- the date type
- All Implemented Interfaces:
com.vaadin.flow.data.provider.DataGenerator<T>,Serializable
public class ComponentDataGenerator<T>
extends com.vaadin.flow.data.provider.AbstractComponentDataGenerator<T>
A
DataGenerator that
manages the creation and passivation of components generated by
ComponentRenderers. It also manages the generation of the
nodeId property which is needed to get the element reference on the
client side.
This class is used internally by listing components that support ComponentRenderers.
- Author:
- Vaadin Ltd
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionComponentDataGenerator(ComponentRenderer<? extends com.vaadin.flow.component.Component, T> componentRenderer, com.vaadin.flow.function.ValueProvider<T, String> keyMapper) Creates a new generator. -
Method Summary
Modifier and TypeMethodDescriptionprotected com.vaadin.flow.component.ComponentcreateComponent(T item) voidgenerateData(T item, tools.jackson.databind.node.ObjectNode jsonObject) ComponentRenderer<? extends com.vaadin.flow.component.Component,T> protected com.vaadin.flow.dom.Elementprotected StringgetItemKey(T item) voidsetContainer(com.vaadin.flow.dom.Element container) voidsetNodeIdPropertyName(String nodeIdPropertyName) protected com.vaadin.flow.component.ComponentupdateComponent(com.vaadin.flow.component.Component currentComponent, T item) Methods inherited from class com.vaadin.flow.data.provider.AbstractComponentDataGenerator
destroyAllData, destroyData, getRenderedComponent, refreshData, registerRenderedComponent
-
Constructor Details
-
ComponentDataGenerator
public ComponentDataGenerator(ComponentRenderer<? extends com.vaadin.flow.component.Component, T> componentRenderer, com.vaadin.flow.function.ValueProvider<T, String> keyMapper) Creates a new generator.- Parameters:
componentRenderer- the renderer used to produce components based on data itemskeyMapper- the DataKeyMapper used to fetch keys for items
-
-
Method Details
-
generateData
-
createComponent
- Specified by:
createComponentin classcom.vaadin.flow.data.provider.AbstractComponentDataGenerator<T>
-
updateComponent
protected com.vaadin.flow.component.Component updateComponent(com.vaadin.flow.component.Component currentComponent, T item) - Overrides:
updateComponentin classcom.vaadin.flow.data.provider.AbstractComponentDataGenerator<T>
-
getItemKey
- Specified by:
getItemKeyin classcom.vaadin.flow.data.provider.AbstractComponentDataGenerator<T>
-
getContainer
protected com.vaadin.flow.dom.Element getContainer()- Specified by:
getContainerin classcom.vaadin.flow.data.provider.AbstractComponentDataGenerator<T>
-
setContainer
public void setContainer(com.vaadin.flow.dom.Element container) -
getComponentRenderer
-
getNodeIdPropertyName
-
setNodeIdPropertyName
-