Search in sources :

Example 1 with VariableEndpoint

use of com.opensimulationplatform.systemstructure.xml.model.VariableEndpoint in project osp-validator by open-simulation-platform.

the class OspSystemStructureParserTest method valid.

@Test
public void valid() {
    OspSystemStructureParser parser = new OspSystemStructureParser();
    OspSystemStructure ospSystemStructure = parser.parse(TestResources.PARSER_SYSTEM_STRUCTURE_VALID_XML);
    List<Simulators.Simulator> simulators = ospSystemStructure.getSimulators().getSimulator();
    List<Object> connectionElements = ospSystemStructure.getConnections().getVariableConnectionOrSignalConnectionOrVariableGroupConnection();
    List<Connections.VariableConnection> variableConnections = new ArrayList<>();
    List<Connections.VariableGroupConnection> variableGroupConnections = new ArrayList<>();
    for (Object connectionElement : connectionElements) {
        if (connectionElement instanceof Connections.VariableConnection) {
            variableConnections.add((Connections.VariableConnection) connectionElement);
        } else if (connectionElement instanceof Connections.VariableGroupConnection) {
            variableGroupConnections.add((Connections.VariableGroupConnection) connectionElement);
        }
    }
    assertEquals(2, simulators.size());
    Simulators.Simulator s1 = simulators.get(0);
    Simulators.Simulator s2 = simulators.get(1);
    assertEquals("s1", s1.getName());
    assertEquals("s2", s2.getName());
    assertEquals(1, variableConnections.size());
    Connections.VariableConnection variableConnection = variableConnections.get(0);
    List<VariableEndpoint> variableEndpoints = variableConnection.getVariable();
    assertEquals(2, variableEndpoints.size());
    VariableEndpoint variableEndpointA = variableEndpoints.get(0);
    assertEquals("s1", variableEndpointA.getSimulator());
    assertEquals("v1", variableEndpointA.getName());
    VariableEndpoint variableEndpointB = variableEndpoints.get(1);
    assertEquals("s2", variableEndpointB.getSimulator());
    assertEquals("v2", variableEndpointB.getName());
    assertEquals(1, variableGroupConnections.size());
    Connections.VariableGroupConnection variableGroupConnection = variableGroupConnections.get(0);
    List<VariableEndpoint> variableGroupEndpoints = variableGroupConnection.getVariableGroup();
    assertEquals(2, variableGroupEndpoints.size());
    VariableEndpoint variableGroupEndpointA = variableGroupEndpoints.get(0);
    assertEquals("s1", variableGroupEndpointA.getSimulator());
    assertEquals("vg1", variableGroupEndpointA.getName());
    VariableEndpoint variableGroupEndpointB = variableGroupEndpoints.get(1);
    assertEquals("s2", variableGroupEndpointB.getSimulator());
    assertEquals("vg2", variableGroupEndpointB.getName());
}
Also used : Connections(com.opensimulationplatform.systemstructure.xml.model.Connections) ArrayList(java.util.ArrayList) VariableEndpoint(com.opensimulationplatform.systemstructure.xml.model.VariableEndpoint) Simulators(com.opensimulationplatform.systemstructure.xml.model.Simulators) OspSystemStructure(com.opensimulationplatform.systemstructure.xml.model.OspSystemStructure) Test(org.junit.Test)

Example 2 with VariableEndpoint

use of com.opensimulationplatform.systemstructure.xml.model.VariableEndpoint in project osp-validator by open-simulation-platform.

the class VariableConnectionConverter method convert.

@Override
public VariableConnection convert(Connections.VariableConnection variableConnectionElement) {
    VariableConnection variableConnection = new VariableConnection();
    List<VariableEndpoint> variableEndpoints = variableConnectionElement.getVariable();
    VariableEndpoint variableEndpointA = variableEndpoints.get(0);
    VariableEndpoint variableEndpointB = variableEndpoints.get(1);
    Simulator simulatorA = SystemStructureUtil.getSimulatorByName(context.systemStructure, variableEndpointA.getSimulator()).get();
    Variable variableA = ModelDescriptionUtil.getVariableByName(simulatorA.getModelDescription(), variableEndpointA.getName());
    variableConnection.setSimulatorA(simulatorA);
    variableConnection.setVariableA(variableA);
    Simulator simulatorB = SystemStructureUtil.getSimulatorByName(context.systemStructure, variableEndpointB.getSimulator()).get();
    Variable variableB = ModelDescriptionUtil.getVariableByName(simulatorB.getModelDescription(), variableEndpointB.getName());
    variableConnection.setSimulatorB(simulatorB);
    variableConnection.setVariableB(variableB);
    return variableConnection;
}
Also used : Variable(com.opensimulationplatform.core.model.modeldescription.Variable) VariableConnection(com.opensimulationplatform.core.model.systemstructure.VariableConnection) Simulator(com.opensimulationplatform.core.model.systemstructure.Simulator) VariableEndpoint(com.opensimulationplatform.systemstructure.xml.model.VariableEndpoint)

Example 3 with VariableEndpoint

use of com.opensimulationplatform.systemstructure.xml.model.VariableEndpoint in project osp-validator by open-simulation-platform.

the class VariableGroupConnectionConverter method convert.

@Override
public VariableGroupConnection convert(Connections.VariableGroupConnection variableGroupConnectionElement) {
    VariableGroupConnection variableGroupConnection = new VariableGroupConnection();
    List<VariableEndpoint> variableEndpoints = variableGroupConnectionElement.getVariableGroup();
    VariableEndpoint variableEndpointA = variableEndpoints.get(0);
    VariableEndpoint variableEndpointB = variableEndpoints.get(1);
    Simulator simulatorA = SystemStructureUtil.getSimulatorByName(context.systemStructure, variableEndpointA.getSimulator()).get();
    VariableGroup variableGroupA = ModelDescriptionUtil.getVariableGroupByName(simulatorA.getModelDescription(), variableEndpointA.getName());
    variableGroupConnection.setSimulatorA(simulatorA);
    variableGroupConnection.setVariableGroupA(variableGroupA);
    Simulator simulatorB = SystemStructureUtil.getSimulatorByName(context.systemStructure, variableEndpointB.getSimulator()).get();
    VariableGroup variableGroupB = ModelDescriptionUtil.getVariableGroupByName(simulatorB.getModelDescription(), variableEndpointB.getName());
    variableGroupConnection.setSimulatorB(simulatorB);
    variableGroupConnection.setVariableGroupB(variableGroupB);
    return variableGroupConnection;
}
Also used : VariableGroupConnection(com.opensimulationplatform.core.model.systemstructure.VariableGroupConnection) VariableGroup(com.opensimulationplatform.core.model.modeldescription.variablegroup.VariableGroup) Simulator(com.opensimulationplatform.core.model.systemstructure.Simulator) VariableEndpoint(com.opensimulationplatform.systemstructure.xml.model.VariableEndpoint)

Aggregations

VariableEndpoint (com.opensimulationplatform.systemstructure.xml.model.VariableEndpoint)3 Simulator (com.opensimulationplatform.core.model.systemstructure.Simulator)2 Variable (com.opensimulationplatform.core.model.modeldescription.Variable)1 VariableGroup (com.opensimulationplatform.core.model.modeldescription.variablegroup.VariableGroup)1 VariableConnection (com.opensimulationplatform.core.model.systemstructure.VariableConnection)1 VariableGroupConnection (com.opensimulationplatform.core.model.systemstructure.VariableGroupConnection)1 Connections (com.opensimulationplatform.systemstructure.xml.model.Connections)1 OspSystemStructure (com.opensimulationplatform.systemstructure.xml.model.OspSystemStructure)1 Simulators (com.opensimulationplatform.systemstructure.xml.model.Simulators)1 ArrayList (java.util.ArrayList)1 Test (org.junit.Test)1