refactor regex
This commit is contained in:
@@ -1,10 +1,8 @@
|
|||||||
package com.infendro.account.dto.request
|
package com.infendro.account.dto.request
|
||||||
|
|
||||||
import com.infendro.account.util.REGEX_PASSWORD
|
import com.infendro.account.util.REGEX
|
||||||
import com.infendro.account.util.REGEX_USERNAME
|
import io.ktor.server.plugins.requestvalidation.*
|
||||||
import io.ktor.server.plugins.requestvalidation.RequestValidationConfig
|
import io.ktor.server.plugins.requestvalidation.ValidationResult.*
|
||||||
import io.ktor.server.plugins.requestvalidation.ValidationResult.Invalid
|
|
||||||
import io.ktor.server.plugins.requestvalidation.ValidationResult.Valid
|
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
|
||||||
@Serializable
|
@Serializable
|
||||||
@@ -22,8 +20,8 @@ data class PostAccountRequestAccess(
|
|||||||
fun RequestValidationConfig.validatePostAccountRequest() {
|
fun RequestValidationConfig.validatePostAccountRequest() {
|
||||||
validate<PostAccountRequest> { request ->
|
validate<PostAccountRequest> { request ->
|
||||||
when {
|
when {
|
||||||
!REGEX_USERNAME.matches(request.username) -> Invalid("")
|
!REGEX.USERNAME.matches(request.username) -> Invalid("")
|
||||||
!REGEX_PASSWORD.matches(request.password) -> Invalid("")
|
!REGEX.PASSWORD.matches(request.password) -> Invalid("")
|
||||||
else -> Valid
|
else -> Valid
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.infendro.account.dto.request
|
package com.infendro.account.dto.request
|
||||||
|
|
||||||
import com.infendro.account.util.REGEX_PASSWORD
|
import com.infendro.account.util.REGEX
|
||||||
import io.ktor.server.plugins.requestvalidation.*
|
import io.ktor.server.plugins.requestvalidation.*
|
||||||
import io.ktor.server.plugins.requestvalidation.ValidationResult.*
|
import io.ktor.server.plugins.requestvalidation.ValidationResult.*
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
@@ -14,7 +14,7 @@ data class PutAccountCurrentPasswordRequest(
|
|||||||
fun RequestValidationConfig.validatePutAccountCurrentPasswordRequest() {
|
fun RequestValidationConfig.validatePutAccountCurrentPasswordRequest() {
|
||||||
validate<PutAccountCurrentPasswordRequest> { request ->
|
validate<PutAccountCurrentPasswordRequest> { request ->
|
||||||
when {
|
when {
|
||||||
!REGEX_PASSWORD.matches(request.password) -> Invalid("")
|
!REGEX.PASSWORD.matches(request.password) -> Invalid("")
|
||||||
else -> Valid
|
else -> Valid
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.infendro.account.dto.request
|
package com.infendro.account.dto.request
|
||||||
|
|
||||||
import com.infendro.account.util.REGEX_USERNAME
|
import com.infendro.account.util.REGEX
|
||||||
import io.ktor.server.plugins.requestvalidation.*
|
import io.ktor.server.plugins.requestvalidation.*
|
||||||
import io.ktor.server.plugins.requestvalidation.ValidationResult.*
|
import io.ktor.server.plugins.requestvalidation.ValidationResult.*
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
@@ -14,7 +14,7 @@ data class PutAccountCurrentUsernameRequest(
|
|||||||
fun RequestValidationConfig.validatePutAccountCurrentUsernameRequest() {
|
fun RequestValidationConfig.validatePutAccountCurrentUsernameRequest() {
|
||||||
validate<PutAccountCurrentUsernameRequest> { request ->
|
validate<PutAccountCurrentUsernameRequest> { request ->
|
||||||
when {
|
when {
|
||||||
!REGEX_USERNAME.matches(request.username) -> Invalid("")
|
!REGEX.USERNAME.matches(request.username) -> Invalid("")
|
||||||
else -> Valid
|
else -> Valid
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
package com.infendro.account.util
|
package com.infendro.account.util
|
||||||
|
|
||||||
val REGEX_USERNAME = """^(?=.{1,32}$)[a-z0-9]+([\-._][a-z0-9]+)*$""".toRegex()
|
object REGEX {
|
||||||
val REGEX_PASSWORD = """^(?=.{8,}$)[a-zA-Z0-9!"#$%&'()*+,\-./:;<=>?@\[\\\]^_`{|}~]*$""".toRegex()
|
val USERNAME = """^(?=.{1,32}$)[a-z0-9]+([\-._][a-z0-9]+)*$""".toRegex()
|
||||||
|
val PASSWORD = """^(?=.{8,}$)[a-zA-Z0-9!"#$%&'()*+,\-./:;<=>?@\[\\\]^_`{|}~]*$""".toRegex()
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user