Class RouteBaseData<T extends RouteBaseData>

java.lang.Object
com.vaadin.flow.router.RouteBaseData<T>
Type Parameters:
T - base data implementation
All Implemented Interfaces:
Serializable, Comparable<T>
Direct Known Subclasses:
RouteAliasData, RouteData

public abstract class RouteBaseData<T extends RouteBaseData> extends Object implements Comparable<T>, Serializable
Abstract base class for route and route alias data.

Only for read as data is immutable.

Since:
1.3
See Also:
  • Constructor Details

    • RouteBaseData

      public RouteBaseData(List<Class<? extends RouterLayout>> parentLayouts, String template, List<Class<?>> parameters, Class<? extends Component> navigationTarget)
      RouteBaseData constructor. This constructor doesn't support parameters. When a non empty List is provided IllegalArgumentException is raised.
      Parameters:
      parentLayouts - route parent layout class chain
      template - full route url
      parameters - supports only null or empty list. If a non empty list is passed and IllegalArgumentException is raised.
      navigationTarget - route navigation target
      Throws:
      IllegalArgumentException - if parameters is not empty.
    • RouteBaseData

      public RouteBaseData(List<Class<? extends RouterLayout>> parentLayouts, String template, Map<String,RouteParameterData> parameters, Class<? extends Component> navigationTarget)
      RouteBaseData constructor.
      Parameters:
      parentLayouts - route parent layout class chain
      template - full route url
      parameters - navigation target path parameters
      navigationTarget - route navigation target
  • Method Details

    • getParentLayout

      public Class<? extends RouterLayout> getParentLayout()
      Get the parent layout of Route.
      Returns:
      route parent layout
    • getParentLayouts

      public List<Class<? extends RouterLayout>> getParentLayouts()
      Return the whole parent layout chain of route target.
      Returns:
      route parent layout chain
    • getTemplate

      public String getTemplate()
      Get the full route template of Route.
      Returns:
      route template.
    • getRouteParameters

      public Map<String,RouteParameterData> getRouteParameters()
      Get Route route parameters if any.
      Returns:
      route parameters names mapped with their defined regex.
    • getNavigationTarget

      public Class<? extends Component> getNavigationTarget()
      Get Route navigation target.
      Returns:
      navigation target
    • compareTo

      public int compareTo(T otherRouteData)
      Specified by:
      compareTo in interface Comparable<T extends RouteBaseData>
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object