diff --git a/tools/model_generator/src/com/libiec61850/scl/communication/Address.java b/tools/model_generator/src/com/libiec61850/scl/communication/Address.java new file mode 100644 index 00000000..6906a2d1 --- /dev/null +++ b/tools/model_generator/src/com/libiec61850/scl/communication/Address.java @@ -0,0 +1,42 @@ +package com.libiec61850.scl.communication; + +import java.util.LinkedList; +import java.util.List; + +import org.w3c.dom.Node; + +import com.libiec61850.scl.ParserUtils; +import com.libiec61850.scl.SclParserException; + +public class Address +{ + Node node; + + private List
addressParameters = new LinkedList
();
+
+ public Address(Node addressNode)
+ throws SclParserException
+ {
+ node = addressNode;
+
+ List getAddressParameters()
+ {
+ return addressParameters;
+ }
+
+ public P getAddressParameter(String type)
+ {
+ for (P p : addressParameters) {
+ if (p.getType().equals(type))
+ return p;
+ }
+
+ return null;
+ }
+}
diff --git a/tools/model_generator/src/com/libiec61850/scl/communication/P.java b/tools/model_generator/src/com/libiec61850/scl/communication/P.java
new file mode 100644
index 00000000..32794865
--- /dev/null
+++ b/tools/model_generator/src/com/libiec61850/scl/communication/P.java
@@ -0,0 +1,38 @@
+package com.libiec61850.scl.communication;
+
+import org.w3c.dom.Node;
+
+import com.libiec61850.scl.ParserUtils;
+import com.libiec61850.scl.SclParserException;
+
+public class P
+{
+ private Node node;
+
+ private String type;
+
+ public P(Node pNode) throws SclParserException
+ {
+ node = pNode;
+
+ this.type = ParserUtils.parseAttribute(node, "type");
+
+ if (this.type == null)
+ throw new SclParserException(node, "type is missing in P element!");
+ }
+
+ public String getType()
+ {
+ return type;
+ }
+
+ public String getText()
+ {
+ return node.getTextContent();
+ }
+
+ public void setText(String text)
+ {
+ node.setTextContent(text);
+ }
+}
diff --git a/tools/model_generator/src/com/libiec61850/scl/model/ClientLN.java b/tools/model_generator/src/com/libiec61850/scl/model/ClientLN.java
new file mode 100644
index 00000000..b3275aea
--- /dev/null
+++ b/tools/model_generator/src/com/libiec61850/scl/model/ClientLN.java
@@ -0,0 +1,72 @@
+package com.libiec61850.scl.model;
+
+/*
+ * Copyright 2013-2019 Michael Zillgith, MZ Automation GmbH
+ *
+ * This file is part of libIEC61850.
+ *
+ * libIEC61850 is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * libIEC61850 is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with libIEC61850. If not, see