Skip to content

Commit 54798d7

Browse files
committed
reorganize and refactor modules
Signed-off-by: Mohamed Sylla <[email protected]>
1 parent a4a30f0 commit 54798d7

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+1062
-427
lines changed

pom.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,13 @@
4141
<groupId>org.junit.jupiter</groupId>
4242
<artifactId>junit-jupiter-api</artifactId>
4343
<version>5.7.2</version>
44+
<scope>test</scope>
4445
</dependency>
4546
<dependency>
4647
<groupId>org.junit.jupiter</groupId>
4748
<artifactId>junit-jupiter-engine</artifactId>
4849
<version>5.7.2</version>
50+
<scope>test</scope>
4951
</dependency>
5052
<dependency>
5153
<groupId>org.lfenergy.compas.core</groupId>

sct-commons/pom.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,12 @@
9494
<artifactId>jakarta.annotation-api</artifactId>
9595
<version>1.3.5</version>
9696
</dependency>
97+
<dependency>
98+
<groupId>org.glassfish.jaxb</groupId>
99+
<artifactId>jaxb-runtime</artifactId>
100+
<version>2.3.1</version>
101+
<scope>compile</scope>
102+
</dependency>
97103
</dependencies>
98104
<build>
99105
<plugins>

sct-commons/src/main/java/org/lfenergy/compas/sct/commons/CommonConstants.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@ public class CommonConstants {
1111

1212
public static final String XML_DEFAULT_NS_PREFIX = "scl";
1313
public static final String XML_DEFAULT_NS_URI = "http://www.iec.ch/61850/2003/SCL";
14+
public static final String XML_DEFAULT_XSD_PATH = "classpath:schema/SCL.xsd";
1415
}

sct-commons/src/main/java/org/lfenergy/compas/sct/commons/dto/ControlBlock.java

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,13 @@
2222

2323
import java.util.ArrayList;
2424
import java.util.List;
25-
import java.util.Objects;
2625
import java.util.stream.Collectors;
2726

2827

2928
@Getter
3029
@Setter
3130
@NoArgsConstructor
32-
public abstract class ControlBlock<T extends ControlBlock> {
31+
public abstract class ControlBlock<T extends ControlBlock> extends LNodeMetaDataEmbedder {
3332

3433
protected String id; /// appID or smvID
3534
protected String name;
@@ -38,13 +37,6 @@ public abstract class ControlBlock<T extends ControlBlock> {
3837
protected long confRev;
3938
protected List<TControlWithIEDName.IEDName> iedNames = new ArrayList<>();
4039
protected TPredefinedTypeOfSecurityEnum securityEnable = TPredefinedTypeOfSecurityEnum.NONE;
41-
// summarized info about the LN holding this CB
42-
protected String iedName;
43-
protected String ldInst;
44-
protected String prefix;
45-
protected String lnClass;
46-
protected String lnInst;
47-
4840

4941
protected abstract Class<T> getClassType();
5042
public abstract TServiceType getServiceType();

sct-commons/src/main/java/org/lfenergy/compas/sct/commons/dto/DaTypeName.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@
44

55
package org.lfenergy.compas.sct.commons.dto;
66

7+
import com.fasterxml.jackson.annotation.JsonIgnore;
78
import lombok.Getter;
9+
import lombok.NoArgsConstructor;
810
import lombok.Setter;
911
import org.lfenergy.compas.scl2007b4.model.TFCEnum;
1012
import org.lfenergy.compas.scl2007b4.model.TPredefinedBasicTypeEnum;
@@ -18,6 +20,7 @@
1820

1921
@Getter
2022
@Setter
23+
@NoArgsConstructor
2124
public class DaTypeName extends DataTypeName{
2225
public static final String VALIDATION_REGEX
2326
= "[a-zA-Z][a-zA-Z0-9]*(\\([0-9]+\\))?(\\.[a-zA-Z][a-zA-Z0-9]*(\\([0-9]+\\))?)*";
@@ -30,7 +33,6 @@ public class DaTypeName extends DataTypeName{
3033

3134
public DaTypeName(String daName) {
3235
super(daName);
33-
validationPattern = VALIDATION_REGEX;
3436
}
3537

3638
public static DaTypeName from(DaTypeName dataName){
@@ -49,7 +51,6 @@ public static DaTypeName from(DaTypeName dataName){
4951

5052
public DaTypeName(String name, String names) {
5153
super(name, names);
52-
validationPattern = VALIDATION_REGEX;
5354
}
5455

5556
public boolean isValImport(){
@@ -70,6 +71,7 @@ public boolean isUpdatable(){
7071
);
7172
}
7273

74+
@JsonIgnore
7375
public void setDaiValues(List<TVal> vals) {
7476
if(vals.size() == 1){
7577
daiValues.put(0L,vals.get(0).getValue());

sct-commons/src/main/java/org/lfenergy/compas/sct/commons/dto/DataSetInfo.java

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,40 @@
66

77
import lombok.Getter;
88
import lombok.NoArgsConstructor;
9+
import org.lfenergy.compas.scl2007b4.model.TDataSet;
910

1011
import java.util.ArrayList;
1112
import java.util.Collections;
1213
import java.util.List;
14+
import java.util.stream.Collectors;
1315

1416
@Getter
1517
@NoArgsConstructor
16-
public class DataSetInfo {
18+
public class DataSetInfo extends LNodeMetaDataEmbedder{
1719
private String name;
1820
private List<FCDAInfo> fcdaInfos = new ArrayList<>();
1921

2022
public DataSetInfo(String name){
23+
super();
2124
this.name = name;
2225
}
2326

27+
public static DataSetInfo from(TDataSet tDataSet) {
28+
DataSetInfo dataSetInfo = new DataSetInfo();
29+
dataSetInfo.name = tDataSet.getName();
30+
dataSetInfo.fcdaInfos.addAll(
31+
tDataSet.getFCDA().stream()
32+
.map(tfcda -> new FCDAInfo(dataSetInfo.name, tfcda))
33+
.collect(Collectors.toList())
34+
);
35+
return dataSetInfo;
36+
}
37+
2438
public void addFCDAInfo(FCDAInfo fcdaInfo){
2539
fcdaInfos.add(fcdaInfo);
2640
}
2741

28-
public List<FCDAInfo> getFcdaInfos(){
42+
public List<FCDAInfo> getFCDAInfos(){
2943
return Collections.unmodifiableList(fcdaInfos);
3044
}
3145

sct-commons/src/main/java/org/lfenergy/compas/sct/commons/dto/DataTypeName.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@
44

55
package org.lfenergy.compas.sct.commons.dto;
66

7+
import com.fasterxml.jackson.annotation.JsonIgnore;
78
import lombok.Getter;
9+
import lombok.NoArgsConstructor;
810
import lombok.NonNull;
911
import lombok.Setter;
1012
import lombok.extern.slf4j.Slf4j;
@@ -23,9 +25,10 @@
2325
@Getter
2426
@Setter
2527
@Slf4j
28+
@NoArgsConstructor
2629
public class DataTypeName {
2730
protected String name = ""; // dataName or DataAttributeName
28-
protected String validationPattern = "";
31+
2932
private List<String> structNames = new ArrayList<>(); // [.DataName[…]] or [.DAComponentName[ ….]]
3033

3134
public DataTypeName(String dataName){
@@ -83,9 +86,4 @@ public int hashCode() {
8386
public void addStructName(String structName) {
8487
structNames.add(structName);
8588
}
86-
87-
public String getLastName() {
88-
int sz = structNames.size();
89-
return sz == 0 ? name : structNames.get(sz - 1);
90-
}
9189
}

sct-commons/src/main/java/org/lfenergy/compas/sct/commons/dto/DoTypeName.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
package org.lfenergy.compas.sct.commons.dto;
66

77
import lombok.Getter;
8+
import lombok.NoArgsConstructor;
89
import lombok.Setter;
910
import org.lfenergy.compas.scl2007b4.model.TPredefinedCDCEnum;
1011

@@ -14,18 +15,17 @@
1415

1516
@Getter
1617
@Setter
18+
@NoArgsConstructor
1719
public class DoTypeName extends DataTypeName {
1820
public static final String VALIDATION_REGEX = "[A-Z][0-9A-Za-z]{0,11}(\\.[a-z][0-9A-Za-z]*(\\([0-9]+\\))?)?";
1921
private TPredefinedCDCEnum cdc;
2022

2123
public DoTypeName(String doName) {
2224
super(doName);
23-
validationPattern = VALIDATION_REGEX;
2425
}
2526

2627
public DoTypeName(String ppDoName, String sdoNames) {
2728
super(ppDoName, sdoNames);
28-
validationPattern = VALIDATION_REGEX;
2929
}
3030

3131
public static DoTypeName from(DoTypeName dataName){

sct-commons/src/main/java/org/lfenergy/compas/sct/commons/dto/ExtRefInfo.java

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,23 +21,31 @@
2121
@Getter
2222
@Setter
2323
@NoArgsConstructor
24-
public class ExtRefInfo {
25-
private String holderIedName;
26-
private String holderLdInst;
27-
private String holderPrefix = "";
28-
private String holderLnClass;
29-
private String holderLnInst = "";
24+
public class ExtRefInfo extends LNodeMetaDataEmbedder{
3025

3126
private ExtRefSignalInfo signalInfo;
3227
private ExtRefBindingInfo bindingInfo;
3328
private ExtRefSourceInfo sourceInfo;
3429

3530
public ExtRefInfo(TExtRef tExtRef) {
31+
super();
3632
bindingInfo = new ExtRefBindingInfo(tExtRef);
3733
sourceInfo = new ExtRefSourceInfo(tExtRef);
3834
signalInfo = new ExtRefSignalInfo(tExtRef);
3935
}
4036

37+
public static ExtRefInfo from(TExtRef tExtRef, String iedName, String ldInst,
38+
String lnClass, String lnInst, String prefix){
39+
ExtRefInfo extRefInfo = new ExtRefInfo(tExtRef);
40+
extRefInfo.setHolderLDInst(ldInst);
41+
extRefInfo.setHolderIEDName(iedName);
42+
extRefInfo.setHolderLnInst(lnInst);
43+
extRefInfo.setHolderLnClass(lnClass);
44+
extRefInfo.setHolderLnPrefix(prefix);
45+
46+
return extRefInfo;
47+
}
48+
4149
public boolean matchFCDA(@NonNull TFCDA tfcda){
4250
if(AbstractLNAdapter.isNull(tfcda)) {
4351
return false;

sct-commons/src/main/java/org/lfenergy/compas/sct/commons/dto/ExtRefSourceInfo.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,11 @@
55
package org.lfenergy.compas.sct.commons.dto;
66

77

8+
import com.fasterxml.jackson.annotation.JsonProperty;
89
import lombok.Getter;
910
import lombok.NoArgsConstructor;
1011
import lombok.Setter;
12+
import org.apache.commons.lang3.StringUtils;
1113
import org.lfenergy.compas.scl2007b4.model.TExtRef;
1214

1315
import java.util.Objects;
@@ -32,6 +34,7 @@ public ExtRefSourceInfo(TExtRef tExtRef){
3234
srcCBName = tExtRef.getSrcCBName();
3335
}
3436

37+
3538
@Override
3639
public boolean equals(Object o) {
3740
if (o == null) return false;
@@ -59,7 +62,6 @@ public boolean isNull(){
5962
}
6063

6164
public boolean isValid() {
62-
63-
return true;
65+
return !StringUtils.isBlank(srcCBName);
6466
}
6567
}

0 commit comments

Comments
 (0)