diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/AbstractBuilder.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/AbstractBuilder.java index c40a5f464d10cb7bd137cd9f3d4abcd027bd1272..a23b7d59db8d136e8ce5ec45659edeb83fedce2f 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/AbstractBuilder.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/AbstractBuilder.java @@ -3,6 +3,12 @@ package de.unikoblenz.fgbks.base.builder; import java.io.Serializable; import java.lang.reflect.Field; +/** + * A abstract builder for creating java pojo classes. + * + * @param <E> the type of the object being constructed + * @param <B> the instance type of the builder + */ public abstract class AbstractBuilder<E, B extends AbstractBuilder<E, B>> implements Serializable { private static final String VALUE_FIELD_NAME = "value"; @@ -46,8 +52,18 @@ public abstract class AbstractBuilder<E, B extends AbstractBuilder<E, B>> implem protected abstract E newInstance(); + /** + * Check if the fields in the value object are valid. + */ protected abstract void validate(); + /** + * Start the building process and return the finished object. While building the new object the + * function {@link DefaultBuilder#validate()} is called and should be passed without an exception. + * Every time this function is called a new instance of the type is returned. + * + * @return the new created object + */ public E build() { validate(); E result = value; diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/DefaultBuilder.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/DefaultBuilder.java index 59bbb7d62d81dd3191878b5f19493d1ef8b30362..3b05f20266ad725aef72909cbeb9df15dcd328c5 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/DefaultBuilder.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/DefaultBuilder.java @@ -31,6 +31,9 @@ public class DefaultBuilder<E> extends AbstractBuilder<E, DefaultBuilder<E>> { return this; } + /** + * {@inheritDoc} + */ @Override protected void validate() { // nothing to validate diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Description.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Description.java index 206d0ac0c5a3ef841753e16c6d4ec2654df83f8f..5f9382fd079a0d22a93dcd4c82987962fad24b00 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Description.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Description.java @@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain; import de.unikoblenz.fgbks.base.value.AbstractStringValueObject; +/** + * A value object representing a description. + */ public class Description extends AbstractStringValueObject { + /** Create a new copy of the given description object. */ public Description(Description initialValue) { this(initialValue.getValue()); } + /** Create a description object with the given {@code initialValue}. */ public Description(String initialValue) { super(initialValue); } diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Label.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Label.java index 2f462485f205c956550cd9430b0806b5f6ce596b..d7c899f16ae0d4587a49e40456477857e18711f8 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Label.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Label.java @@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain; import de.unikoblenz.fgbks.base.value.AbstractStringValueObject; +/** + * A value object representing a label. + */ public class Label extends AbstractStringValueObject { + /** Create a new copy of the given label object. */ public Label(Label initialValue) { this(initialValue.getValue()); } + /** Create a label object with the given {@code initialValue}. */ public Label(String initialValue) { super(initialValue); } diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Message.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Message.java index cff5d051c0ca1b7a5b0229a61146f48e4418646c..76d1c718a2aa59772a41a14440fafd1190d4a100 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Message.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Message.java @@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain; import de.unikoblenz.fgbks.base.value.AbstractStringValueObject; +/** + * A value object representing a message. + */ public class Message extends AbstractStringValueObject { + /** Create a new copy of the given message object. */ public Message(Message initialValue) { this(initialValue.getValue()); } + /** Create a message object with the given {@code initialValue}. */ public Message(String initialValue) { super(initialValue); } diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Name.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Name.java index cdba8c783ca788973e58e6b48827d4d75daeb4a9..6cbfb2b541a40f8069710598d0e571b2f1bf5f1a 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Name.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Name.java @@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain; import de.unikoblenz.fgbks.base.value.AbstractStringValueObject; +/** + * A value object representing a name. + */ public class Name extends AbstractStringValueObject { + /** Create a new copy of the given name object. */ public Name(Name initialValue) { this(initialValue.getValue()); } + /** Create a name object with the given {@code initialValue}. */ public Name(String initialValue) { super(initialValue); } diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/StringValue.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/StringValue.java index 83cb579181426a9de2677705b32fee654332968f..03b01255f3fb6d28a37100841eb07e9ddb5bf60e 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/StringValue.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/StringValue.java @@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain; import de.unikoblenz.fgbks.base.value.AbstractStringValueObject; +/** + * A value object representing a string value. + */ public class StringValue extends AbstractStringValueObject { + /** Create a new copy of the given string value object. */ public StringValue(StringValue initialValue) { this(initialValue.getValue()); } + /** Create a string value object with the given {@code initialValue}. */ public StringValue(String initialValue) { super(initialValue); } diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Text.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Text.java index f57b2fab750e9766f11ef2011cb46c4e0778e014..cc58163cab6d6d38c4de7a60d654331b232faa50 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Text.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Text.java @@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain; import de.unikoblenz.fgbks.base.value.AbstractStringValueObject; +/** + * A value object representing a text. + */ public class Text extends AbstractStringValueObject { + /** Create a new copy of the given text object. */ public Text(Text initialValue) { this(initialValue.getValue()); } + /** Create a text object with the given {@code initialValue}. */ public Text(String initialValue) { super(initialValue); } diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonConfiguration.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonConfiguration.java index c8410ce362e22539afe771fd7a579d8641e01e14..bba70ba3a3108ac4a2fc36a7f79b13bbf70d1ab5 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonConfiguration.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonConfiguration.java @@ -6,6 +6,9 @@ import javax.json.bind.JsonbConfig; import javax.ws.rs.ext.ContextResolver; import javax.ws.rs.ext.Provider; +/** + * A provider for the configuration of jsonb handling. See {@link ContextResolver} + */ @Provider public class JsonConfiguration implements ContextResolver<Jsonb> { diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonSimpleValueObjectSerializer.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonSimpleValueObjectSerializer.java index a5a6eb7bee0acacaee5057d8d8e9c3426dac577e..b3dcb66a2143430a58e2ea15f897ec29bccb2eaa 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonSimpleValueObjectSerializer.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonSimpleValueObjectSerializer.java @@ -5,6 +5,9 @@ import javax.json.bind.serializer.JsonbSerializer; import javax.json.bind.serializer.SerializationContext; import javax.json.stream.JsonGenerator; +/** + * A json serializer for simple value objects ({@link SimpleValueObject}) + */ public class JsonSimpleValueObjectSerializer implements JsonbSerializer<SimpleValueObject> { @Override diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/PrivateVisibilityStrategy.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/PrivateVisibilityStrategy.java index 4eb02b8ad3bb602070e55362830cde9f62a52c56..8ab6492b450fc097486b059486a46c20a1122ed8 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/PrivateVisibilityStrategy.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/PrivateVisibilityStrategy.java @@ -7,6 +7,10 @@ import javax.json.bind.annotation.JsonbProperty; import javax.json.bind.annotation.JsonbTransient; import javax.json.bind.config.PropertyVisibilityStrategy; +/** + * The private visibility strategy is used in {@link JsonConfiguration} for the visibility for json + * serialization. + */ public class PrivateVisibilityStrategy implements PropertyVisibilityStrategy { @Override @@ -17,7 +21,7 @@ public class PrivateVisibilityStrategy implements PropertyVisibilityStrategy { @Override public boolean isVisible(Method method) { return Modifier.isPublic(method.getModifiers()) - && !method.isAnnotationPresent(JsonbTransient.class) + && !method.isAnnotationPresent(JsonbTransient.class) || method.isAnnotationPresent(JsonbProperty.class); } } diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/UniqueIdGenerator.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/UniqueIdGenerator.java index 58fb304e8ad12a5a73bb0c1f18c0b5f4acd776ed..2a1291c0cad41261a504ab6c7f065a4be774699d 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/UniqueIdGenerator.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/UniqueIdGenerator.java @@ -1,11 +1,18 @@ package de.unikoblenz.fgbks.base.utils; +/** + * Generate a thread safe synchronized unique application scoped long id by calling the method + * {@link UniqueIdGenerator#getNextId()} + */ public class UniqueIdGenerator { private static volatile long id = 0; private UniqueIdGenerator() {} + /** + * Return the next id. This method is synchronized. + */ public static synchronized long getNextId() { return id++; } diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/AbstractValueObject.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/AbstractValueObject.java index 2a4f8c6942471078c554f520e155e840188d8337..fe19ca33f6aeea2308b8a7a06625caa897d9c6eb 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/AbstractValueObject.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/AbstractValueObject.java @@ -6,6 +6,9 @@ import java.io.Serializable; import java.util.Arrays; import java.util.stream.Collectors; +/** + * A abstract value object contains a array of objects. + */ public abstract class AbstractValueObject implements Serializable, ValueObject { private transient Object[] values; @@ -45,8 +48,8 @@ public abstract class AbstractValueObject implements Serializable, ValueObject { public String toString() { return "[" + Arrays.stream(getValues()) - .map(o -> nonNull(o) ? o.toString() : "null") - .collect(Collectors.joining(", ")) + .map(o -> nonNull(o) ? o.toString() : "null") + .collect(Collectors.joining(", ")) + "]"; } diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/SimpleValueObject.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/SimpleValueObject.java index 69272d0cdd1288d975ffb431d262508288bc9e78..13103a438be6718a8d2a4aee2d0f6d6eb623521b 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/SimpleValueObject.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/SimpleValueObject.java @@ -1,5 +1,8 @@ package de.unikoblenz.fgbks.base.value; +/** + * A simple value object, which contains a value of a given type V. + */ public interface SimpleValueObject<V> extends ValueObject { V getValue(); diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/ValueObject.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/ValueObject.java index 5b13cc6c464081a8593177e0a770f285a3fb3815..2cb3798f2c522a1df865d1e5e568f3a90d288ca0 100644 --- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/ValueObject.java +++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/ValueObject.java @@ -2,7 +2,9 @@ package de.unikoblenz.fgbks.base.value; import java.io.Serializable; -@SuppressWarnings("checkstyle:all") +/** + * A interface for a value object. + */ public interface ValueObject extends Serializable { String VALUE = "value";