Class DetailLinkRenderer<E>

java.lang.Object
com.vaadin.flow.data.renderer.Renderer<E>
com.vaadin.flow.data.renderer.LitRenderer<E>
com.vaadin.flow.data.renderer.ComponentRenderer<com.vaadin.flow.component.html.Anchor,E>
io.jmix.flowui.component.grid.renderer.AbstractDetailRenderer<com.vaadin.flow.component.html.Anchor,E,DetailLinkRenderer<E>>
io.jmix.flowui.component.grid.renderer.DetailLinkRenderer<E>
Type Parameters:
E - entity item type
All Implemented Interfaces:
Serializable

public class DetailLinkRenderer<E> extends AbstractDetailRenderer<com.vaadin.flow.component.html.Anchor,E,DetailLinkRenderer<E>>
A renderer that creates a server-side Anchor opening an entity detail view route.
See Also:
  • Field Details

    • uiComponents

      protected UiComponents uiComponents
    • routeSupport

      protected RouteSupport routeSupport
    • viewRegistry

      protected ViewRegistry viewRegistry
    • hrefProvider

      protected com.vaadin.flow.function.SerializableFunction<E,String> hrefProvider
    • target

      protected com.vaadin.flow.component.html.AnchorTarget target
    • metaClass

      protected MetaClass metaClass
  • Constructor Details

    • DetailLinkRenderer

      public DetailLinkRenderer(UiComponents uiComponents, RouteSupport routeSupport, ViewRegistry viewRegistry, MetaClass metaClass, com.vaadin.flow.function.ValueProvider<E,String> textValueProvider)
      Creates a detail link renderer.
      Parameters:
      uiComponents - factory for creating UI components
      routeSupport - support bean for serializing route parameters
      viewRegistry - registry used to resolve detail views
      metaClass - entity meta-class used to resolve the default detail view
      textValueProvider - value provider for link text when explicit text is not configured
  • Method Details

    • initRenderer

      protected void initRenderer()
    • createComponentInternal

      protected com.vaadin.flow.component.html.Anchor createComponentInternal()
      Specified by:
      createComponentInternal in class AbstractDetailRenderer<com.vaadin.flow.component.html.Anchor,E,DetailLinkRenderer<E>>
    • configureComponent

      protected void configureComponent(com.vaadin.flow.component.html.Anchor anchor, E item)
      Specified by:
      configureComponent in class AbstractDetailRenderer<com.vaadin.flow.component.html.Anchor,E,DetailLinkRenderer<E>>
    • createHref

      protected String createHref(Object item)
    • findRouteData

      protected com.vaadin.flow.router.RouteData findRouteData(com.vaadin.flow.router.RouteConfiguration routeConfiguration, Class<? extends View<?>> detailViewClass)
    • getSingleRouteParameterName

      protected String getSingleRouteParameterName(com.vaadin.flow.router.RouteData routeData, Class<? extends View<?>> detailViewClass)
    • resolveDetailViewClass

      protected Class<? extends View<?>> resolveDetailViewClass()
    • withTarget

      public DetailLinkRenderer<E> withTarget(@Nullable com.vaadin.flow.component.html.AnchorTarget target)
      Sets anchor target.
      Parameters:
      target - anchor target, or null to use the default browser behavior
      Returns:
      this renderer
    • withHrefProvider

      public DetailLinkRenderer<E> withHrefProvider(com.vaadin.flow.function.SerializableFunction<E,String> hrefProvider)
      Sets a provider used to create link href values.
      Parameters:
      hrefProvider - href provider
      Returns:
      this renderer