Class RouteIteratorFactory

java.lang.Object
io.undertow.server.handlers.proxy.RouteIteratorFactory

public class RouteIteratorFactory extends Object
Factory for route/affinity iterator parser. This implementation lazily parses routes while supporting strategies in RouteParsingStrategy including ranked routing. The iterator never creates new String instances but returns a CharSequence wrapper from the existing session ID.
Author:
Radoslav Husar
  • Constructor Details

    • RouteIteratorFactory

      public RouteIteratorFactory(RouteParsingStrategy routeParsingStrategy, RouteIteratorFactory.ParsingCompatibility parsingCompatibility)
      Parameters:
      routeParsingStrategy - route parsing strategy
      parsingCompatibility - route parsing compatibility behavior
    • RouteIteratorFactory

      public RouteIteratorFactory(RouteParsingStrategy routeParsingStrategy, RouteIteratorFactory.ParsingCompatibility parsingCompatibility, String rankedRouteDelimiter)
      Parameters:
      routeParsingStrategy - route parsing strategy
      parsingCompatibility - route parsing compatibility behavior
      rankedRouteDelimiter - String sequence to split routes at if ranked routing is enabled
  • Method Details

    • iterator

      public Iterator<CharSequence> iterator(String sessionId)
      Returns an Iterator<CharSequence> of routes.
      Parameters:
      sessionId - String of sessionID from the cookie/parameter possibly including encoded/appended affinity/route information
      Returns:
      routes iterator; never returns null