diff --git a/src/main/scala/it/pagopa/interop/attributeregistryprocess/common/readmodel/ReadModelQuery.scala b/src/main/scala/it/pagopa/interop/attributeregistryprocess/common/readmodel/ReadModelQuery.scala index 5e8d29b..412ddc3 100644 --- a/src/main/scala/it/pagopa/interop/attributeregistryprocess/common/readmodel/ReadModelQuery.scala +++ b/src/main/scala/it/pagopa/interop/attributeregistryprocess/common/readmodel/ReadModelQuery.scala @@ -1,12 +1,7 @@ package it.pagopa.interop.attributeregistryprocess.common.readmodel -import org.mongodb.scala.bson.conversions.Bson -import org.mongodb.scala.model.Filters - trait ReadModelQuery { def mapToVarArgs[A, B](l: Seq[A])(f: Seq[A] => B): Option[B] = Option.when(l.nonEmpty)(f(l)) def escape(str: String): String = str.replaceAll("([.*+?^${}()|\\[\\]\\\\])", "\\\\$1") - def safeRegex(fieldName: String, pattern: String, options: String): Bson = - Filters.regex(fieldName, escape(pattern), options) } diff --git a/src/main/scala/it/pagopa/interop/attributeregistryprocess/common/readmodel/ReadModelRegistryAttributeQueries.scala b/src/main/scala/it/pagopa/interop/attributeregistryprocess/common/readmodel/ReadModelRegistryAttributeQueries.scala index c431472..9b1754b 100644 --- a/src/main/scala/it/pagopa/interop/attributeregistryprocess/common/readmodel/ReadModelRegistryAttributeQueries.scala +++ b/src/main/scala/it/pagopa/interop/attributeregistryprocess/common/readmodel/ReadModelRegistryAttributeQueries.scala @@ -27,7 +27,7 @@ object ReadModelRegistryAttributeQueries extends ReadModelQuery { val idsFilter = mapToVarArgs(ids.map(id => Filters.eq("data.id", id.toString)))(Filters.or) val kindsFilter = mapToVarArgs(kinds.map(k => Filters.eq("data.kind", k.toString)))(Filters.or) - val nameFilter = name.map(safeRegex("data.name", _, "i")) + val nameFilter = name.map(n => Filters.regex("data.name", escape(n), "i")) val originFilter = origin.map(Filters.eq("data.origin", _)) val query = mapToVarArgs(idsFilter.toList ++ kindsFilter.toList ++ nameFilter.toList ++ originFilter.toList)(Filters.and)