Skip to content

Commit

Permalink
fixup! fixup! fixup! fixup! Fixes #16197: Serialization of NodeConfig…
Browse files Browse the repository at this point in the history
…urations is fairly expensive

Fixes #16197: Serialization of NodeConfigurations is fairly expensive
  • Loading branch information
fanf committed Feb 25, 2022
1 parent 0258d6f commit b0cb8e3
Showing 1 changed file with 15 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ object ExpectedReportsSerialisation {
* one for value with couple of expanded/unexpanded, one for value with report id
*/

// name are false for startHour / splayHour and no override
// name are false for startHour / splayHour. Override is computed on deserialization.
final case class JsonAgentRun7_0(
interval : Int
, startMinute: Int
Expand Down Expand Up @@ -542,34 +542,33 @@ object ExpectedReportsSerialisation {
* ]
*/

// name are false for startHour / splayHour and no override
final case class JsonAgentRun7_1(
i : Int
, sm: Int
, sh: Int
, st: Int
i : Int // interval
, sm: Int // start minute
, sh: Int // strart hour
, st: Int // splay time
) {
def transform(over: Option[Boolean] = None) = AgentRunInterval(over, i, sm, sh, st)
}
implicit class _JsonAgentRun7_1(x: AgentRunInterval) {
def transform = JsonAgentRun7_1(x.interval, x.startMinute, x.startHour, x.splaytime)
}

final case class JsonGlobalPolicyMode7_1(m: PolicyMode, o: PolicyModeOverrides) {
def transform = GlobalPolicyMode(m, o)
}
implicit class _JsonGlobalPolicyMode7_1(x: GlobalPolicyMode) {
def transform = JsonGlobalPolicyMode7_1(x.mode, x.overridable)
}

final case class JsonModes7_1(
gpm: JsonGlobalPolicyMode7_1
, npm: Option[PolicyMode]
, gcm: ComplianceModeName
, ghp: Int
, nhp: Option[Int]
, gar: JsonAgentRun7_1
, nar: Option[JsonAgentRun7_1]
final case class JsonModes7_1( //modes
gpm: JsonGlobalPolicyMode7_1 // global policy mode
, npm: Option[PolicyMode] // node policy mode
, gcm: ComplianceModeName // global compliance mode
, ghp: Int // global heartbeat period
, nhp: Option[Int] // node heartbeat period
, gar: JsonAgentRun7_1 // global agent run (interval)
, nar: Option[JsonAgentRun7_1] // node agent run (interval)
) {
def transform = {
val overrideAgentRun = if(nar.isDefined) Some(true) else None
Expand Down Expand Up @@ -701,7 +700,7 @@ object ExpectedReportsSerialisation {
////////// json codec //////////

implicit val codecJsonGlobalPolicyMode7_1: JsonCodec[JsonGlobalPolicyMode7_1] = DeriveJsonCodec.gen
implicit val codecJsonAgentRun7_0: JsonCodec[JsonAgentRun7_1] = DeriveJsonCodec.gen
implicit val codecJsonAgentRun7_1: JsonCodec[JsonAgentRun7_1] = DeriveJsonCodec.gen
implicit val codecJsonPolicy7_1: JsonCodec[JsonPolicy7_1] = DeriveJsonCodec.gen
implicit val codecJsonJsonOverrides7_1: JsonCodec[JsonOverrides7_1] = DeriveJsonCodec.gen
implicit val codecJsonModes7_1: JsonCodec[JsonModes7_1] = DeriveJsonCodec.gen
Expand Down

0 comments on commit b0cb8e3

Please sign in to comment.