Search in sources :

Example 6 with LogicalDevice

use of org.openmuc.openiec61850.LogicalDevice in project Protocol-Adapter-IEC61850 by OSGP.

the class Iec61850DeviceConnectionService method getModelNode.

private FcModelNode getModelNode(final String logicalDevice, final Iec61850Connection iec61850Connection, final String description) throws ProtocolAdapterException {
    final ServerModel serverModel = iec61850Connection.getServerModel();
    if (serverModel == null) {
        final String msg = String.format("ServerModel is null for logicalDevice {%s}", logicalDevice);
        throw new ProtocolAdapterException(msg);
    }
    final String objRef = description + logicalDevice + "/" + LogicalNode.LOGICAL_NODE_ZERO.getDescription() + "." + DataAttribute.NAME_PLATE.getDescription();
    final FcModelNode modelNode = (FcModelNode) serverModel.findModelNode(objRef, Fc.DC);
    if (modelNode == null) {
        final String msg = String.format("ModelNode is null for {%s}", objRef);
        throw new ProtocolAdapterException(msg);
    }
    return modelNode;
}
Also used : ServerModel(org.openmuc.openiec61850.ServerModel) FcModelNode(org.openmuc.openiec61850.FcModelNode) ProtocolAdapterException(com.alliander.osgp.adapter.protocol.iec61850.exceptions.ProtocolAdapterException)

Example 7 with LogicalDevice

use of org.openmuc.openiec61850.LogicalDevice in project Protocol-Adapter-IEC61850 by OSGP.

the class RtuSimulator method mockValue.

public void mockValue(final String logicalDeviceName, final String node, final String value) {
    if (!this.stopGeneratingValues.get()) {
        /*
             * A mocked value is explicitly set, stop changing values with
             * generateData, because one of those might break the mock value
             * that will be expected.
             */
        this.ensurePeriodicDataGenerationIsStopped();
    }
    final LogicalDevice logicalDevice = this.getLogicalDevice(logicalDeviceName);
    final BasicDataAttribute basicDataAttribute = logicalDevice.getAttributeAndSetValue(node, value);
    this.server.setValues(Arrays.asList(basicDataAttribute));
}
Also used : LogicalDevice(com.alliander.osgp.simulator.protocol.iec61850.server.logicaldevices.LogicalDevice) BasicDataAttribute(org.openmuc.openiec61850.BasicDataAttribute)

Aggregations

LogicalDevice (com.alliander.osgp.simulator.protocol.iec61850.server.logicaldevices.LogicalDevice)3 BasicDataAttribute (org.openmuc.openiec61850.BasicDataAttribute)3 ProtocolAdapterException (com.alliander.osgp.adapter.protocol.iec61850.exceptions.ProtocolAdapterException)2 Iec61850Connection (com.alliander.osgp.adapter.protocol.iec61850.infra.networking.Iec61850Connection)2 ArrayList (java.util.ArrayList)2 FcModelNode (org.openmuc.openiec61850.FcModelNode)2 ModelNode (org.openmuc.openiec61850.ModelNode)2 ServerModel (org.openmuc.openiec61850.ServerModel)2 Iec61850Device (com.alliander.osgp.adapter.protocol.iec61850.domain.entities.Iec61850Device)1 ConnectionFailureException (com.alliander.osgp.adapter.protocol.iec61850.exceptions.ConnectionFailureException)1 NodeReadException (com.alliander.osgp.adapter.protocol.iec61850.exceptions.NodeReadException)1 Iec61850ClientAssociation (com.alliander.osgp.adapter.protocol.iec61850.infra.networking.Iec61850ClientAssociation)1 DeviceConnection (com.alliander.osgp.adapter.protocol.iec61850.infra.networking.helper.DeviceConnection)1 Iec61850ClientBaseEventListener (com.alliander.osgp.adapter.protocol.iec61850.infra.networking.reporting.Iec61850ClientBaseEventListener)1 InetAddress (java.net.InetAddress)1 Date (java.util.Date)1 DateTime (org.joda.time.DateTime)1 ClientAssociation (org.openmuc.openiec61850.ClientAssociation)1 LogicalDevice (org.openmuc.openiec61850.LogicalDevice)1 LogicalDeviceDto (org.osgpfoundation.osgp.dto.da.iec61850.LogicalDeviceDto)1