From 9b8289aea95f388d169c0e2695f68a0db2e57a9c Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Tue, 2 Jul 2024 10:11:46 +0200 Subject: [PATCH 1/5] fix uuid of controlling ems when building participantActor --- .../scala/edu/ie3/simona/agent/grid/GridAgentController.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala b/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala index 7ba4abef77..ed6e605130 100644 --- a/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala +++ b/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala @@ -208,7 +208,7 @@ class GridAgentController( participant, thermalIslandGridsByBusId, environmentRefs, - allEms.get(participant.getUuid), + allEms.get(participant.getControllingEm.get().getUuid), ) introduceAgentToEnvironment(actorRef) // return uuid to actorRef From a9ca84662990efac30dd56695ad6b573394cdd37 Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Tue, 2 Jul 2024 11:05:28 +0200 Subject: [PATCH 2/5] changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8d10d20b89..58aff37bbe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -69,6 +69,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Fixed grid within GridSpec test [#806](https://github.com/ie3-institute/simona/issues/806) - Fixed log entry after power flow calculation [#814](https://github.com/ie3-institute/simona/issues/814) - Delete "Indices and tables" on the index page [#375](https://github.com/ie3-institute/simona/issues/375) +- Fixed provision of controllingEms within buildParticipantToActorRef [#841](https://github.com/ie3-institute/simona/issues/841) ## [3.0.0] - 2023-08-07 From 557afe809f4585bf187f7466129907bada8def52 Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Tue, 2 Jul 2024 14:45:49 +0200 Subject: [PATCH 3/5] refactor emActorRef to match tests --- .../edu/ie3/simona/agent/grid/GridAgentController.scala | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala b/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala index ed6e605130..d3c02e20db 100644 --- a/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala +++ b/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala @@ -201,6 +201,9 @@ class GridAgentController( .map { participant => val node = participant.getNode + val controllingEm: Option[UUID] = + participant.getControllingEm.toScala.map(_.getUuid) + val emActorRef = controllingEm.flatMap(allEms.get) val actorRef = buildParticipantActor( participantsConfig.requestVoltageDeviationThreshold, participantConfigUtil, @@ -208,7 +211,7 @@ class GridAgentController( participant, thermalIslandGridsByBusId, environmentRefs, - allEms.get(participant.getControllingEm.get().getUuid), + emActorRef, ) introduceAgentToEnvironment(actorRef) // return uuid to actorRef From b37d99cb841eb5f2b67641e9d151d195d14db585 Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Wed, 3 Jul 2024 10:49:10 +0200 Subject: [PATCH 4/5] refactoring due to codacy issue --- .../edu/ie3/simona/agent/grid/GridAgentController.scala | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala b/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala index d3c02e20db..aa97f858d8 100644 --- a/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala +++ b/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala @@ -201,9 +201,10 @@ class GridAgentController( .map { participant => val node = participant.getNode - val controllingEm: Option[UUID] = - participant.getControllingEm.toScala.map(_.getUuid) - val emActorRef = controllingEm.flatMap(allEms.get) + val controllingEm = + participant.getControllingEm.toScala.flatMap(em => Option(em.getUuid)) + val emActorRef = controllingEm.flatMap(uuid => allEms.get(uuid)) + val actorRef = buildParticipantActor( participantsConfig.requestVoltageDeviationThreshold, participantConfigUtil, From bc214b695abcce73a9f6437a8ea8e92e84f2b976 Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Thu, 4 Jul 2024 14:44:37 +0200 Subject: [PATCH 5/5] refactor providing controllingEm to reviewers comments --- .../simona/agent/grid/GridAgentController.scala | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala b/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala index aa97f858d8..43c111a47f 100644 --- a/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala +++ b/src/main/scala/edu/ie3/simona/agent/grid/GridAgentController.scala @@ -202,8 +202,16 @@ class GridAgentController( val node = participant.getNode val controllingEm = - participant.getControllingEm.toScala.flatMap(em => Option(em.getUuid)) - val emActorRef = controllingEm.flatMap(uuid => allEms.get(uuid)) + participant.getControllingEm.toScala + .map(_.getUuid) + .map(uuid => + allEms.getOrElse( + uuid, + throw new CriticalFailureException( + s"EM actor with UUID $uuid not found." + ), + ) + ) val actorRef = buildParticipantActor( participantsConfig.requestVoltageDeviationThreshold, @@ -212,7 +220,7 @@ class GridAgentController( participant, thermalIslandGridsByBusId, environmentRefs, - emActorRef, + controllingEm, ) introduceAgentToEnvironment(actorRef) // return uuid to actorRef