xitrum

routing

package routing

Content Hierarchy Learn more about scaladoc diagrams
Visibility
  1. Public
  2. All

Type Members

  1. case class ApiMethod(method: String, route: String) extends Product with Serializable

  2. case class DiscoveredAcc(xitrumVersion: String, normalRoutes: SerializableRouteCollection, sockJsWithoutPrefixRoutes: SerializableRouteCollection, sockJsMap: Map[String, SockJsClassAndOptions], swaggerMap: Map[Class[_ <: Action], Swagger]) extends Product with Serializable

  3. case class DotRouteToken(nonDotRouteTokens: Seq[NonDotRouteToken]) extends RouteToken with Product with Serializable

    "articles/:id<[0-9]+>.

    "articles/:id<[0-9]+>.:format" gives 2 tokens: - NonDotRouteToken("articles", false, None) - DotRouteToken(Seq(NonDotRouteToken("id", true, Some("[0-9]+".r)), NonDotRouteToken("format", true, None)))

  4. case class NonDotRouteToken(value: String, isPlaceholder: Boolean, regex: Option[Regex]) extends RouteToken with Product with Serializable

    "articles/:id<[0-9]+>" gives 2 tokens: - NonDotRouteToken("articles", false, None) - NonDotRouteToken("id", true, Some("[0-9]+".

    "articles/:id<[0-9]+>" gives 2 tokens: - NonDotRouteToken("articles", false, None) - NonDotRouteToken("id", true, Some("[0-9]+".r))

  5. class ReverseRoute extends AnyRef

    Routes are sorted reveresly by the number of placeholders because we want to fill as many placeholders as possible.

  6. class Route extends AnyRef

  7. class RouteCollection extends AnyRef

    Direct listing is used, map is not used, so that route matching is faster.

  8. class RouteCollector extends AnyRef

    Scan all classes to collect routes from actions.

  9. sealed trait RouteToken extends AnyRef

  10. class SerializableRoute extends Serializable

  11. class SerializableRouteCollection extends Serializable

  12. class SockJsClassAndOptions extends Serializable

    "websocket" and "cookieNeeded" members are named after SockJS options, ex: {"websocket": true, "cookie_needed": false, "origins": ["*:*"], "entropy": 123}

    "websocket" and "cookieNeeded" members are named after SockJS options, ex: {"websocket": true, "cookie_needed": false, "origins": ["*:*"], "entropy": 123}

    - websocket: true means WebSocket is enabled - cookieNeeded: true means load balancers needs JSESSION cookie

  13. class SockJsRouteMap extends AnyRef

  14. class SwaggerJson extends Action

    Annotations
    @First() @GET( paths = "xitrum/swagger.json" ) @Swagger( varargs = ... )
  15. class SwaggerUi extends Action

    This path is for users to easily remember: http(s)://host[:port]/xitrum/swagger

    This path is for users to easily remember: http(s)://host[:port]/xitrum/swagger

    Annotations
    @First() @GET( paths = "xitrum/swagger" )
  16. class SwaggerUiVersioned extends Action

    The directory path should be the same with other Swagger UI files.

    The directory path should be the same with other Swagger UI files.

    Annotations
    @First() @GET( paths = "webjars/swagger-ui/2.0.17/index" )

Value Members

  1. object HttpMethodWebSocket extends HttpMethod

  2. object ReverseRoute

  3. object RouteCollection

  4. object RouteCompiler

  5. object SwaggerJson

Ungrouped