Skip to content

Commit

Permalink
check languageType with pattern matching
Browse files Browse the repository at this point in the history
  • Loading branch information
zingmane committed Oct 8, 2019
1 parent 62a251c commit 010632d
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 19 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.campudus.tableaux.router.auth.permission

import com.campudus.tableaux.database.{LanguageNeutral, LanguageType, MultiLanguage}
import com.campudus.tableaux.database.{LanguageNeutral, MultiCountry, MultiLanguage}
import com.typesafe.scalalogging.LazyLogging
import org.vertx.scala.core.json.{Json, JsonObject, _}

Expand Down Expand Up @@ -111,24 +111,25 @@ case class ConditionLangtag(jsonObject: JsonObject) extends ConditionOption(json
// At this point, the value for the column type must already have been checked. -> checkValueTypeForColumn
objects.columnOpt match {
case Some(column) =>
if (column.languageType == MultiLanguage || column.languageType.toString == LanguageType.COUNTRY) {

objects.valueOpt match {
case Some(json: JsonObject) => {
val regex: String = conditionMap.getOrElse("langtag", ".*")

json
.fieldNames()
.asScala
.forall(langtag => {
logger.debug(s"Matching langtag: $langtag -> ${langtag.matches(regex)}")
langtag.matches(regex)
})
column.languageType match {

case MultiLanguage | MultiCountry(_) =>
objects.valueOpt match {
case Some(json: JsonObject) => {
val regex: String = conditionMap.getOrElse("langtag", ".*")

json
.fieldNames()
.asScala
.forall(langtag => {
logger.debug(s"Matching langtag: $langtag -> ${langtag.matches(regex)}")
langtag.matches(regex)
})
}
case _ => true
}
case _ => true
}
} else {
true

case LanguageNeutral => true
}

case None => false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,7 @@ class RoleModel(jsonObject: JsonObject) extends LazyLogging {
}
}

// case _ =>
case _ =>
}
}

Expand Down

0 comments on commit 010632d

Please sign in to comment.