@@ -64,6 +64,7 @@ import com.normation.rudder.domain.queries.Query
6464import com .normation .rudder .domain .workflows .*
6565import com .normation .rudder .rule .category .RuleCategoryId
6666import com .normation .rudder .services .modification .DiffService
67+ import com .normation .rudder .tenants .QueryContext
6768import com .typesafe .config .ConfigValue
6869import io .scalaland .chimney .PartialTransformer
6970import io .scalaland .chimney .Transformer
@@ -138,9 +139,10 @@ object ChangeRequestJson {
138139 }
139140
140141 // Entrypoint to convert the whole tree of ChangeRequest + some context to a serializable object ChangeRequestJson
141- def from (cr : ChangeRequest , status : WorkflowNodeId , isAcceptable : Boolean )(implicit
142+ def from (cr : ChangeRequest , status : WorkflowNodeId , isAcceptable : Boolean )(using
142143 techniqueByDirective : Map [DirectiveId , Technique ],
143- diffService : DiffService
144+ diffService : DiffService ,
145+ qc : QueryContext
144146 ): PureResult [ChangeRequestJson ] = {
145147 val changesJson : PureResult [Option [ConfigurationChangeRequestJson ]] = cr match {
146148 case cr : ConfigurationChangeRequest => {
@@ -344,15 +346,17 @@ object DirectiveChangeJson {
344346 }
345347 }
346348
347- implicit def createTransformer (implicit
348- technique : Technique
349+ implicit def createTransformer (using
350+ technique : Technique ,
351+ qc : QueryContext
349352 ): Transformer [AddDirectiveDiff , DirectiveCreateChangeJson ] = {
350353 case AddDirectiveDiff (techniqueName, directive) =>
351354 DirectiveCreateChangeJson (JRDirective .fromDirective(technique, directive, None ))
352355 }
353356
354357 implicit def deleteTransformer (implicit
355- technique : Technique
358+ technique : Technique ,
359+ qc : QueryContext
356360 ): Transformer [DeleteDirectiveDiff , DirectiveDeleteChangeJson ] = {
357361 case DeleteDirectiveDiff (_, directive) =>
358362 DirectiveDeleteChangeJson (JRDirective .fromDirective(technique, directive, None ))
@@ -383,7 +387,8 @@ object DirectiveChangeJson {
383387 implicit def transformDirectiveDiff (implicit
384388 change : DirectiveChange ,
385389 technique : Technique ,
386- diffService : DiffService
390+ diffService : DiffService ,
391+ qc : QueryContext
387392 ): PartialTransformer [ChangeRequestDirectiveDiff , DirectiveChangeJson ] = {
388393 PartialTransformer
389394 .define[ChangeRequestDirectiveDiff , DirectiveChangeJson ]
@@ -413,7 +418,8 @@ object DirectiveChangeActionJson {
413418
414419 implicit def transformer (implicit
415420 technique : Technique ,
416- diffService : DiffService
421+ diffService : DiffService ,
422+ qc : QueryContext
417423 ): PartialTransformer [DirectiveChange , DirectiveChangeActionJson ] = {
418424 case (source, _) =>
419425 implicit val change = source
@@ -821,12 +827,17 @@ object GlobalParameterChangeJson {
821827 }
822828 }
823829
824- implicit val jrGlobalParameterTransformer : Transformer [GlobalParameter , JRGlobalParameter ] =
830+ implicit def jrGlobalParameterTransformer ( using qc : QueryContext ) : Transformer [GlobalParameter , JRGlobalParameter ] =
825831 JRGlobalParameter .fromGlobalParameter(_, None )
826- implicit val createTransformer : Transformer [AddGlobalParameterDiff , GlobalParameterCreateChangeJson ] =
832+
833+ implicit def createTransformer (using qc : QueryContext ): Transformer [AddGlobalParameterDiff , GlobalParameterCreateChangeJson ] =
827834 Transformer .derive[AddGlobalParameterDiff , GlobalParameterCreateChangeJson ]
828- implicit val deleteTransformer : Transformer [DeleteGlobalParameterDiff , GlobalParameterDeleteChangeJson ] =
835+
836+ implicit def deleteTransformer (using
837+ qc : QueryContext
838+ ): Transformer [DeleteGlobalParameterDiff , GlobalParameterDeleteChangeJson ] =
829839 Transformer .derive[DeleteGlobalParameterDiff , GlobalParameterDeleteChangeJson ]
840+
830841 implicit def modifyTransformer (implicit
831842 change : GlobalParameterChange ,
832843 diffService : DiffService
@@ -841,9 +852,10 @@ object GlobalParameterChangeJson {
841852 Result .fromEitherString(result)
842853 }
843854
844- implicit def transformer (implicit
855+ implicit def transformer (using
845856 change : GlobalParameterChange ,
846- diffService : DiffService
857+ diffService : DiffService ,
858+ qc : QueryContext
847859 ): PartialTransformer [ChangeRequestGlobalParameterDiff , GlobalParameterChangeJson ] = {
848860 PartialTransformer
849861 .define[ChangeRequestGlobalParameterDiff , GlobalParameterChangeJson ]
@@ -868,10 +880,11 @@ final case class GlobalParameterChangeActionJson(
868880)
869881
870882object GlobalParameterChangeActionJson {
871- import GlobalParameterChangeJson .*
883+ import com . normation . plugins . changevalidation . GlobalParameterChangeJson .*
872884
873- implicit def transformer (implicit
874- diffService : DiffService
885+ implicit def transformer (using
886+ diffService : DiffService ,
887+ qc : QueryContext
875888 ): PartialTransformer [GlobalParameterChange , GlobalParameterChangeActionJson ] = {
876889 case (source, _) =>
877890 implicit val change = source
@@ -901,9 +914,10 @@ final case class ConfigurationChangeRequestJson(
901914)
902915
903916object ConfigurationChangeRequestJson {
904- implicit def transformer (implicit
917+ implicit def transformer (using
905918 techniqueByDirective : Map [DirectiveId , Technique ],
906- diffService : DiffService
919+ diffService : DiffService ,
920+ qc : QueryContext
907921 ): PartialTransformer [ConfigurationChangeRequest , ConfigurationChangeRequestJson ] = {
908922 PartialTransformer
909923 .define[ConfigurationChangeRequest , ConfigurationChangeRequestJson ]
0 commit comments