Current Break version:
<dependency>
<groupId>io.maxthomas</groupId>
<artifactId>dictum</artifactId>
<version>0.6.0</version>
</dependency>
Dictum is a wrapper around
Concrete. While a Java library
exists, the Thrift
generated code leads to a ton of boilerplate, prone to
NullPointerException
s and other landmines. This project is an
attempt to resolve some warts in concrete-java
. In particular:
- Some class names have changed to be more clear. Example:
SituationMentionSet
is not actually a set (as in, the data structure). Indictum
, this class is renamedSituationMentionGroup
. - Null hostility. Attempts to set values to
null
will result in uncheckedNullPointerException
s. - Validation. Attempts are made to validate data structures that have
embedded, non-semantic rules. These are 'fail-fast': invalid data is
treated as hostile, and an exception is throw immediately upon
calling the
.build()
method on theBuilder
objects. - Use of FreeBuilder to implement the Builder pattern on the objects and more effectively control required, default and optional fields.
See LICENSE
in root directory.