LiteralPathPattern.kt

  1. package com.hexagonkt.http.patterns

  2. data class LiteralPathPattern(
  3.     override val pattern: String = "",
  4.     override val prefix: Boolean = false
  5. ) : PathPattern {

  6.     init {
  7.         checkPathPatternPrefix(pattern)
  8.     }

  9.     override fun addPrefix(prefix: String?): PathPattern =
  10.         if (prefix == null) this
  11.         else createPathPattern(prefix + pattern, this.prefix)

  12.     override fun matches(requestUrl: String): Boolean =
  13.         if (prefix) requestUrl.startsWith(pattern)
  14.         else requestUrl == pattern

  15.     override fun extractParameters(requestUrl: String): Map<String, String> =
  16.         emptyMap()
  17. }