com.zepben.evolve.services.common.Resolvers.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of evolve-sdk Show documentation
Show all versions of evolve-sdk Show documentation
SDK for interaction with the evolve platform
/*
* Copyright 2020 Zeppelin Bend Pty Ltd
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
package com.zepben.evolve.services.common
import com.zepben.evolve.cim.iec61968.assetinfo.*
import com.zepben.evolve.cim.iec61968.assets.Asset
import com.zepben.evolve.cim.iec61968.assets.AssetOrganisationRole
import com.zepben.evolve.cim.iec61968.assets.Pole
import com.zepben.evolve.cim.iec61968.assets.Streetlight
import com.zepben.evolve.cim.iec61968.common.Location
import com.zepben.evolve.cim.iec61968.common.Organisation
import com.zepben.evolve.cim.iec61968.common.OrganisationRole
import com.zepben.evolve.cim.iec61968.customers.Customer
import com.zepben.evolve.cim.iec61968.customers.CustomerAgreement
import com.zepben.evolve.cim.iec61968.customers.PricingStructure
import com.zepben.evolve.cim.iec61968.customers.Tariff
import com.zepben.evolve.cim.iec61968.infiec61968.infassetinfo.CurrentTransformerInfo
import com.zepben.evolve.cim.iec61968.infiec61968.infassetinfo.PotentialTransformerInfo
import com.zepben.evolve.cim.iec61968.infiec61968.infassetinfo.RelayInfo
import com.zepben.evolve.cim.iec61968.metering.EndDevice
import com.zepben.evolve.cim.iec61968.metering.UsagePoint
import com.zepben.evolve.cim.iec61968.operations.OperationalRestriction
import com.zepben.evolve.cim.iec61970.base.auxiliaryequipment.AuxiliaryEquipment
import com.zepben.evolve.cim.iec61970.base.auxiliaryequipment.CurrentTransformer
import com.zepben.evolve.cim.iec61970.base.auxiliaryequipment.PotentialTransformer
import com.zepben.evolve.cim.iec61970.base.auxiliaryequipment.Sensor
import com.zepben.evolve.cim.iec61970.base.core.*
import com.zepben.evolve.cim.iec61970.base.diagramlayout.Diagram
import com.zepben.evolve.cim.iec61970.base.diagramlayout.DiagramObject
import com.zepben.evolve.cim.iec61970.base.meas.Control
import com.zepben.evolve.cim.iec61970.base.meas.Measurement
import com.zepben.evolve.cim.iec61970.base.protection.ProtectionRelayFunction
import com.zepben.evolve.cim.iec61970.base.protection.ProtectionRelayScheme
import com.zepben.evolve.cim.iec61970.base.protection.ProtectionRelaySystem
import com.zepben.evolve.cim.iec61970.base.scada.RemoteControl
import com.zepben.evolve.cim.iec61970.base.scada.RemoteSource
import com.zepben.evolve.cim.iec61970.base.wires.*
import com.zepben.evolve.cim.iec61970.base.wires.generation.production.PowerElectronicsUnit
import com.zepben.evolve.cim.iec61970.infiec61970.feeder.Circuit
import com.zepben.evolve.cim.iec61970.infiec61970.feeder.Loop
import com.zepben.evolve.cim.iec61970.infiec61970.feeder.LvFeeder
/**
* These should be used to access [ReferenceResolver] instances for use with [BaseService.resolveOrDeferReference] and
* [BaseService.getUnresolvedReferenceMrids].
*
* The naming pattern for the resolver matches the property name of the reference. E.g. to get the resolver for
* base voltage for conducting equipment: `Resolvers.baseVoltage(conductingEquip)`.
*/
object Resolvers {
@JvmStatic
fun perLengthSequenceImpedance(acLineSegment: AcLineSegment): BoundReferenceResolver =
BoundReferenceResolver(acLineSegment, AcLineSegmentToPerLengthSequenceImpedanceResolver, null)
@JvmStatic
fun organisationRoles(asset: Asset): BoundReferenceResolver =
BoundReferenceResolver(asset, AssetToAssetOrganisationRoleResolver, null)
@JvmStatic
fun location(asset: Asset): BoundReferenceResolver =
BoundReferenceResolver(asset, AssetToLocationResolver, null)
@JvmStatic
fun terminal(auxiliaryEquipment: AuxiliaryEquipment): BoundReferenceResolver =
BoundReferenceResolver(auxiliaryEquipment, AuxiliaryEquipmentToTerminalResolver, null)
@JvmStatic
fun baseVoltage(conductingEquipment: ConductingEquipment): BoundReferenceResolver =
BoundReferenceResolver(conductingEquipment, ConductingEquipmentToBaseVoltageResolver, null)
@JvmStatic
fun terminals(conductingEquipment: ConductingEquipment): BoundReferenceResolver =
BoundReferenceResolver(conductingEquipment, ConductingEquipmentToTerminalsResolver, TerminalToConductingEquipmentResolver)
@JvmStatic
fun assetInfo(conductor: Conductor): BoundReferenceResolver =
BoundReferenceResolver(conductor, ConductorToWireInfoResolver, null)
@JvmStatic
fun assetInfo(currentTransformer: CurrentTransformer): BoundReferenceResolver =
BoundReferenceResolver(currentTransformer, CurrentTransformerToCurrentTransformerInfoResolver, null)
@JvmStatic
fun assetInfo(potentialTransformer: PotentialTransformer): BoundReferenceResolver =
BoundReferenceResolver(potentialTransformer, PotentialTransformerToPotentialTransformerInfoResolver, null)
@JvmStatic
fun assetInfo(powerTransformer: PowerTransformer): BoundReferenceResolver =
BoundReferenceResolver(powerTransformer, PowerTransformerToPowerTransformerInfoResolver, null)
@JvmStatic
fun assetInfo(shuntCompensator: ShuntCompensator): BoundReferenceResolver =
BoundReferenceResolver(shuntCompensator, ShuntCompensatorToShuntCompensatorInfoResolver, null)
@JvmStatic
fun assetInfo(switch: Switch): BoundReferenceResolver =
BoundReferenceResolver(switch, SwitchToSwitchInfoResolver, null)
@JvmStatic
fun streetlights(pole: Pole): BoundReferenceResolver =
BoundReferenceResolver(pole, PoleToStreetlightResolver, StreetlightToPoleResolver)
@JvmStatic
fun pole(streetlight: Streetlight): BoundReferenceResolver =
BoundReferenceResolver(streetlight, StreetlightToPoleResolver, PoleToStreetlightResolver)
@JvmStatic
fun terminals(connectivityNode: ConnectivityNode): BoundReferenceResolver =
BoundReferenceResolver(connectivityNode, ConnectivityNodeToTerminalResolver, TerminalToConnectivityNodeResolver)
@JvmStatic
fun remoteControl(control: Control): BoundReferenceResolver =
BoundReferenceResolver(control, ControlToRemoteControlResolver, RemoteControlToControlResolver)
@JvmStatic
fun agreements(customer: Customer): BoundReferenceResolver =
BoundReferenceResolver(customer, CustomerToCustomerAgreementResolver, CustomerAgreementToCustomerResolver)
@JvmStatic
fun customer(customerAgreement: CustomerAgreement): BoundReferenceResolver =
BoundReferenceResolver(customerAgreement, CustomerAgreementToCustomerResolver, CustomerToCustomerAgreementResolver)
@JvmStatic
fun pricingStructures(customerAgreement: CustomerAgreement): BoundReferenceResolver =
BoundReferenceResolver(customerAgreement, CustomerAgreementToPricingStructureResolver, null)
@JvmStatic
fun diagramObjects(diagram: Diagram): BoundReferenceResolver =
BoundReferenceResolver(diagram, DiagramToDiagramObjectResolver, DiagramObjectToDiagramResolver)
@JvmStatic
fun diagram(diagramObject: DiagramObject): BoundReferenceResolver =
BoundReferenceResolver(diagramObject, DiagramObjectToDiagramResolver, DiagramToDiagramObjectResolver)
@JvmStatic
fun serviceLocation(endDevice: EndDevice): BoundReferenceResolver =
BoundReferenceResolver(endDevice, EndDeviceToServiceLocationResolver, null)
@JvmStatic
fun usagePoints(endDevice: EndDevice): BoundReferenceResolver =
BoundReferenceResolver(endDevice, EndDeviceToUsagePointResolver, UsagePointToEndDeviceResolver)
@JvmStatic
fun containers(equipment: Equipment): BoundReferenceResolver =
BoundReferenceResolver(equipment, EquipmentToEquipmentContainerResolver, EquipmentContainerToEquipmentResolver)
@JvmStatic
fun currentContainers(equipment: Equipment): BoundReferenceResolver =
BoundReferenceResolver(equipment, EquipmentToCurrentContainersResolver, EquipmentContainerToCurrentEquipmentResolver)
@JvmStatic
fun operationalRestrictions(equipment: Equipment): BoundReferenceResolver =
BoundReferenceResolver(equipment, EquipmentToOperationalRestrictionResolver, OperationalRestrictionToEquipmentResolver)
@JvmStatic
fun usagePoints(equipment: Equipment): BoundReferenceResolver =
BoundReferenceResolver(equipment, EquipmentToUsagePointResolver, UsagePointToEquipmentResolver)
@JvmStatic
fun equipment(equipmentContainer: EquipmentContainer): BoundReferenceResolver =
BoundReferenceResolver(equipmentContainer, EquipmentContainerToEquipmentResolver, EquipmentToEquipmentContainerResolver)
@JvmStatic
fun phases(energyConsumer: EnergyConsumer): BoundReferenceResolver =
BoundReferenceResolver(energyConsumer, EnergyConsumerToEnergyConsumerPhaseResolver, EnergyConsumerPhaseToEnergyConsumerResolver)
@JvmStatic
fun energyConsumer(energyConsumerPhase: EnergyConsumerPhase): BoundReferenceResolver =
BoundReferenceResolver(energyConsumerPhase, EnergyConsumerPhaseToEnergyConsumerResolver, EnergyConsumerToEnergyConsumerPhaseResolver)
@JvmStatic
fun phases(energySource: EnergySource): BoundReferenceResolver =
BoundReferenceResolver(energySource, EnergySourceToEnergySourcePhaseResolver, EnergySourcePhaseToEnergySourceResolver)
@JvmStatic
fun energySource(energySourcePhase: EnergySourcePhase): BoundReferenceResolver =
BoundReferenceResolver(energySourcePhase, EnergySourcePhaseToEnergySourceResolver, EnergySourceToEnergySourcePhaseResolver)
@JvmStatic
fun normalEnergizingSubstation(feeder: Feeder): BoundReferenceResolver =
BoundReferenceResolver(feeder, FeederToNormalEnergizingSubstationResolver, SubstationToNormalEnergizedFeedersResolver)
@JvmStatic
fun normalHeadTerminal(feeder: Feeder): BoundReferenceResolver =
BoundReferenceResolver(feeder, FeederToNormalHeadTerminalResolver, null)
@JvmStatic
fun normalEnergizedLvFeeders(feeder: Feeder): BoundReferenceResolver =
BoundReferenceResolver(feeder, FeederToNormalEnergizedLvFeedersResolver, LvFeederToNormalEnergizingFeedersResolver)
@JvmStatic
fun subGeographicalRegions(geographicalRegion: GeographicalRegion): BoundReferenceResolver =
BoundReferenceResolver(geographicalRegion, GeographicalRegionToSubGeographicalRegionResolver, SubGeographicalRegionToGeographicalRegionResolver)
@JvmStatic
fun remoteSource(measurement: Measurement): BoundReferenceResolver =
BoundReferenceResolver(measurement, MeasurementToRemoteSourceResolver, RemoteSourceToMeasurementResolver)
@JvmStatic
fun equipment(operationalRestriction: OperationalRestriction): BoundReferenceResolver =
BoundReferenceResolver(operationalRestriction, OperationalRestrictionToEquipmentResolver, EquipmentToOperationalRestrictionResolver)
@JvmStatic
fun organisation(organisationRole: OrganisationRole): BoundReferenceResolver =
BoundReferenceResolver(organisationRole, OrganisationRoleToOrganisationResolver, null)
@JvmStatic
fun location(powerSystemResource: PowerSystemResource): BoundReferenceResolver =
BoundReferenceResolver(powerSystemResource, PowerSystemResourceToLocationResolver, null)
@JvmStatic
fun ends(powerTransformer: PowerTransformer): BoundReferenceResolver =
BoundReferenceResolver(powerTransformer, PowerTransformerToPowerTransformerEndResolver, PowerTransformerEndToPowerTransformerResolver)
@JvmStatic
fun powerTransformer(powerTransformerEnd: PowerTransformerEnd): BoundReferenceResolver =
BoundReferenceResolver(powerTransformerEnd, PowerTransformerEndToPowerTransformerResolver, PowerTransformerToPowerTransformerEndResolver)
@JvmStatic
fun tariffs(pricingStructure: PricingStructure): BoundReferenceResolver =
BoundReferenceResolver(pricingStructure, PricingStructureToTariffResolver, null)
@JvmStatic
fun transformerEnd(ratioTapChanger: RatioTapChanger): BoundReferenceResolver =
BoundReferenceResolver(ratioTapChanger, RatioTapChangerToTransformerEndResolver, TransformerEndToRatioTapChangerResolver)
@JvmStatic
fun control(remoteControl: RemoteControl): BoundReferenceResolver =
BoundReferenceResolver(remoteControl, RemoteControlToControlResolver, ControlToRemoteControlResolver)
@JvmStatic
fun measurement(remoteSource: RemoteSource): BoundReferenceResolver =
BoundReferenceResolver(remoteSource, RemoteSourceToMeasurementResolver, MeasurementToRemoteSourceResolver)
@JvmStatic
fun geographicalRegion(subGeographicalRegion: SubGeographicalRegion): BoundReferenceResolver =
BoundReferenceResolver(subGeographicalRegion, SubGeographicalRegionToGeographicalRegionResolver, GeographicalRegionToSubGeographicalRegionResolver)
@JvmStatic
fun substations(subGeographicalRegion: SubGeographicalRegion): BoundReferenceResolver =
BoundReferenceResolver(subGeographicalRegion, SubGeographicalRegionToSubstationResolver, SubstationToSubGeographicalRegionResolver)
@JvmStatic
fun normalEnergizedFeeders(substation: Substation): BoundReferenceResolver =
BoundReferenceResolver(substation, SubstationToNormalEnergizedFeedersResolver, FeederToNormalEnergizingSubstationResolver)
@JvmStatic
fun subGeographicalRegion(substation: Substation): BoundReferenceResolver =
BoundReferenceResolver(substation, SubstationToSubGeographicalRegionResolver, SubGeographicalRegionToSubstationResolver)
@JvmStatic
fun circuits(substation: Substation): BoundReferenceResolver =
BoundReferenceResolver(substation, SubstationToCircuitResolver, CircuitToSubstationResolver)
@JvmStatic
fun loops(substation: Substation): BoundReferenceResolver =
BoundReferenceResolver(substation, SubstationToLoopResolver, LoopToSubstationResolver)
@JvmStatic
fun normalEnergizedLoops(substation: Substation): BoundReferenceResolver =
BoundReferenceResolver(substation, SubstationToEnergizedLoopResolver, LoopToEnergizingSubstationResolver)
@JvmStatic
fun conductingEquipment(terminal: Terminal): BoundReferenceResolver =
BoundReferenceResolver(terminal, TerminalToConductingEquipmentResolver, ConductingEquipmentToTerminalsResolver)
@JvmStatic
fun connectivityNode(terminal: Terminal): BoundReferenceResolver =
BoundReferenceResolver(terminal, TerminalToConnectivityNodeResolver, ConnectivityNodeToTerminalResolver)
@JvmStatic
fun baseVoltage(transformerEnd: TransformerEnd): BoundReferenceResolver =
BoundReferenceResolver(transformerEnd, TransformerEndToBaseVoltageResolver, null)
@JvmStatic
fun ratioTapChanger(transformerEnd: TransformerEnd): BoundReferenceResolver =
BoundReferenceResolver(transformerEnd, TransformerEndToRatioTapChangerResolver, RatioTapChangerToTransformerEndResolver)
@JvmStatic
fun terminal(transformerEnd: TransformerEnd): BoundReferenceResolver =
BoundReferenceResolver(transformerEnd, TransformerEndToTerminalResolver, null)
@JvmStatic
fun endDevices(usagePoint: UsagePoint): BoundReferenceResolver =
BoundReferenceResolver(usagePoint, UsagePointToEndDeviceResolver, EndDeviceToUsagePointResolver)
@JvmStatic
fun equipment(usagePoint: UsagePoint): BoundReferenceResolver =
BoundReferenceResolver(usagePoint, UsagePointToEquipmentResolver, EquipmentToUsagePointResolver)
@JvmStatic
fun usagePointLocation(usagePoint: UsagePoint): BoundReferenceResolver =
BoundReferenceResolver(usagePoint, UsagePointToLocationResolver, null)
@JvmStatic
fun loop(circuit: Circuit): BoundReferenceResolver =
BoundReferenceResolver(circuit, CircuitToLoopResolver, LoopToCircuitResolver)
@JvmStatic
fun endTerminal(circuit: Circuit): BoundReferenceResolver =
BoundReferenceResolver(circuit, CircuitToTerminalResolver, null)
@JvmStatic
fun endSubstation(circuit: Circuit): BoundReferenceResolver =
BoundReferenceResolver(circuit, CircuitToSubstationResolver, SubstationToCircuitResolver)
@JvmStatic
fun circuits(loop: Loop): BoundReferenceResolver =
BoundReferenceResolver(loop, LoopToCircuitResolver, CircuitToLoopResolver)
@JvmStatic
fun substations(loop: Loop): BoundReferenceResolver =
BoundReferenceResolver(loop, LoopToSubstationResolver, SubstationToLoopResolver)
@JvmStatic
fun normalEnergizingSubstations(loop: Loop): BoundReferenceResolver =
BoundReferenceResolver(loop, LoopToEnergizingSubstationResolver, SubstationToEnergizedLoopResolver)
@JvmStatic
fun normalHeadTerminal(lvFeeder: LvFeeder): BoundReferenceResolver =
BoundReferenceResolver(lvFeeder, LvFeederToNormalHeadTerminalResolver, null)
@JvmStatic
fun normalEnergizingFeeders(lvFeeder: LvFeeder): BoundReferenceResolver =
BoundReferenceResolver(lvFeeder, LvFeederToNormalEnergizingFeedersResolver, FeederToNormalEnergizedLvFeedersResolver)
@JvmStatic
fun powerElectronicsConnection(powerElectronicsUnit: PowerElectronicsUnit): BoundReferenceResolver =
BoundReferenceResolver(
powerElectronicsUnit,
PowerElectronicsUnitToPowerElectronicsConnectionResolver,
PowerElectronicsConnectionToPowerElectronicsUnitResolver
)
@JvmStatic
fun powerElectronicsConnection(powerElectronicsConnectionPhase: PowerElectronicsConnectionPhase): BoundReferenceResolver =
BoundReferenceResolver(
powerElectronicsConnectionPhase,
PowerElectronicsConnectionPhaseToPowerElectronicsConnectionResolver,
PowerElectronicsConnectionToPowerElectronicsConnectionPhaseResolver
)
@JvmStatic
fun powerElectronicsUnit(powerElectronicsConnection: PowerElectronicsConnection): BoundReferenceResolver =
BoundReferenceResolver(
powerElectronicsConnection,
PowerElectronicsConnectionToPowerElectronicsUnitResolver,
PowerElectronicsUnitToPowerElectronicsConnectionResolver
)
@JvmStatic
fun powerElectronicsConnectionPhase(powerElectronicsConnection: PowerElectronicsConnection): BoundReferenceResolver =
BoundReferenceResolver(
powerElectronicsConnection,
PowerElectronicsConnectionToPowerElectronicsConnectionPhaseResolver,
PowerElectronicsConnectionPhaseToPowerElectronicsConnectionResolver
)
@JvmStatic
fun starImpedance(transformerEnd: TransformerEnd): BoundReferenceResolver =
BoundReferenceResolver(transformerEnd, TransformerEndToTransformerStarImpedanceResolver, null)
@JvmStatic
fun powerTransformerInfo(transformerTankInfo: TransformerTankInfo): BoundReferenceResolver =
BoundReferenceResolver(transformerTankInfo, TransformerTankInfoToPowerTransformerInfoResolver, PowerTransformerInfoToTransformerTankInfoResolver)
@JvmStatic
fun transformerTankInfo(powerTransformerInfo: PowerTransformerInfo): BoundReferenceResolver =
BoundReferenceResolver(powerTransformerInfo, PowerTransformerInfoToTransformerTankInfoResolver, TransformerTankInfoToPowerTransformerInfoResolver)
@JvmStatic
fun transformerTankInfo(transformerEndInfo: TransformerEndInfo): BoundReferenceResolver =
BoundReferenceResolver(transformerEndInfo, TransformerEndInfoToTransformerTankInfoResolver, TransformerTankInfoToTransformerEndInfoResolver)
@JvmStatic
fun transformerEndInfo(transformerTankInfo: TransformerTankInfo): BoundReferenceResolver =
BoundReferenceResolver(transformerTankInfo, TransformerTankInfoToTransformerEndInfoResolver, TransformerEndInfoToTransformerTankInfoResolver)
@JvmStatic
fun transformerStarImpedance(transformerEndInfo: TransformerEndInfo): BoundReferenceResolver =
BoundReferenceResolver(transformerEndInfo, TransformerEndInfoToTransformerStarImpedanceResolver, TransformerStarImpedanceToTransformerEndInfoResolver)
@JvmStatic
fun transformerEndInfo(transformerStarImpedance: TransformerStarImpedance): BoundReferenceResolver =
BoundReferenceResolver(
transformerStarImpedance,
TransformerStarImpedanceToTransformerEndInfoResolver,
TransformerEndInfoToTransformerStarImpedanceResolver
)
@JvmStatic
fun energisedEndNoLoadTests(transformerEndInfo: TransformerEndInfo): BoundReferenceResolver =
BoundReferenceResolver(transformerEndInfo, TransformerEndInfoToNoLoadTestResolver, null)
@JvmStatic
fun energisedEndShortCircuitTests(transformerEndInfo: TransformerEndInfo): BoundReferenceResolver =
BoundReferenceResolver(transformerEndInfo, TransformerEndInfoToEnergisedEndShortCircuitTestResolver, null)
@JvmStatic
fun groundedEndShortCircuitTests(transformerEndInfo: TransformerEndInfo): BoundReferenceResolver =
BoundReferenceResolver(transformerEndInfo, TransformerEndInfoToGroundedEndShortCircuitTestResolver, null)
@JvmStatic
fun openEndOpenCircuitTests(transformerEndInfo: TransformerEndInfo): BoundReferenceResolver =
BoundReferenceResolver(transformerEndInfo, TransformerEndInfoToOpenEndOpenCircuitTestResolver, null)
@JvmStatic
fun energisedEndOpenCircuitTests(transformerEndInfo: TransformerEndInfo): BoundReferenceResolver =
BoundReferenceResolver(transformerEndInfo, TransformerEndInfoToEnergisedEndOpenCircuitTestResolver, null)
@JvmStatic
fun terminal(regulatingControl: RegulatingControl): BoundReferenceResolver =
BoundReferenceResolver(regulatingControl, RegulatingControlToTerminalResolver, null)
@JvmStatic
fun regulatingCondEq(regulatingControl: RegulatingControl): BoundReferenceResolver =
BoundReferenceResolver(
regulatingControl,
RegulatingControlToRegulatingCondEqResolver,
RegulatingCondEqToRegulatingControlResolver
)
@JvmStatic
fun regulatingControl(regulatingCondEq: RegulatingCondEq): BoundReferenceResolver =
BoundReferenceResolver(
regulatingCondEq,
RegulatingCondEqToRegulatingControlResolver,
RegulatingControlToRegulatingCondEqResolver
)
@JvmStatic
fun tapChangerControl(tapChanger: TapChanger): BoundReferenceResolver =
BoundReferenceResolver(tapChanger, TapChangerToTapChangerControlResolver, null)
@JvmStatic
fun protectedSwitches(protectionRelayFunction: ProtectionRelayFunction): BoundReferenceResolver =
BoundReferenceResolver(
protectionRelayFunction,
ProtectionRelayFunctionToProtectedSwitchResolver,
ProtectedSwitchToProtectionRelayFunctionResolver
)
@JvmStatic
fun sensors(protectionRelayFunction: ProtectionRelayFunction): BoundReferenceResolver =
BoundReferenceResolver(protectionRelayFunction, ProtectionRelayFunctionToSensorResolver, SensorToProtectionRelayFunctionResolver)
@JvmStatic
fun schemes(protectionRelayFunction: ProtectionRelayFunction): BoundReferenceResolver =
BoundReferenceResolver(
protectionRelayFunction,
ProtectionRelayFunctionToProtectionRelaySchemeResolver,
ProtectionRelaySchemeToProtectionRelayFunctionResolver
)
@JvmStatic
fun system(protectionRelayScheme: ProtectionRelayScheme): BoundReferenceResolver =
BoundReferenceResolver(
protectionRelayScheme,
ProtectionRelaySchemeToProtectionRelaySystemResolver,
ProtectionRelaySystemToProtectionRelaySchemeResolver
)
@JvmStatic
fun functions(protectionRelayScheme: ProtectionRelayScheme): BoundReferenceResolver =
BoundReferenceResolver(
protectionRelayScheme,
ProtectionRelaySchemeToProtectionRelayFunctionResolver,
ProtectionRelayFunctionToProtectionRelaySchemeResolver
)
@JvmStatic
fun schemes(protectionRelaySystem: ProtectionRelaySystem): BoundReferenceResolver =
BoundReferenceResolver(
protectionRelaySystem,
ProtectionRelaySystemToProtectionRelaySchemeResolver,
ProtectionRelaySchemeToProtectionRelaySystemResolver
)
@JvmStatic
fun relayFunctions(sensor: Sensor): BoundReferenceResolver =
BoundReferenceResolver(
sensor,
SensorToProtectionRelayFunctionResolver,
ProtectionRelayFunctionToSensorResolver
)
@JvmStatic
fun relayFunctions(protectedSwitch: ProtectedSwitch): BoundReferenceResolver =
BoundReferenceResolver(
protectedSwitch,
ProtectedSwitchToProtectionRelayFunctionResolver,
ProtectionRelayFunctionToProtectedSwitchResolver
)
@JvmStatic
fun function(fuse: Fuse): BoundReferenceResolver =
BoundReferenceResolver(fuse, FuseToProtectionRelayFunctionResolver, null)
@JvmStatic
fun assetInfo(protectionRelayFunction: ProtectionRelayFunction): BoundReferenceResolver =
BoundReferenceResolver(protectionRelayFunction, ProtectionRelayFunctionToRelayInfoResolver, null)
@JvmStatic
fun reactiveCapabilityCurve(synchronousMachine: SynchronousMachine): BoundReferenceResolver =
BoundReferenceResolver(synchronousMachine, SynchronousMachineToReactiveCapabilityCurveResolver, null)
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy