diff --git a/.idea/libraries/gen__junit_jupiter_params.xml b/.idea/libraries/gen__junit_jupiter_params.xml
new file mode 100644
index 0000000..49ff3ae
--- /dev/null
+++ b/.idea/libraries/gen__junit_jupiter_params.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build.xml b/build.xml
index 652b84d..e58cbe8 100644
--- a/build.xml
+++ b/build.xml
@@ -110,6 +110,7 @@
+
@@ -147,6 +148,9 @@
+
+
+
@@ -159,6 +163,7 @@
+
diff --git a/dclare-for-java/dclare-for-java.iml b/dclare-for-java/dclare-for-java.iml
index 0f8549a..af54a0a 100644
--- a/dclare-for-java/dclare-for-java.iml
+++ b/dclare-for-java/dclare-for-java.iml
@@ -2,9 +2,9 @@
-
-
-
+
+
+
@@ -17,5 +17,6 @@
+
\ No newline at end of file
diff --git a/dclare-for-java/module_dclare-for-java.xml b/dclare-for-java/module_dclare-for-java.xml
index 87b519e..f2251f6 100644
--- a/dclare-for-java/module_dclare-for-java.xml
+++ b/dclare-for-java/module_dclare-for-java.xml
@@ -32,6 +32,7 @@
+
@@ -45,6 +46,7 @@
+
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/Abstract.java b/dclare-for-java/src/org/modelingvalue/jdclare/Abstract.java
index ce05ff4..3ba64f5 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/Abstract.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/Abstract.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/Constraints.java b/dclare-for-java/src/org/modelingvalue/jdclare/Constraints.java
index 4ba02d4..1d6c19c 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/Constraints.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/Constraints.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DClare.java b/dclare-for-java/src/org/modelingvalue/jdclare/DClare.java
index f76c66f..cc61d95 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DClare.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DClare.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -15,6 +15,9 @@
package org.modelingvalue.jdclare;
+import static org.modelingvalue.dclare.CoreSetableModifier.containment;
+import static org.modelingvalue.dclare.CoreSetableModifier.softMandatory;
+import static org.modelingvalue.dclare.CoreSetableModifier.mandatory;
import static org.modelingvalue.jdclare.PropertyQualifier.constant;
import java.lang.annotation.Annotation;
@@ -68,12 +71,14 @@
import org.modelingvalue.dclare.Action;
import org.modelingvalue.dclare.ActionTransaction;
import org.modelingvalue.dclare.Constant;
-import org.modelingvalue.dclare.Direction;
+import org.modelingvalue.dclare.DclareConfig;
import org.modelingvalue.dclare.Getable;
import org.modelingvalue.dclare.LeafTransaction;
import org.modelingvalue.dclare.Mutable;
import org.modelingvalue.dclare.Observed;
+import org.modelingvalue.dclare.Priority;
import org.modelingvalue.dclare.Setable;
+import org.modelingvalue.dclare.SetableModifier;
import org.modelingvalue.dclare.State;
import org.modelingvalue.dclare.Transaction;
import org.modelingvalue.dclare.Universe;
@@ -92,41 +97,35 @@
@SuppressWarnings({"unchecked", "rawtypes", "unused"})
public final class DClare extends UniverseTransaction {
-
private static final int ANIMATE_DELAY_TIME = Integer.getInteger("ANIMATE_DELAY_TIME", 1);
-
+ //
private static final ContextPool THE_POOL = ContextThread.createPool();
-
+ //
private static final String DEFAULT = "DEFAULT";
private static final String CONSTRAINTS = "CONSTRAINTS";
-
- private static final Set> DSTRUCTS = Set.of(DStruct0.class, DStruct1.class, DStruct2.class, DStruct3.class, DStruct4.class, //
- DStruct5.class, DStruct6.class, DStruct7.class, DStruct8.class, DStruct9.class, DStruct10.class);
-
+ //
+ private static final Set> DSTRUCTS = Set.of(DStruct0.class, DStruct1.class, DStruct2.class, DStruct3.class, DStruct4.class, DStruct5.class, DStruct6.class, DStruct7.class, DStruct8.class, DStruct9.class, DStruct10.class);
+ //
private static final Method HASH_CODE = method(Object::hashCode);
private static final Method EQUALS = method(Object::equals);
private static final Method TO_STRING = method(Object::toString);
-
+ //
public static final Method D_OBJECT_RULES = method(DObject::dObjectRules);
public static final Method D_OBJECT_CLASS = DClare. method(DObject::dClass);
-
+ //
private static final Method PACKAGES = method(DPackageContainer::packages);
private static final Method CLASSES = method(DClassContainer::classes);
-
+ //
private static final Method GET_KEY = method(DStruct::getKey);
private static final Method GET_KEY_SIZE = method(DStruct::getKeySize);
private static final Method LOOKUP = method(DStruct::lookup);
-
+ //
private static final Method PASSED_SECONDS = method(DClock::passSeconds);
public static final Observed ROOT_RUN_NR = Observed.of("dRootRunNr", 0);
-
public static final Context CLASS_INIT_STATE = Context.of();
-
public static final Setable OPPOSITE = Setable.of("dOpposite", null);
-
public static final Setable SCOPE = Setable.of("dScope", null);
-
private static final Constant, State> CLASS_INIT = Constant.of("DStructClassInit", c -> {
if (c.isInterface()) {
return dClare().constraints(c);
@@ -134,7 +133,6 @@ public final class DClare extends UniverseTransaction {
throw new Error("Non Interface DObject Class '" + c + "'");
}
});
-
private static final Constant, DStructClass> CLASS = Constant., DStructClass> of("DStructClass", (Class extends DStruct> c) -> dclare(extend(c, DStructClass.class), c), (tx, c, o, d) -> {
Class declaringClass = c.getDeclaringClass();
if (declaringClass == null) {
@@ -145,9 +143,8 @@ public final class DClare extends UniverseTransaction {
dClass(declaringClass);
}
});
-
private static final Constant PROPERTY = Constant. of("dProperty", (Method m) -> {
- if (m.getReturnType() != Void.TYPE && !m.isSynthetic() && m.getParameterCount() == 0 && //
+ if (m.getReturnType() != Void.TYPE && !m.isSynthetic() && m.getParameterCount() == 0 && //
(ann(m, Property.class) != null || extend(m, DMethodProperty.class) != DMethodProperty.class)) {
return dclare(extend(m, DMethodProperty.class), m);
} else {
@@ -158,7 +155,6 @@ public final class DClare extends UniverseTransaction {
dClass((Class) m.getDeclaringClass());
}
});
-
private static final Constant, Method> METHOD = Constant.of("dMethod", p -> {
Method method = p.b().implMethod();
if (method.getDeclaringClass() != p.a()) {
@@ -171,32 +167,29 @@ public final class DClare extends UniverseTransaction {
return method;
}
});
-
private static final Constant GETABLE = Constant.of("dGetable", p -> {
- Object d = p.key() ? null : p.defaultValue();
- boolean cc = p.checkConsistency();
- boolean man = p.mandatory() && (d == null || d instanceof ContainingCollection);
+ Object def = p.key() ? null : p.defaultValue();
+ SetableModifier[] mods = {
+ softMandatory.iff(p.softMandatory()), //
+ mandatory.iff(p.mandatory()), //
+ containment.iff(p.containment())};
Function der = p.derived() ? p.deriver() : null;
DProperty oppos = p.opposite();
DProperty scope = p.scopeProperty();
Supplier> os = oppos != null ? () -> DClare.setable(oppos) : null;
Supplier>> ss = scope != null ? () -> DClare.setable(scope) : null;
- return p.key() ? new KeyGetable(p, p.keyNr(), null) : p.constant() ? //
- (p.containment() ? Constant.of(p, d, true, der, cc) : Constant.of(p, d, os, ss, der, cc)) : //
- (p.containment() ? Observed.of(p, man, d, true, cc) : Observed.of(p, man, d, os, ss, cc));
+ return p.key() ? new KeyGetable(p, p.keyNr(), null) : p.constant() ? Constant.of(p, def, os, ss, der, mods) : Observed.of(p, def, os, ss, mods);
});
-
public static final Constant RULE = Constant.of("dRule", (Method m) -> {
- if (m.getParameterCount() == 0 && !m.isSynthetic() && (m.isDefault() || Modifier.isPrivate(m.getModifiers())) && //
- (ann(m, Property.class) != null || ann(m, Rule.class) != null || //
- extend(m, DMethodProperty.class) != DMethodProperty.class || extend(m, DMethodRule.class) != DMethodRule.class) && //
+ if (m.getParameterCount() == 0 && !m.isSynthetic() && (m.isDefault() || Modifier.isPrivate(m.getModifiers())) && //
+ (ann(m, Property.class) != null || ann(m, Rule.class) != null || //
+ extend(m, DMethodProperty.class) != DMethodProperty.class || extend(m, DMethodRule.class) != DMethodRule.class) && //
!m.isAnnotationPresent(Default.class) && !qual(m, constant)) {
return dclare(extend(m, DMethodRule.class), m);
} else {
return null;
}
});
-
private static final Constant PACKAGE = Constant. of("dPackage", (String n) -> {
int i = n.lastIndexOf('.');
if (i > 0) {
@@ -205,14 +198,9 @@ public final class DClare extends UniverseTransaction {
} else {
return dclare(DPackage.class, dUniverse(), n);
}
- }, (tx, n, o, p) -> {
- DClare.> setable(PACKAGES).set(p.parent(), Set::add, p);
- });
-
+ }, (tx, n, o, p) -> DClare.> setable(PACKAGES).set(p.parent(), Set::add, p));
private static final Constant, Lookup> NATIVE_LOOKUP = Constant.of("nLookup", c -> dStruct((Class extends DStruct>) c).lookup());
-
public static final Constant HANDLE = Constant.of("nHandle", Handle::new);
-
private static final Constant, Constructor> NATIVE_CONSTRUCTOR = Constant.of("dNativeConstructor", c -> {
Native ann = ann(c, Native.class);
Constructor constr = null;
@@ -226,7 +214,6 @@ public final class DClare extends UniverseTransaction {
}
return constr;
});
-
private static final Constant NATIVE = Constant.of("dNative", o -> {
DNative dNative = null;
Constructor nativeConstructor = NATIVE_CONSTRUCTOR.get(jClass(o));
@@ -425,14 +412,14 @@ public static void rule(O dObject, SerializableFunction) o -> dProperty.set(o, value.apply(o)), dObject, dProperty)), //
- set(DObjectRule::initDirection, Direction.forward)));
+ set(DObjectRule::initPriority, Priority.forward)));
}
public static void rule(O dObject, String name, Consumer rule) {
Setable> ors = setable(D_OBJECT_RULES);
ors.set(dObject, Set::add, dclare(DObjectRule.class, dObject, name, //
set(DObjectRule::consumer, id(rule, dObject, name)), //
- set(DObjectRule::initDirection, Direction.forward)));
+ set(DObjectRule::initPriority, Priority.forward)));
}
public static void set(O dObject, SerializableFunction property, V value) {
@@ -461,7 +448,7 @@ public static Set opposite(O dObjec
}
public static Collection getCollection(O dObject, SerializableFunction property) {
- return (Collection) getable(method(dObject, property)).getCollection(dObject);
+ return getable(method(dObject, property)).getCollection(dObject);
}
public static DProperty dProperty(O dObject, SerializableFunction property) {
@@ -859,6 +846,7 @@ public static T ann(Class> cls, Class annotation) {
return supers(null, cls, (a, c) -> c.isAnnotationPresent(annotation) ? c.getAnnotation(annotation) : a);
}
+ @SuppressWarnings("SameParameterValue")
private static Class cls(Class> cls, Class annotation) {
return supers(null, cls, (a, c) -> c.isAnnotationPresent(annotation) ? c : a);
}
@@ -881,6 +869,18 @@ public static boolean qual(Method method, PropertyQualifier q) {
});
}
+ public static void checkQualifiers(Method method) {
+ if (qual(method, PropertyQualifier.mandatory) && qual(method, PropertyQualifier.optional)) {
+ throw new Error("Illegal qualifier combination: mandatory and optional in: " + method);
+ }
+ if (qual(method, PropertyQualifier.mandatory) && qual(method, PropertyQualifier.softMandatory)) {
+ throw new Error("Illegal qualifier combination: mandatory and softMandatory in: " + method);
+ }
+ if (qual(method, PropertyQualifier.optional) && qual(method, PropertyQualifier.softMandatory)) {
+ throw new Error("Illegal qualifier combination: optional and softMandatory in: " + method);
+ }
+ }
+
public static int key(Method method) {
return overridden(-1, method, (k, m) -> {
Property p = m.getAnnotation(Property.class);
@@ -888,11 +888,13 @@ public static int key(Method method) {
});
}
+ @SuppressWarnings("SameParameterValue")
private static Method method(Method method, Class annotation) {
return overridden(null, method, (a, m) -> m.isAnnotationPresent(annotation) ? m : a);
}
public static Class extends T> extend(Method method, Class target) {
+ //noinspection DuplicatedCode
return overridden(target, method, (e, m) -> {
for (Annotation ann : m.getAnnotations()) {
Extend ext = ann.annotationType().getAnnotation(Extend.class);
@@ -916,7 +918,9 @@ public static Class extends T> extend(Method method, Class target) {
});
}
+ @SuppressWarnings("SameParameterValue")
private static Class extends T> extend(Class cls, Class target) {
+ //noinspection DuplicatedCode
return supers(target, cls, (e, c) -> {
for (Annotation ann : c.getAnnotations()) {
Extend ext = ann.annotationType().getAnnotation(Extend.class);
@@ -1138,7 +1142,7 @@ public static int runNr() {
private final Action checkFatals;
private DClare(Class extends DUniverse> universeClass, boolean checkFatals, Clock clock, int maxInInQueue) {
- super(dStruct(universeClass), THE_POOL, null, maxInInQueue, MAX_TOTAL_NR_OF_CHANGES, MAX_NR_OF_CHANGES, MAX_NR_OF_OBSERVED, MAX_NR_OF_OBSERVERS, MAX_NR_OF_HISTORY, null);
+ super(dStruct(universeClass), THE_POOL, new DclareConfig().withMaxInInQueue(maxInInQueue).withDevMode(true));
this.checkFatals = checkFatals ? Action.of("$checkFatals", o -> checkFatals()) : null;
this.clock = clock;
}
@@ -1225,7 +1229,8 @@ public final U universe() {
return (U) mutable();
}
- private static KeyGetable cyclicKey(Method method, int nr) {
+ @SuppressWarnings("UnusedReturnValue")
+ private static KeyGetable cyclicKey(Method method, @SuppressWarnings("SameParameterValue") int nr) {
DProperty property = dclare(extend(method, DMethodProperty.class), method);
PROPERTY.force(method, property);
KeyGetable getable = new KeyGetable(property, nr, null);
@@ -1233,35 +1238,19 @@ private static KeyGetable cyclicKey(Method method, int nr) {
return getable;
}
- private static Constant cyclicConstant(Method method) {
- DProperty property = dclare(extend(method, DMethodProperty.class), method);
- PROPERTY.force(method, property);
- Constant setable = Constant.of(property, defaultValue(method, false), deriver(method));
- GETABLE.force(property, setable);
- return setable;
- }
-
- private static Constant cyclicContainmentConstant(Method method) {
- DProperty property = dclare(extend(method, DMethodProperty.class), method);
- PROPERTY.force(method, property);
- Constant setable = Constant.of(property, defaultValue(method, false), true, deriver(method), true);
- GETABLE.force(property, setable);
- return setable;
- }
-
- private static Observed cyclicObserved(Method method) {
+ @SuppressWarnings("UnusedReturnValue")
+ private static Constant cyclicConstant(Method method, SetableModifier... modifiers) {
DProperty property = dclare(extend(method, DMethodProperty.class), method);
PROPERTY.force(method, property);
- Observed setable = Observed.of(property, defaultValue(method, false));
+ Constant setable = Constant.of(property, defaultValue(method, false), deriver(method), modifiers);
GETABLE.force(property, setable);
return setable;
}
- private static Observed cyclicContainment(Method method) {
+ private static Observed cyclicObserved(Method method, SetableModifier... modifiers) {
DProperty property = dclare(extend(method, DMethodProperty.class), method);
PROPERTY.force(method, property);
- Object defaultValue = defaultValue(method, false);
- Observed setable = Observed.of(property, defaultValue, true, true);
+ Observed setable = Observed.of(property, defaultValue(method, false), modifiers);
GETABLE.force(property, setable);
return setable;
}
@@ -1278,16 +1267,16 @@ public void start() {
cyclicConstant(DClare. method(DMethodProperty::many));
cyclicConstant(DClare. method(DMethodProperty::mandatory));
cyclicConstant(DClare. method(DMethodProperty::defaultValue));
- cyclicContainmentConstant(DClare. method(DMethodProperty::implicitOpposite));
+ cyclicConstant(DClare. method(DMethodProperty::implicitOpposite), containment);
cyclicConstant(DClare. method(DMethodProperty::containment));
cyclicConstant(DClare. method(DMethodProperty::opposite));
- cyclicConstant(DClare. method(DMethodProperty::checkConsistency));
+ cyclicConstant(DClare. method(DMethodProperty::softMandatory));
cyclicConstant(DClare. method(DMethodProperty::scopeProperty));
cyclicConstant(DClare. method(DMethodProperty::constant));
cyclicConstant(DClare. method(DMethodProperty::derived));
cyclicConstant(DClare. method(DMethodProperty::deriver));
- cyclicContainment(DClare. method(DPackageContainer::packages));
- cyclicContainment(DClare. method(DClassContainer::classes));
+ cyclicObserved(DClare. method(DPackageContainer::packages), containment);
+ cyclicObserved(DClare. method(DClassContainer::classes), containment);
dClass(DMethodProperty.class);
dClass(DStructClass.class);
dClass(DClass.class);
@@ -1297,32 +1286,18 @@ public void start() {
dClass(DObject.class);
dClass(DNamed.class);
stopSetable = cyclicObserved(DClare.method(DUniverse::stop));
+ addPreAction(setTime);
+ if (checkFatals != null) {
+ addPostAction(checkFatals);
+ }
+ addPostAction(printOutput);
+ addPostAction(animate);
});
addTimeTravelingAction(bootstrap);
put(bootstrap);
super.init();
}
- @Override
- protected State pre(State pre) {
- return stopSetable != null ? run(trigger(pre, universe(), setTime, Direction.forward)) : pre;
- }
-
- @Override
- protected State post(State pre) {
- State post = super.post(pre);
- if (isStopped(post)) {
- return post;
- } else {
- if (checkFatals != null) {
- post = trigger(post, universe(), checkFatals, Direction.forward);
- }
- post = trigger(post, universe(), printOutput, Direction.forward);
- post = trigger(post, universe(), animate, Direction.forward);
- return run(post);
- }
- }
-
private static class KeyGetable extends Getable {
private final int keyNr;
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DClock.java b/dclare-for-java/src/org/modelingvalue/jdclare/DClock.java
index 1e23c88..79da00a 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DClock.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DClock.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DFunctionObject.java b/dclare-for-java/src/org/modelingvalue/jdclare/DFunctionObject.java
index b06b57f..9195966 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DFunctionObject.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DFunctionObject.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DNamed.java b/dclare-for-java/src/org/modelingvalue/jdclare/DNamed.java
index 5dc2753..ad6b9f2 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DNamed.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DNamed.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DNative.java b/dclare-for-java/src/org/modelingvalue/jdclare/DNative.java
index efdf7a2..d3764ff 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DNative.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DNative.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DObject.java b/dclare-for-java/src/org/modelingvalue/jdclare/DObject.java
index 7b7d44d..a13391c 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DObject.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DObject.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -29,6 +29,7 @@
import org.modelingvalue.collections.Set;
import org.modelingvalue.collections.util.NonLockingPrintWriter;
import org.modelingvalue.collections.util.StringUtil;
+import org.modelingvalue.dclare.Direction;
import org.modelingvalue.dclare.Mutable;
import org.modelingvalue.dclare.MutableTransaction;
import org.modelingvalue.dclare.Observer;
@@ -75,7 +76,7 @@ default Collection dChildren(State state) {
@SuppressWarnings({"unchecked", "rawtypes"})
default Collection extends Observer>> dMutableObservers() {
//noinspection RedundantCast
- return (Collection) dObjectRules().map(DRule::observer);
+ return Collection.concat(Mutable.super.dMutableObservers(), (Collection) dObjectRules().map(DRule::observer));
}
@Override
@@ -103,6 +104,27 @@ default void dDeactivate() {
Mutable.super.dDeactivate(); // do not remove this! it seems unneccesarry but it is not; this has to do with how Proxy handles calls.
}
+ @Override
+ default Direction dDirection() {
+ return Mutable.super.dDirection(); // do not remove this! it seems unneccesarry but it is not; this has to do with how Proxy handles calls.
+ }
+
+ @Override
+ default boolean dHasAncestor(Mutable ancestor) {
+ return Mutable.super.dHasAncestor(ancestor); // do not remove this! it seems unneccesarry but it is not; this has to do with how Proxy handles calls.
+ }
+
+ @Override
+ default void dHandleRemoved(Mutable parent) {
+ Mutable.super.dHandleRemoved(parent); // do not remove this! it seems unneccesarry but it is not; this has to do with how Proxy handles calls.
+ }
+
+ @SuppressWarnings("rawtypes")
+ @Override
+ default boolean dToBeCleared(Setable setable) {
+ return Mutable.super.dToBeCleared(setable); // do not remove this! it seems unneccesarry but it is not; this has to do with how Proxy handles calls.
+ }
+
@Override
default MutableTransaction openTransaction(MutableTransaction parent) {
return Mutable.super.openTransaction(parent);
@@ -114,7 +136,7 @@ default void closeTransaction(Transaction tx) {
}
@Override
- default Mutable resolve(Mutable self) {
+ default Mutable dResolve(Mutable self) {
return this;
}
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DProblem.java b/dclare-for-java/src/org/modelingvalue/jdclare/DProblem.java
index 4f22586..a450040 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DProblem.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DProblem.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DSeverity.java b/dclare-for-java/src/org/modelingvalue/jdclare/DSeverity.java
index bf37afe..0880d27 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DSeverity.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DSeverity.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct.java
index d25a295..1befc06 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct0.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct0.java
index 0ef7972..b4bf03a 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct0.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct0.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct1.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct1.java
index 3a81888..2a4d4a4 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct1.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct1.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct10.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct10.java
index 15fff40..2c3f6ea 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct10.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct10.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct2.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct2.java
index 9c44106..6676256 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct2.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct2.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct3.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct3.java
index 0ec4d5a..807859c 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct3.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct3.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct4.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct4.java
index 64c7638..99dac74 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct4.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct4.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct5.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct5.java
index be99d43..8d842de 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct5.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct5.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct6.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct6.java
index 58cd4ce..1653233 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct6.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct6.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct7.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct7.java
index d2efa70..ded31a9 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct7.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct7.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct8.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct8.java
index dd1e497..00c14ec 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct8.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct8.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct9.java b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct9.java
index 168bed7..ab7dd6a 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DStruct9.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DStruct9.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DUUObject.java b/dclare-for-java/src/org/modelingvalue/jdclare/DUUObject.java
index a84529d..bb95dde 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DUUObject.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DUUObject.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/DUniverse.java b/dclare-for-java/src/org/modelingvalue/jdclare/DUniverse.java
index 5a8f1f2..cf20987 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/DUniverse.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/DUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/Default.java b/dclare-for-java/src/org/modelingvalue/jdclare/Default.java
index 8a0a15d..fa60ca9 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/Default.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/Default.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/Deferred.java b/dclare-for-java/src/org/modelingvalue/jdclare/Deferred.java
index 39ccddc..fadb27c 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/Deferred.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/Deferred.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/Extend.java b/dclare-for-java/src/org/modelingvalue/jdclare/Extend.java
index f789209..1ca151a 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/Extend.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/Extend.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/IOString.java b/dclare-for-java/src/org/modelingvalue/jdclare/IOString.java
index f861628..2d98566 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/IOString.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/IOString.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/Native.java b/dclare-for-java/src/org/modelingvalue/jdclare/Native.java
index e2596f4..a4ae040 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/Native.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/Native.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/Property.java b/dclare-for-java/src/org/modelingvalue/jdclare/Property.java
index 1c99f51..a173db0 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/Property.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/Property.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/PropertyQualifier.java b/dclare-for-java/src/org/modelingvalue/jdclare/PropertyQualifier.java
index dae06e6..8467d8d 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/PropertyQualifier.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/PropertyQualifier.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -17,11 +17,11 @@
public enum PropertyQualifier {
mandatory(),
+ softMandatory(),
optional(),
containment(),
constant(),
visible(),
- unchecked(),
hidden(),
validation()
}
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/Rule.java b/dclare-for-java/src/org/modelingvalue/jdclare/Rule.java
index 608431d..ded78c0 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/Rule.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/Rule.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DClass.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DClass.java
index a18fa77..6ac25ad 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DClass.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DClassContainer.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DClassContainer.java
index 7dbdebb..8e10525 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DClassContainer.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DClassContainer.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DMethodProperty.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DMethodProperty.java
index b9d26e8..1a69450 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DMethodProperty.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DMethodProperty.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -19,6 +19,7 @@
import static org.modelingvalue.jdclare.DClare.OPPOSITE;
import static org.modelingvalue.jdclare.DClare.SCOPE;
import static org.modelingvalue.jdclare.DClare.ann;
+import static org.modelingvalue.jdclare.DClare.checkQualifiers;
import static org.modelingvalue.jdclare.DClare.dProperty;
import static org.modelingvalue.jdclare.DClare.dclare;
import static org.modelingvalue.jdclare.DClare.getConstraints;
@@ -30,7 +31,7 @@
import static org.modelingvalue.jdclare.PropertyQualifier.hidden;
import static org.modelingvalue.jdclare.PropertyQualifier.mandatory;
import static org.modelingvalue.jdclare.PropertyQualifier.optional;
-import static org.modelingvalue.jdclare.PropertyQualifier.unchecked;
+import static org.modelingvalue.jdclare.PropertyQualifier.softMandatory;
import static org.modelingvalue.jdclare.PropertyQualifier.validation;
import static org.modelingvalue.jdclare.PropertyQualifier.visible;
@@ -111,13 +112,6 @@ default boolean visible() {
}
}
- @Override
- @Property(constant)
- default boolean checkConsistency() {
- Method method = method();
- return !qual(method, unchecked);
- }
-
@Override
@Property(constant)
default DProperty, ?> opposite() {
@@ -155,7 +149,8 @@ default boolean checkConsistency() {
@Property(constant)
default boolean mandatory() {
Method method = method();
- if (qual(method, mandatory)) {
+ checkQualifiers(method);
+ if (qual(method, mandatory) || qual(method, softMandatory)) {
return true;
} else if (qual(method, optional)) {
return false;
@@ -164,6 +159,12 @@ default boolean mandatory() {
}
}
+ @Override
+ @Property(constant)
+ default boolean softMandatory() {
+ return qual(method(), softMandatory);
+ }
+
@Override
@Property(constant)
default boolean many() {
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DMethodRule.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DMethodRule.java
index 3101863..77069cb 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DMethodRule.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DMethodRule.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -22,7 +22,7 @@
import java.lang.reflect.Method;
import java.util.function.Consumer;
-import org.modelingvalue.dclare.Direction;
+import org.modelingvalue.dclare.Priority;
import org.modelingvalue.jdclare.DClare;
import org.modelingvalue.jdclare.DObject;
import org.modelingvalue.jdclare.DStruct1;
@@ -62,8 +62,8 @@ default boolean validation() {
@Override
@Property(constant)
- default Direction initDirection() {
- return validation() ? Direction.backward : Direction.forward;
+ default Priority initPriority() {
+ return validation() ? Priority.backward : Priority.forward;
}
}
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DObjectRule.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DObjectRule.java
index 27a1f58..d2cedc2 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DObjectRule.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DObjectRule.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -19,7 +19,7 @@
import java.util.function.Consumer;
-import org.modelingvalue.dclare.Direction;
+import org.modelingvalue.dclare.Priority;
import org.modelingvalue.dclare.NonInternableObserver;
import org.modelingvalue.dclare.Observer;
import org.modelingvalue.jdclare.DObject;
@@ -46,12 +46,12 @@ default String name() {
@Override
@Property(constant)
- Direction initDirection();
+ Priority initPriority();
@Override
@Property(constant)
default Observer observer() {
- return NonInternableObserver.of(this, o -> consumer().accept(o), initDirection());
+ return NonInternableObserver.of(this, o -> consumer().accept(o), initPriority());
}
}
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DOppositeProperty.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DOppositeProperty.java
index 1162ed2..4c2e3c7 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DOppositeProperty.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DOppositeProperty.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DPackage.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DPackage.java
index 65bff36..a361a71 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DPackage.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DPackage.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DPackageContainer.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DPackageContainer.java
index 68f9dbe..42995d2 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DPackageContainer.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DPackageContainer.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DProperty.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DProperty.java
index 848f9a9..0f863b0 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DProperty.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DProperty.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -99,8 +99,8 @@ default boolean visible() {
@Default
@Property
- default boolean checkConsistency() {
- return true;
+ default boolean softMandatory() {
+ return false;
}
default V get(O object) {
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DRule.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DRule.java
index 4d638c9..1ec67e7 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DRule.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DRule.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -19,7 +19,7 @@
import java.util.function.Consumer;
-import org.modelingvalue.dclare.Direction;
+import org.modelingvalue.dclare.Priority;
import org.modelingvalue.dclare.Observer;
import org.modelingvalue.jdclare.Abstract;
import org.modelingvalue.jdclare.DNamed;
@@ -33,11 +33,11 @@ public interface DRule extends DNamed {
Consumer consumer();
@Property(constant)
- Direction initDirection();
+ Priority initPriority();
@Property(constant)
default Observer observer() {
- return Observer.of(this, o -> consumer().accept(o), initDirection());
+ return Observer.of(this, o -> consumer().accept(o), initPriority());
}
@Property
diff --git a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DStructClass.java b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DStructClass.java
index 562f9ba..d8e3ab9 100644
--- a/dclare-for-java/src/org/modelingvalue/jdclare/meta/DStructClass.java
+++ b/dclare-for-java/src/org/modelingvalue/jdclare/meta/DStructClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/BirdTest.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/BirdTest.java
index 4f0d370..e959777 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/BirdTest.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/BirdTest.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -207,8 +207,8 @@ public void noOrphans() {
DClare dclare = of(BirdUniverse.class);
start(dclare);
addBird(dclare, Pigeon.class, Pair.of("0", "green"));
- State result = stop(dclare);
- Set birds = result.getObjects(Bird.class).toSet();
+ State result = stop(dclare);
+ Set birds = result.getObjects(Bird.class).toSet();
assertEquals(1, birds.size(), "Unexpected Birds: " + birds);
}
@@ -410,26 +410,26 @@ private Throwable getCause(Throwable t) {
return t;
}
- private void assertThrowable(Throwable cause, Class extends Throwable> throwable) {
- if (PRINT_STACK_TRACE || !throwable.equals(cause.getClass())) {
+ private void assertThrowable(Throwable cause, Class extends Throwable> expected) {
+ if (PRINT_STACK_TRACE || !expected.equals(cause.getClass())) {
cause.printStackTrace();
}
- assertEquals(throwable, cause.getClass());
+ assertEquals(expected, cause.getClass());
}
- private void assertThrowable(Throwable cause, Class extends Throwable> throwable, String regex) {
- if (PRINT_STACK_TRACE || !throwable.equals(cause.getClass())) {
+ private void assertThrowable(Throwable cause, Class extends Throwable> expected, String regex) {
+ if (PRINT_STACK_TRACE || !expected.equals(cause.getClass())) {
cause.printStackTrace();
}
- assertEquals(throwable, cause.getClass());
+ assertEquals(expected, cause.getClass());
assertTrue(cause.getMessage().matches(regex), cause.getMessage() + " != " + regex);
}
- private void assertThrowable(Throwable cause, Class extends Throwable> throwable, String message, Function f) {
- if (PRINT_STACK_TRACE || !throwable.equals(cause.getClass())) {
+ private void assertThrowable(Throwable cause, Class extends Throwable> expected, String message, Function f) {
+ if (PRINT_STACK_TRACE || !expected.equals(cause.getClass())) {
cause.printStackTrace();
}
- assertEquals(throwable, cause.getClass());
+ assertEquals(expected, cause.getClass());
assertEquals(message, f.apply(cause));
}
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/BirdUniverse.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/BirdUniverse.java
index cb786dc..e45b6cc 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/BirdUniverse.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/BirdUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Company.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Company.java
index 23634ce..eed095e 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Company.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Company.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Instrument.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Instrument.java
index c692ca7..45c55fe 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Instrument.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Instrument.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/JDclareTests.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/JDclareTests.java
index 5ace72c..8356fca 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/JDclareTests.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/JDclareTests.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -15,8 +15,13 @@
package org.modelingvalue.jdclare.test;
-import static org.junit.jupiter.api.Assertions.*;
-import static org.modelingvalue.jdclare.DClare.*;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
+import static org.modelingvalue.jdclare.DClare.dNative;
+import static org.modelingvalue.jdclare.DClare.of;
import java.time.Clock;
import java.time.Instant;
@@ -27,7 +32,8 @@
import org.modelingvalue.collections.Collection;
import org.modelingvalue.collections.Set;
import org.modelingvalue.collections.util.Pair;
-import org.modelingvalue.dclare.Direction;
+import org.modelingvalue.dclare.Priority;
+import org.modelingvalue.dclare.Mutable;
import org.modelingvalue.dclare.State;
import org.modelingvalue.dclare.TransactionClass;
import org.modelingvalue.dclare.ex.OutOfScopeException;
@@ -47,7 +53,7 @@ public class JDclareTests {
public void manyUniverse() {
for (int i = 0; i < MANY_TIMES; i++) {
DClare dClare = of(DUniverse.class);
- State result = dClare.run();
+ State result = dClare.run();
result.run(() -> check(result));
}
}
@@ -55,7 +61,7 @@ public void manyUniverse() {
@Test
public void universe() {
DClare dClare = of(DUniverse.class);
- State result = dClare.run();
+ State result = dClare.run();
if (DUMP) {
System.err.println("***************************** Begin DUniverse ***********************************");
System.err.println(result.asString());
@@ -76,13 +82,13 @@ public void manyOrchestra() {
State prev = null;
for (int i = 0; i < MANY_TIMES; i++) {
DClare dClare = of(Orchestra.class, FIXED_CLOCK);
- State next = dClare.run();
+ State next = dClare.run();
next.run(() -> {
check(next);
checkOrchestra(next);
});
if (prev != null && !prev.equals(next)) {
- String diff = prev.diffString(next);
+ String diff = prev.diffString(next, o -> true, s -> Mutable.D_CHANGE_NR != s && DClare.ROOT_RUN_NR != s);
assertEquals("", diff, "Diff: ");
}
prev = next;
@@ -92,7 +98,7 @@ public void manyOrchestra() {
@Test
public void orchestra() {
DClare dClare = of(Orchestra.class);
- State result = dClare.run();
+ State result = dClare.run();
result.run(() -> {
check(result);
checkOrchestra(result);
@@ -129,7 +135,7 @@ private void check(State result) {
assertEquals(Set.of(), result.getObjects(DNamed.class).filter(o -> o.name() == null).toSet(), "No name:");
assertEquals(Set.of(), result.getObjects(DUniverse.class).flatMap(DObject::dAllProblems).toSet(), "Problems:");
Set>> scheduled = result.getObjects(DObject.class).map(o -> Pair.of(o, //
- Collection.of(Direction.values()).flatMap(d -> Collection.concat(d.actions.get(o), d.children.get(o))).toSet())).filter(p -> !p.b().isEmpty()).toSet();
+ Collection.of(Priority.values()).flatMap(d -> Collection.concat(d.actions.get(o), d.children.get(o))).toSet())).filter(p -> !p.b().isEmpty()).toSet();
// System.err.println(scheduled);
assertEquals(Set.of(), scheduled, "Scheduled:");
}
@@ -137,7 +143,7 @@ private void check(State result) {
@Test
public void testReparents() {
DClare dClare = of(Reparents.class);
- State result = dClare.run();
+ State result = dClare.run();
result.run(() -> check(result));
if (DUMP) {
result.run(() -> {
@@ -153,7 +159,7 @@ public void testReparents() {
@Test
public void testPriorities() {
DClare dClare = of(PrioUniverse.class);
- State result = dClare.run();
+ State result = dClare.run();
result.run(() -> {
check(result);
checkPriorities(result);
@@ -174,7 +180,7 @@ public void manyPriorities() {
State prev = null;
for (int i = 0; i < MANY_TIMES; i++) {
DClare dClare = of(PrioUniverse.class, FIXED_CLOCK);
- State next = dClare.run();
+ State next = dClare.run();
next.run(() -> {
check(next);
checkPriorities(next);
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/KeyNative.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/KeyNative.java
index 6bef7a6..3e1d7a1 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/KeyNative.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/KeyNative.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Orchestra.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Orchestra.java
index e827533..3a2eadd 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Orchestra.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Orchestra.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Person.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Person.java
index 0b58c6c..56f3985 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Person.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Person.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Piano.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Piano.java
index 5dc58ea..d8e701d 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Piano.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Piano.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/PianoKey.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/PianoKey.java
index 6a2ea70..12ffe53 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/PianoKey.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/PianoKey.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/PrioUniverse.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/PrioUniverse.java
index f8b67f5..c4f430e 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/PrioUniverse.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/PrioUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -64,7 +64,7 @@ default void setY() {
interface PrioY extends Prio {
@Rule
- default void setY() {
+ default void setX() {
set(this, Prio::x, "Y");
}
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Reparents.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Reparents.java
index d3f70c0..9018cd7 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Reparents.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Reparents.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Scrum.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Scrum.java
index 2c80af6..d77094f 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Scrum.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Scrum.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Team.java b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Team.java
index 162f196..4cc7c77 100644
--- a/dclare-for-java/tst/org/modelingvalue/jdclare/test/Team.java
+++ b/dclare-for-java/tst/org/modelingvalue/jdclare/test/Team.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/module_examples.xml b/examples/module_examples.xml
index bea9ee7..8a1e277 100644
--- a/examples/module_examples.xml
+++ b/examples/module_examples.xml
@@ -54,8 +54,8 @@
-
+
@@ -70,11 +70,11 @@
-
+
-
+
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse.java b/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse.java
index 7bbcde2..7eebed6 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse2.java b/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse2.java
index a7b9ab7..4ea2ad8 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse2.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse2.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse3.java b/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse3.java
index 74ef613..e4fa993 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse3.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/BigUniverse3.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/CyclicUniverse.java b/examples/tst/org/modelingvalue/jdclare/examples/CyclicUniverse.java
index 0bc5e5f..ad0f9ec 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/CyclicUniverse.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/CyclicUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/EchoUniverse.java b/examples/tst/org/modelingvalue/jdclare/examples/EchoUniverse.java
index 62fc823..2c927e3 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/EchoUniverse.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/EchoUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/Fibonacci.java b/examples/tst/org/modelingvalue/jdclare/examples/Fibonacci.java
index d98c80b..5b21d06 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/Fibonacci.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/Fibonacci.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/FibonacciUniverse.java b/examples/tst/org/modelingvalue/jdclare/examples/FibonacciUniverse.java
index fddb197..99139ee 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/FibonacciUniverse.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/FibonacciUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/HelloUniverse.java b/examples/tst/org/modelingvalue/jdclare/examples/HelloUniverse.java
index dd2635b..5978029 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/HelloUniverse.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/HelloUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/RecursiveUniverse.java b/examples/tst/org/modelingvalue/jdclare/examples/RecursiveUniverse.java
index 21f1201..b6e50b8 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/RecursiveUniverse.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/RecursiveUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/RecursiveUniverse2.java b/examples/tst/org/modelingvalue/jdclare/examples/RecursiveUniverse2.java
index 5f199f3..3dcac7b 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/RecursiveUniverse2.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/RecursiveUniverse2.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/examples/SalesUniverse.java b/examples/tst/org/modelingvalue/jdclare/examples/SalesUniverse.java
index dcab0d5..45512c9 100644
--- a/examples/tst/org/modelingvalue/jdclare/examples/SalesUniverse.java
+++ b/examples/tst/org/modelingvalue/jdclare/examples/SalesUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/geo/D2MainWindow.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/geo/D2MainWindow.java
index 280f0aa..8476b1e 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/geo/D2MainWindow.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/geo/D2MainWindow.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/geo/D2Universe.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/geo/D2Universe.java
index 167655f..736d638 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/geo/D2Universe.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/geo/D2Universe.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/Ball.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/Ball.java
index 3a02f5a..b531f34 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/Ball.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/Ball.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BallBallPair.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BallBallPair.java
index 6083081..1961137 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BallBallPair.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BallBallPair.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BallCushionPair.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BallCushionPair.java
index 0fa022d..d625c5e 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BallCushionPair.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BallCushionPair.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BilliardPane.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BilliardPane.java
index 37334eb..0495f1c 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BilliardPane.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BilliardPane.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BilliardUniverse.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BilliardUniverse.java
index a62c318..c0d6c56 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BilliardUniverse.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/BilliardUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/CollisionPair.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/CollisionPair.java
index 998501c..8099a02 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/CollisionPair.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/CollisionPair.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/Table.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/Table.java
index e98d43a..1e3d9dd 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/Table.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/newton/Table.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/ConnectionDialog.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/ConnectionDialog.java
index a3ee005..a22b475 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/ConnectionDialog.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/ConnectionDialog.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -15,54 +15,44 @@
package org.modelingvalue.jdclare.swing.examples.sync;
-import java.awt.Color;
-import java.awt.Component;
-import java.awt.Dimension;
-import java.awt.Font;
-import java.awt.Frame;
-import java.awt.Insets;
+import java.awt.*;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusEvent;
import java.util.ArrayList;
import java.util.List;
-import javax.swing.BorderFactory;
-import javax.swing.JButton;
-import javax.swing.JComponent;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.JScrollPane;
-import javax.swing.JSpinner;
-import javax.swing.JTable;
-import javax.swing.JTextField;
-import javax.swing.Timer;
-import javax.swing.UIManager;
+import javax.swing.*;
import javax.swing.border.TitledBorder;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.DefaultTableCellRenderer;
-import com.intellij.uiDesigner.core.*;
+import com.intellij.uiDesigner.core.GridConstraints;
+import com.intellij.uiDesigner.core.GridLayoutManager;
+import com.intellij.uiDesigner.core.Spacer;
public class ConnectionDialog {
- private JButton clientConnectButton;
- private JTextField clientHostField;
- private JSpinner clientPortSpinner;
- private JTable clientConnectionTable;
- private JLabel clientInfoLabel;
+ private JButton clientConnectButton;
+ private JTextField clientHostField;
+ private JSpinner clientPortSpinner;
+ private JTable clientConnectionTable;
+ private JLabel clientInfoLabel;
//
- private JPanel root;
- private JLabel clientHostLabel;
- private JLabel clientPortLabel;
- private JButton disconnectButton;
+ private JPanel root;
+ private JLabel clientHostLabel;
+ private JLabel clientPortLabel;
+ private JButton disconnectButton;
//
private final SyncConnectionHandler connectionHandler;
private final ConnectionModel connModel = new ConnectionModel();
- private SocketSyncConnection selectedConnection;
+ private SocketSyncConnection selectedConnection;
@SuppressWarnings("serial")
public static class ConnectionModel extends AbstractTableModel {
- private final String[] columnNames = {"endpoint", "#rcv-bytes", "#send-bytes", "#rcv-∂", "#send-∂",};
+ private final String[] columnNames = {"endpoint",
+ "#rcv-bytes",
+ "#send-bytes",
+ "#rcv-∂",
+ "#send-∂",};
private final List connections = new ArrayList<>();
@Override
@@ -121,32 +111,32 @@ public void updateRows(List l) {
@SuppressWarnings("serial")
DefaultTableCellRenderer headerRenderer = new DefaultTableCellRenderer() {
- @Override
- public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
- super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
- setHorizontalAlignment(1 <= column ? JLabel.RIGHT : JLabel.LEFT);
- setBackground(Color.lightGray);
- setFont(clientConnectionTable.getFont());
- return this;
- }
- };
+ @Override
+ public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
+ super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
+ setHorizontalAlignment(1 <= column ? JLabel.RIGHT : JLabel.LEFT);
+ setBackground(Color.lightGray);
+ setFont(clientConnectionTable.getFont());
+ return this;
+ }
+ };
@SuppressWarnings("serial")
- DefaultTableCellRenderer cellRenderer = new DefaultTableCellRenderer() {
- @Override
- public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
- if (value instanceof Integer) {
- value = String.format("%,d", value);
- }
- super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
- setHorizontalAlignment(1 <= column ? JLabel.RIGHT : JLabel.LEFT);
- if (row == -1) {
- super.setBackground(Color.lightGray);
- }
- setFont(clientConnectionTable.getFont());
- return this;
- }
- };
+ DefaultTableCellRenderer cellRenderer = new DefaultTableCellRenderer() {
+ @Override
+ public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
+ if (value instanceof Integer) {
+ value = String.format("%,d", value);
+ }
+ super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
+ setHorizontalAlignment(1 <= column ? JLabel.RIGHT : JLabel.LEFT);
+ if (row == -1) {
+ super.setBackground(Color.lightGray);
+ }
+ setFont(clientConnectionTable.getFont());
+ return this;
+ }
+ };
public ConnectionDialog(SyncConnectionHandler connectionHandler) {
this.connectionHandler = connectionHandler;
@@ -193,7 +183,7 @@ public void focusGained(FocusEvent e) {
}
private void connectClient() {
- String host = clientHostField.getText();
+ String host = clientHostField.getText();
Integer port = (Integer) clientPortSpinner.getValue();
connectionHandler.connect(host, port);
update();
@@ -254,8 +244,8 @@ private void update() {
panel1.setLayout(new GridLayoutManager(1, 1, new Insets(0, 0, 0, 0), -1, -1));
root.add(panel1, new GridConstraints(2, 0, 1, 5, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, new Dimension(-1, 100), null, null, 0, false));
panel1.setBorder(BorderFactory.createTitledBorder(null, "connections", TitledBorder.LEFT, TitledBorder.DEFAULT_POSITION, null, null));
- final JScrollPane scrollPane1 = new JScrollPane();
- Font scrollPane1Font = UIManager.getFont("TableHeader.font");
+ final JScrollPane scrollPane1 = new JScrollPane();
+ Font scrollPane1Font = UIManager.getFont("TableHeader.font");
if (scrollPane1Font != null) {
scrollPane1.setFont(scrollPane1Font);
}
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/D2MainWindow.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/D2MainWindow.java
index 1d2e681..c4baeaa 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/D2MainWindow.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/D2MainWindow.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/D2Universe.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/D2Universe.java
index f284755..ee79a71 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/D2Universe.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/D2Universe.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/DiagramEditor.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/DiagramEditor.java
index 33651d9..63f1d99 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/DiagramEditor.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/DiagramEditor.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/Main.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/Main.java
index 6fc9140..aee18aa 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/Main.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/Main.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SocketSyncConnection.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SocketSyncConnection.java
index 110f0d4..6b69f30 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SocketSyncConnection.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SocketSyncConnection.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SyncConnectionHandler.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SyncConnectionHandler.java
index 33caf6f..79a5520 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SyncConnectionHandler.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SyncConnectionHandler.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SyncSerializationHelper.java b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SyncSerializationHelper.java
index ee7d71d..68cd20a 100644
--- a/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SyncSerializationHelper.java
+++ b/examples/tst/org/modelingvalue/jdclare/swing/examples/sync/SyncSerializationHelper.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/workbench/DiagramCanvas.java b/examples/tst/org/modelingvalue/jdclare/workbench/DiagramCanvas.java
index 6723151..14e77c8 100644
--- a/examples/tst/org/modelingvalue/jdclare/workbench/DiagramCanvas.java
+++ b/examples/tst/org/modelingvalue/jdclare/workbench/DiagramCanvas.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/workbench/ProblemsTable.java b/examples/tst/org/modelingvalue/jdclare/workbench/ProblemsTable.java
index eabb934..f342c50 100644
--- a/examples/tst/org/modelingvalue/jdclare/workbench/ProblemsTable.java
+++ b/examples/tst/org/modelingvalue/jdclare/workbench/ProblemsTable.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/workbench/ProblemsTableColumn.java b/examples/tst/org/modelingvalue/jdclare/workbench/ProblemsTableColumn.java
index cca3cda..4405d5e 100644
--- a/examples/tst/org/modelingvalue/jdclare/workbench/ProblemsTableColumn.java
+++ b/examples/tst/org/modelingvalue/jdclare/workbench/ProblemsTableColumn.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/workbench/PropertiesTable.java b/examples/tst/org/modelingvalue/jdclare/workbench/PropertiesTable.java
index ccfc3a3..88917e4 100644
--- a/examples/tst/org/modelingvalue/jdclare/workbench/PropertiesTable.java
+++ b/examples/tst/org/modelingvalue/jdclare/workbench/PropertiesTable.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/workbench/PropertiesTableColumn.java b/examples/tst/org/modelingvalue/jdclare/workbench/PropertiesTableColumn.java
index c417394..76f34b9 100644
--- a/examples/tst/org/modelingvalue/jdclare/workbench/PropertiesTableColumn.java
+++ b/examples/tst/org/modelingvalue/jdclare/workbench/PropertiesTableColumn.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/workbench/TextEditorPane.java b/examples/tst/org/modelingvalue/jdclare/workbench/TextEditorPane.java
index 93dbfcf..5b62a85 100644
--- a/examples/tst/org/modelingvalue/jdclare/workbench/TextEditorPane.java
+++ b/examples/tst/org/modelingvalue/jdclare/workbench/TextEditorPane.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/workbench/UniverseExplorer.java b/examples/tst/org/modelingvalue/jdclare/workbench/UniverseExplorer.java
index 544096e..4f048c5 100644
--- a/examples/tst/org/modelingvalue/jdclare/workbench/UniverseExplorer.java
+++ b/examples/tst/org/modelingvalue/jdclare/workbench/UniverseExplorer.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/workbench/WBOuterSplitPane.java b/examples/tst/org/modelingvalue/jdclare/workbench/WBOuterSplitPane.java
index b43473d..3b3615c 100644
--- a/examples/tst/org/modelingvalue/jdclare/workbench/WBOuterSplitPane.java
+++ b/examples/tst/org/modelingvalue/jdclare/workbench/WBOuterSplitPane.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/examples/tst/org/modelingvalue/jdclare/workbench/WBUniverse.java b/examples/tst/org/modelingvalue/jdclare/workbench/WBUniverse.java
index cb06ba1..502030d 100644
--- a/examples/tst/org/modelingvalue/jdclare/workbench/WBUniverse.java
+++ b/examples/tst/org/modelingvalue/jdclare/workbench/WBUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/ext.iml b/ext/ext.iml
index 62e3a68..8c234ed 100644
--- a/ext/ext.iml
+++ b/ext/ext.iml
@@ -18,5 +18,6 @@
+
\ No newline at end of file
diff --git a/ext/module_ext.xml b/ext/module_ext.xml
index 8fa6ae5..ef2ee9e 100644
--- a/ext/module_ext.xml
+++ b/ext/module_ext.xml
@@ -36,6 +36,7 @@
+
@@ -50,6 +51,7 @@
+
diff --git a/ext/src/org/modelingvalue/jdclare/swing/Cell.java b/ext/src/org/modelingvalue/jdclare/swing/Cell.java
index 6db02c3..10a2e2b 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/Cell.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/Cell.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/Column.java b/ext/src/org/modelingvalue/jdclare/swing/Column.java
index 3667175..eec604b 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/Column.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/Column.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DAction.java b/ext/src/org/modelingvalue/jdclare/swing/DAction.java
index 579132f..c311ff5 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DAction.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DAction.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DButton.java b/ext/src/org/modelingvalue/jdclare/swing/DButton.java
index d48f79c..0dfeeee 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DButton.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DButton.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DComponent.java b/ext/src/org/modelingvalue/jdclare/swing/DComponent.java
index 1564c29..9354ae1 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DComponent.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DComponent.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DContainer.java b/ext/src/org/modelingvalue/jdclare/swing/DContainer.java
index 5c3214b..97d8839 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DContainer.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DContainer.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DMenu.java b/ext/src/org/modelingvalue/jdclare/swing/DMenu.java
index ee038f4..c5315e3 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DMenu.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DMenu.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DMenubar.java b/ext/src/org/modelingvalue/jdclare/swing/DMenubar.java
index 3d54f0b..fa550c8 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DMenubar.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DMenubar.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DTextArea.java b/ext/src/org/modelingvalue/jdclare/swing/DTextArea.java
index c3e541c..7153666 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DTextArea.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DTextArea.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DTextComponent.java b/ext/src/org/modelingvalue/jdclare/swing/DTextComponent.java
index be5b831..a3e2206 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DTextComponent.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DTextComponent.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DTextField.java b/ext/src/org/modelingvalue/jdclare/swing/DTextField.java
index 28b33c9..9f83153 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DTextField.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DTextField.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DTextPane.java b/ext/src/org/modelingvalue/jdclare/swing/DTextPane.java
index ebbb734..7ea64ca 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DTextPane.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DTextPane.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DToolbar.java b/ext/src/org/modelingvalue/jdclare/swing/DToolbar.java
index b08af8c..9a2b7e7 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DToolbar.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DToolbar.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DToolbarItem.java b/ext/src/org/modelingvalue/jdclare/swing/DToolbarItem.java
index 21b138b..77d7079 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DToolbarItem.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DToolbarItem.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DTreeNode.java b/ext/src/org/modelingvalue/jdclare/swing/DTreeNode.java
index 3307d4e..6592ab9 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DTreeNode.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DTreeNode.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/DVisible.java b/ext/src/org/modelingvalue/jdclare/swing/DVisible.java
index 108f3cb..2ae2bd0 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/DVisible.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/DVisible.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/Frame.java b/ext/src/org/modelingvalue/jdclare/swing/Frame.java
index de33772..24121f9 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/Frame.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/Frame.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/GuiUniverse.java b/ext/src/org/modelingvalue/jdclare/swing/GuiUniverse.java
index b3e1f54..0651da7 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/GuiUniverse.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/GuiUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/InputDeviceData.java b/ext/src/org/modelingvalue/jdclare/swing/InputDeviceData.java
index e312ffd..b0d548a 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/InputDeviceData.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/InputDeviceData.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/MenuItem.java b/ext/src/org/modelingvalue/jdclare/swing/MenuItem.java
index 02a16aa..97b2e4d 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/MenuItem.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/MenuItem.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/Panel.java b/ext/src/org/modelingvalue/jdclare/swing/Panel.java
index 4585221..340eed5 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/Panel.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/Panel.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/PopupMenu.java b/ext/src/org/modelingvalue/jdclare/swing/PopupMenu.java
index 365df71..63ef79f 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/PopupMenu.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/PopupMenu.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/Row.java b/ext/src/org/modelingvalue/jdclare/swing/Row.java
index c3f7eb2..92f9d44 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/Row.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/Row.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/ScrollPane.java b/ext/src/org/modelingvalue/jdclare/swing/ScrollPane.java
index e904336..9f5abff 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/ScrollPane.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/ScrollPane.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/SplitPane.java b/ext/src/org/modelingvalue/jdclare/swing/SplitPane.java
index 8e51129..1308c7a 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/SplitPane.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/SplitPane.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/TabbedPane.java b/ext/src/org/modelingvalue/jdclare/swing/TabbedPane.java
index c64efd7..3b2356c 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/TabbedPane.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/TabbedPane.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/Table.java b/ext/src/org/modelingvalue/jdclare/swing/Table.java
index 1faa0c0..00b6c70 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/Table.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/Table.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/TextElement.java b/ext/src/org/modelingvalue/jdclare/swing/TextElement.java
index b431068..f8b9e2d 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/TextElement.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/TextElement.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/TextStyle.java b/ext/src/org/modelingvalue/jdclare/swing/TextStyle.java
index 5d4ffab..67a2ee7 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/TextStyle.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/TextStyle.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/Tree.java b/ext/src/org/modelingvalue/jdclare/swing/Tree.java
index 472a451..d7cb7e7 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/Tree.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/Tree.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/CanvasMode.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/CanvasMode.java
index 91417fa..8ed53be 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/CanvasMode.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/CanvasMode.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/ClickMode.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/ClickMode.java
index 8d76f0e..5edcd57 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/ClickMode.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/ClickMode.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/D2D.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/D2D.java
index 1bb8cfc..b2b6440 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/D2D.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/D2D.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DCanvas.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DCanvas.java
index ddb5208..0a47e81 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DCanvas.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DCanvas.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DCircle.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DCircle.java
index 3af590c..2413149 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DCircle.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DCircle.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DDimension.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DDimension.java
index b5811ae..0604b84 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DDimension.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DDimension.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DFilled.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DFilled.java
index 7ad08df..7e0079b 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DFilled.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DFilled.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DImage.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DImage.java
index f6c2246..80d1ab0 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DImage.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DImage.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DLine.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DLine.java
index ece74ee..8548160 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DLine.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DLine.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DPoint.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DPoint.java
index 1583116..5640646 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DPoint.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DPoint.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DRectangle.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DRectangle.java
index 8506c7b..92d5d0a 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DRectangle.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DRectangle.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DShape.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DShape.java
index 5d7da4b..7f9c9f4 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DShape.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DShape.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DTriangle.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DTriangle.java
index 0287ba1..eac5ee1 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/DTriangle.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/DTriangle.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/LineMode.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/LineMode.java
index 4f1e454..ce8ceba 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/LineMode.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/LineMode.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/swing/draw2d/SelectionMode.java b/ext/src/org/modelingvalue/jdclare/swing/draw2d/SelectionMode.java
index 884e8f0..5061735 100644
--- a/ext/src/org/modelingvalue/jdclare/swing/draw2d/SelectionMode.java
+++ b/ext/src/org/modelingvalue/jdclare/swing/draw2d/SelectionMode.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Grammar.java b/ext/src/org/modelingvalue/jdclare/syntax/Grammar.java
index a192340..0c0e8b4 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Grammar.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Grammar.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Line.java b/ext/src/org/modelingvalue/jdclare/syntax/Line.java
index 5506dce..ab1e309 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Line.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Line.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Literal.java b/ext/src/org/modelingvalue/jdclare/syntax/Literal.java
index dc129b3..c2e9403 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Literal.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Literal.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Parser.java b/ext/src/org/modelingvalue/jdclare/syntax/Parser.java
index 5fca80d..b250390 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Parser.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Parser.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Regex.java b/ext/src/org/modelingvalue/jdclare/syntax/Regex.java
index 8c77fba..a3ee251 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Regex.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Regex.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Sequence.java b/ext/src/org/modelingvalue/jdclare/syntax/Sequence.java
index ba1f2d5..e531d69 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Sequence.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Sequence.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Skipped.java b/ext/src/org/modelingvalue/jdclare/syntax/Skipped.java
index c7bc3e4..004f056 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Skipped.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Skipped.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Syntax.java b/ext/src/org/modelingvalue/jdclare/syntax/Syntax.java
index ec0c023..1a87a69 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Syntax.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Syntax.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Text.java b/ext/src/org/modelingvalue/jdclare/syntax/Text.java
index eff7cf1..fe6ff7f 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Text.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Text.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Token.java b/ext/src/org/modelingvalue/jdclare/syntax/Token.java
index 41828bc..c1900d1 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Token.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Token.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/Tokenizer.java b/ext/src/org/modelingvalue/jdclare/syntax/Tokenizer.java
index ad248a4..6ccaef7 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/Tokenizer.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/Tokenizer.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/AnonymousSequenceType.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/AnonymousSequenceType.java
index 2da8665..dbbc03a 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/AnonymousSequenceType.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/AnonymousSequenceType.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/GrammarClass.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/GrammarClass.java
index f91675c..6cc5e1b 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/GrammarClass.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/GrammarClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/NodeClass.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/NodeClass.java
index b73fde0..968e6cc 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/NodeClass.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/NodeClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/NodeType.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/NodeType.java
index a9e93e9..23aa30b 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/NodeType.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/NodeType.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectNodeClass.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectNodeClass.java
index 509562a..b0b4395 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectNodeClass.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectNodeClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectSequenceClass.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectSequenceClass.java
index aceba47..4a9648c 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectSequenceClass.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectSequenceClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectTerminalClass.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectTerminalClass.java
index a3be537..fc1ce06 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectTerminalClass.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/ObjectTerminalClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceClass.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceClass.java
index 97fb058..8bf1a11 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceClass.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceElement.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceElement.java
index ede8d29..9149850 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceElement.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceElement.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceType.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceType.java
index 7bb57b7..a9fc685 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceType.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/SequenceType.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/StructNodeClass.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/StructNodeClass.java
index 3094474..7ed5d8a 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/StructNodeClass.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/StructNodeClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/StructSequenceClass.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/StructSequenceClass.java
index d8c0aa8..866b45a 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/StructSequenceClass.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/StructSequenceClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/StructTerminalClass.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/StructTerminalClass.java
index 7fb1ab6..6fd86e2 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/StructTerminalClass.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/StructTerminalClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/SyntaxProperty.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/SyntaxProperty.java
index 1ec798c..f4a8e8f 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/SyntaxProperty.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/SyntaxProperty.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -230,8 +230,8 @@ default Set elements() {
@Override
@Property(constant)
- default boolean checkConsistency() {
- return false;
+ default boolean softMandatory() {
+ return true;
}
}
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/SyntaxPropertyRule.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/SyntaxPropertyRule.java
index 233588b..cecbbab 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/SyntaxPropertyRule.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/SyntaxPropertyRule.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -41,8 +41,8 @@ default String name() {
@Override
@Property(constant)
- default Direction initDirection() {
- return Direction.forward;
+ default Priority initPriority() {
+ return Priority.forward;
}
}
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/TerminalClass.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/TerminalClass.java
index 918ebca..7715513 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/TerminalClass.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/TerminalClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/meta/TokenType.java b/ext/src/org/modelingvalue/jdclare/syntax/meta/TokenType.java
index cdb4f5a..89dacf4 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/meta/TokenType.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/meta/TokenType.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/parser/ElementParser.java b/ext/src/org/modelingvalue/jdclare/syntax/parser/ElementParser.java
index ef5fd49..e27c188 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/parser/ElementParser.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/parser/ElementParser.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/parser/NodeParser.java b/ext/src/org/modelingvalue/jdclare/syntax/parser/NodeParser.java
index 97ae38d..890efe6 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/parser/NodeParser.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/parser/NodeParser.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/parser/SequenceElementParser.java b/ext/src/org/modelingvalue/jdclare/syntax/parser/SequenceElementParser.java
index 36ef786..411f406 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/parser/SequenceElementParser.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/parser/SequenceElementParser.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/parser/SequenceParser.java b/ext/src/org/modelingvalue/jdclare/syntax/parser/SequenceParser.java
index 3d6cb25..552c627 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/parser/SequenceParser.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/parser/SequenceParser.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/parser/TerminalParser.java b/ext/src/org/modelingvalue/jdclare/syntax/parser/TerminalParser.java
index cc7b3c5..b67120c 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/parser/TerminalParser.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/parser/TerminalParser.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/regex/DMatch.java b/ext/src/org/modelingvalue/jdclare/syntax/regex/DMatch.java
index d4546a6..f305935 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/regex/DMatch.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/regex/DMatch.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/regex/DMatcher.java b/ext/src/org/modelingvalue/jdclare/syntax/regex/DMatcher.java
index 912092b..1790bbf 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/regex/DMatcher.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/regex/DMatcher.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/regex/DMultiMatcher.java b/ext/src/org/modelingvalue/jdclare/syntax/regex/DMultiMatcher.java
index a92363a..57ec2b6 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/regex/DMultiMatcher.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/regex/DMultiMatcher.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/src/org/modelingvalue/jdclare/syntax/regex/DPattern.java b/ext/src/org/modelingvalue/jdclare/syntax/regex/DPattern.java
index 3cf5712..06d6eeb 100644
--- a/ext/src/org/modelingvalue/jdclare/syntax/regex/DPattern.java
+++ b/ext/src/org/modelingvalue/jdclare/syntax/regex/DPattern.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/MySyntax.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/MySyntax.java
index c7364b6..44c6ac4 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/MySyntax.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/MySyntax.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/SyntaxTests.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/SyntaxTests.java
index a1a1c48..555ad64 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/SyntaxTests.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/SyntaxTests.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -16,7 +16,6 @@
package org.modelingvalue.jdclare.syntax.test;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.modelingvalue.jdclare.DClare.of;
import java.time.Clock;
@@ -25,9 +24,11 @@
import org.junit.jupiter.api.Test;
import org.modelingvalue.collections.List;
+import org.modelingvalue.collections.Set;
import org.modelingvalue.dclare.Mutable;
import org.modelingvalue.dclare.State;
import org.modelingvalue.jdclare.DClare;
+import org.modelingvalue.jdclare.DObject;
import org.modelingvalue.jdclare.DUniverse;
import org.modelingvalue.jdclare.syntax.Text;
import org.modelingvalue.jdclare.syntax.meta.GrammarClass;
@@ -35,7 +36,7 @@
public class SyntaxTests {
- private static final int MANY_TIMES = 100;
+ private static final int MANY_TIMES = 32;
private static final boolean DUMP = Boolean.getBoolean("DUMP");
private static final Clock FIXED_CLOCK = Clock.fixed(Instant.EPOCH, ZoneId.systemDefault());
@@ -43,19 +44,18 @@ public class SyntaxTests {
public void manySyntax() {
State prev = null;
for (int i = 0; i < MANY_TIMES; i++) {
- System.err.printf("# manySyntax %3d ", i);
+ // System.err.printf("# manySyntax %3d ", i);
State next = doit();
next.run(() -> test(next));
if (prev != null) {
String diff = prev.diffString(next, o -> true, s -> Mutable.D_CHANGE_NR != s);
if (prev.equals(next)) {
- System.err.print("states equal" + ("".equals(diff) ? "" : " BUT DIFF != \"\""));
+ //System.err.print("states equal" + ("".equals(diff) ? "" : " BUT DIFF != \"\""));
} else {
- System.err.print("states differ");
+ //System.err.print("states differ");
assertEquals("", diff, "Diff: ");
}
}
- System.err.println();
prev = next;
}
}
@@ -112,8 +112,8 @@ public void oneSyntax() {
}
private void test(State result) {
- assertTrue(result.getObjects(TextUniverse.class).allMatch(t -> t.text().root() != null), "No Root");
- assertTrue(result.getObjects(TextUniverse.class).allMatch(t -> t.dAllProblems().isEmpty()), "Problems");
+ assertEquals(Set.of(), result.getObjects(TextUniverse.class).filter(t -> t.text().root() == null).toSet(), "No Root");
+ assertEquals(Set.of(), result.getObjects(TextUniverse.class).flatMap(DObject::dAllProblems).toSet(), "Problems");
}
}
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/TextUniverse.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/TextUniverse.java
index 904d091..999cc3c 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/TextUniverse.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/TextUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AClass.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AClass.java
index 566e692..e25fc75 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AClass.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AClass.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AExpression.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AExpression.java
index 13ccaad..5c0d1a4 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AExpression.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AExpression.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AField.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AField.java
index 93f581c..5262817 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AField.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AField.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AFieldCall.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AFieldCall.java
index 576894e..969fa6c 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AFieldCall.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AFieldCall.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -18,7 +18,7 @@
import static org.modelingvalue.jdclare.DClare.SCOPE;
import static org.modelingvalue.jdclare.PropertyQualifier.containment;
import static org.modelingvalue.jdclare.PropertyQualifier.optional;
-import static org.modelingvalue.jdclare.PropertyQualifier.unchecked;
+import static org.modelingvalue.jdclare.PropertyQualifier.softMandatory;
import org.modelingvalue.collections.Set;
import org.modelingvalue.jdclare.Constraints;
@@ -30,7 +30,7 @@ public interface AFieldCall extends AExpression {
@Property({containment, optional})
AExpression base();
- @Property(unchecked)
+ @Property(softMandatory)
AField field();
@Override
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ANamed.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ANamed.java
index ec02494..020c059 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ANamed.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ANamed.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -17,7 +17,7 @@
import static org.modelingvalue.jdclare.DClare.dclare;
import static org.modelingvalue.jdclare.PropertyQualifier.hidden;
-import static org.modelingvalue.jdclare.PropertyQualifier.unchecked;
+import static org.modelingvalue.jdclare.PropertyQualifier.softMandatory;
import static org.modelingvalue.jdclare.PropertyQualifier.validation;
import org.modelingvalue.jdclare.DNamed;
@@ -32,7 +32,7 @@ public interface ANamed extends DNamed {
@Override
@Default
- @Property(unchecked)
+ @Property(softMandatory)
default String name() {
return NO_NAME;
}
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ANumberLiteral.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ANumberLiteral.java
index 7593524..3aeca9e 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ANumberLiteral.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ANumberLiteral.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/APackage.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/APackage.java
index ef59991..9ce2f3a 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/APackage.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/APackage.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/APackageContainer.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/APackageContainer.java
index 2585130..e11e321 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/APackageContainer.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/APackageContainer.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AStringLiteral.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AStringLiteral.java
index a10b2bb..40de269 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AStringLiteral.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AStringLiteral.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ATyped.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ATyped.java
index 1a2ceaf..3f4a818 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ATyped.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/ATyped.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -15,7 +15,7 @@
package org.modelingvalue.jdclare.syntax.test.simple;
-import static org.modelingvalue.jdclare.PropertyQualifier.unchecked;
+import static org.modelingvalue.jdclare.PropertyQualifier.softMandatory;
import org.modelingvalue.jdclare.DObject;
import org.modelingvalue.jdclare.Property;
@@ -23,7 +23,7 @@
public interface ATyped extends DObject {
- @Property(unchecked)
+ @Property(softMandatory)
AType type();
}
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AUniverse.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AUniverse.java
index 0839690..fe1066d 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AUniverse.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/simple/AUniverse.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AClassType.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AClassType.java
index 1c4bd4a..a059070 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AClassType.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AClassType.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/types/ANumberType.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/types/ANumberType.java
index 3339689..b1411f6 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/types/ANumberType.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/types/ANumberType.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AStringType.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AStringType.java
index 713967a..7a48a9f 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AStringType.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AStringType.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AType.java b/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AType.java
index 047b192..db884dd 100644
--- a/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AType.java
+++ b/ext/tst/org/modelingvalue/jdclare/syntax/test/types/AType.java
@@ -1,5 +1,5 @@
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-// (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+// (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
// ~
// Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
// compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/pom.xml b/pom.xml
index 467a1dc..8c53c9b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,7 @@
4.0.0
org.modelingvalue
dclare-for-java
- 1.5.0
+ 1.6.0
jar
https://maven.pkg.github.com/ModelingValueGroup/dclareForJava
@@ -27,42 +27,48 @@
org.junit.jupiter
junit-jupiter-api
- 5.6.2
+ 5.7.2
test
org.junit.jupiter
junit-jupiter-engine
- 5.6.2
+ 5.7.2
+ test
+
+
+ org.junit.jupiter
+ junit-jupiter-params
+ 5.7.2
test
org.junit.platform
junit-platform-commons
- 1.6.2
+ 1.7.2
test
org.junit.platform
junit-platform-engine
- 1.6.2
+ 1.7.2
test
org.junit.platform
junit-platform-launcher
- 1.6.2
+ 1.7.2
test
org.modelingvalue
dclare
- 1.5.0
+ 1.6.0
org.modelingvalue
immutable-collections
- 1.5.0
+ 1.6.0
org.opentest4j
diff --git a/prepare.sh b/prepare.sh
index 278d320..8a020c2 100755
--- a/prepare.sh
+++ b/prepare.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-## (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+## (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
## ~
## Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
## compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
diff --git a/project.sh b/project.sh
index 270e683..4b4c1bd 100644
--- a/project.sh
+++ b/project.sh
@@ -1,5 +1,5 @@
##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-## (C) Copyright 2018-2020 Modeling Value Group B.V. (http://modelingvalue.org) ~
+## (C) Copyright 2018-2021 Modeling Value Group B.V. (http://modelingvalue.org) ~
## ~
## Licensed under the GNU Lesser General Public License v3.0 (the 'License'). You may not use this file except in ~
## compliance with the License. You may obtain a copy of the License at: https://choosealicense.com/licenses/lgpl-3.0 ~
@@ -13,7 +13,7 @@
## Arjan Kok, Carel Bast ~
##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-version="1.5.0"
+version="1.6.0"
artifacts=(
"org.modelingvalue dclare-for-java $version jar jds"
)
@@ -23,11 +23,12 @@ dependencies=(
"com.intellij forms_rt 7.0.3 jar j---"
- "org.junit.jupiter junit-jupiter-api 5.6.2 jar jdst"
- "org.junit.jupiter junit-jupiter-engine 5.6.2 jar jdst"
- "org.junit.platform junit-platform-commons 1.6.2 jar jdst"
- "org.junit.platform junit-platform-engine 1.6.2 jar jdst"
- "org.junit.platform junit-platform-launcher 1.6.2 jar jdst"
+ "org.junit.jupiter junit-jupiter-api 5.7.2 jar jdst"
+ "org.junit.jupiter junit-jupiter-engine 5.7.2 jar jdst"
+ "org.junit.jupiter junit-jupiter-params 5.7.2 jar jdst"
+ "org.junit.platform junit-platform-commons 1.7.2 jar jdst"
+ "org.junit.platform junit-platform-engine 1.7.2 jar jdst"
+ "org.junit.platform junit-platform-launcher 1.7.2 jar jdst"
"org.opentest4j opentest4j 1.2.0 jar jdst"
"org.apiguardian apiguardian-api 1.1.0 jar jdst"
)