summaryrefslogtreecommitdiff
path: root/opendc-simulator/opendc-simulator-power/src
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2021-09-29 22:05:03 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2021-10-03 17:17:39 +0200
commitd2f15fd7fd16922c11b0dcaa8807e8a321859773 (patch)
treeb39b16890f1d8106e691427c622637431bd2a54b /opendc-simulator/opendc-simulator-power/src
parentf00c5f3663a2bdbfacc2d6f812503f22f1ed26bb (diff)
refactor(simulator): Merge distributor and aggregator into switch
This change removes the distributor and aggregator interfaces in favour of a single switch interface. Since the switch interface is as powerful as both the distributor and aggregator, we don't need the latter two.
Diffstat (limited to 'opendc-simulator/opendc-simulator-power/src')
-rw-r--r--opendc-simulator/opendc-simulator-power/src/main/kotlin/org/opendc/simulator/power/SimPdu.kt6
1 files changed, 3 insertions, 3 deletions
diff --git a/opendc-simulator/opendc-simulator-power/src/main/kotlin/org/opendc/simulator/power/SimPdu.kt b/opendc-simulator/opendc-simulator-power/src/main/kotlin/org/opendc/simulator/power/SimPdu.kt
index e5fcd938..947f6cb2 100644
--- a/opendc-simulator/opendc-simulator-power/src/main/kotlin/org/opendc/simulator/power/SimPdu.kt
+++ b/opendc-simulator/opendc-simulator-power/src/main/kotlin/org/opendc/simulator/power/SimPdu.kt
@@ -49,7 +49,7 @@ public class SimPdu(
/**
* Create a new PDU outlet.
*/
- public fun newOutlet(): Outlet = Outlet(switch.newOutput())
+ public fun newOutlet(): Outlet = Outlet(switch, switch.newOutput())
init {
switch.addInput(forwarder)
@@ -81,7 +81,7 @@ public class SimPdu(
/**
* A PDU outlet.
*/
- public class Outlet(private val provider: SimResourceCloseableProvider) : SimPowerOutlet(), AutoCloseable {
+ public class Outlet(private val switch: SimResourceSwitch, private val provider: SimResourceProvider) : SimPowerOutlet(), AutoCloseable {
override fun onConnect(inlet: SimPowerInlet) {
provider.startConsumer(inlet.createConsumer())
}
@@ -94,7 +94,7 @@ public class SimPdu(
* Remove the outlet from the PDU.
*/
override fun close() {
- provider.close()
+ switch.removeOutput(provider)
}
override fun toString(): String = "SimPdu.Outlet"