Commit Graph

26 Commits (30430527a1459a6b139943089cee74da0649bc1f)

Author SHA1 Message Date
Exlll 30430527a1 Allow SerializeWith (meta-)annotation on types 3 years ago
Exlll 37ad956d8e Add 'addSerializerFactory' method to properties
The factory method gives access to a SerializerContext object which is
not accessible if 'addSerializer' is used.
3 years ago
Exlll eaccf30d5e Rename TypeComponent to ConfigurationElement and refactor it
This commit also introduces the term "configuration element" to refer to
either a class field or record component of a configuration type.
3 years ago
Exlll bb58025239 Add SerializerContext interface
Instances of this interface contain information about the context in which
a serializer was selected. They are passed to the constructors of custom
serializers, if the serializer classes define such a constructor.
3 years ago
Exlll c78f4b2901 Change TypeComponent and SerializerSelector to use AnnotatedType 3 years ago
Exlll 1c38f85177 Refactor SerializerSelectorTest 3 years ago
Exlll 96321dd682 Add support for SerializeWith annotation 3 years ago
Exlll 0a291fe922 Move SerializerMapper functionality to TypeSerializer 3 years ago
Exlll 3c25327f7f Refactor TypeComponent 3 years ago
Exlll 7ce9c6b1c6 Add componentGenericType to TypeComponent 3 years ago
Exlll 48aef6a48c Let generic type of TypeComponent extend AnnotatedElement 3 years ago
Exlll e1dcacb1a1 Update documentation 3 years ago
Pierce Thompson ce87129094
Properly handle multi-line comments split with the newline character (#17)
* Properly handle multi-line comments split with the newline character
* Don't discard trailing newlines
* Add unit tests
3 years ago
Pierce Thompson 26dfd4d6b5
Add kebab-case name formatters (#16) 3 years ago
Exlll d1acb875c2 Remove update with default configuration.
Default values for Records can now be provided through constructors
that have no parameters.
3 years ago
Exlll 5b9c7754b4 Move to new project structure 3 years ago
Exlll bff27c06b1 Allow calls to update with a default configuration 3 years ago
Exlll 6ee99ff619 Update documentation for Records 3 years ago
Exlll e5028e6199 Add top-level saving/loading support for Records
Records can now be saved and loaded directly using one of the several
methods available.

Also, the TypeSerializer has been refactored.
3 years ago
Exlll a2153106b5 Add support for Record component comments 3 years ago
Exlll 7e79597cdd Add support for Record serialization 3 years ago
Exlll 31748db01b Add support for Instant, File, Path, URL, and URI 3 years ago
Exlll 57a9b33673 Add UUID serializer 3 years ago
Exlll 3ea01199db Add serialization support for Bukkit's ConfigurationSerializable types 3 years ago
Exlll f70c44f159 Add toBuilder method to create a builder from a properties object 3 years ago
Exlll 7c4f630f7c ConfigLib v3 3 years ago