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
NullPointerExceptions 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:
SituationMentionSetis not actually a set (as in, the data structure). Indictum, this class is renamedSituationMentionGroup. - Null hostility. Attempts to set values to
nullwill result in uncheckedNullPointerExceptions. - 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 theBuilderobjects. - 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.