Commit Graph

59 Commits (0a291fe92255bec329c15be0ce94cd771d07d278)
 

Author SHA1 Message Date
Exlll 0a291fe922 Move SerializerMapper functionality to TypeSerializer 2 years ago
Exlll 3c25327f7f Refactor TypeComponent 2 years ago
Exlll 7ce9c6b1c6 Add componentGenericType to TypeComponent 2 years ago
Exlll 48aef6a48c Let generic type of TypeComponent extend AnnotatedElement 2 years ago
Exlll 0f3656a21b Update version to 4.1.0
* Added jitpack.io support (by @RobotHanzo)
* Added two new NameFormatters (by @Insprill)
  - LOWER_KEBAB_CASE
  - UPPER_KEBAB_CASE
* Fixed handling of comments that contain newlines (by @Insprill)
2 years ago
Exlll e1dcacb1a1 Update documentation 2 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
2 years ago
Pierce Thompson 26dfd4d6b5
Add kebab-case name formatters (#16) 2 years ago
RobotHanzo 54762f8bb5
Support building with jitpack (#13) 2 years ago
Exlll bfbda2f629 Update version to 4.0.0
This update contains several new features:

* Support for Java records
* Support for File, Path, URL, URI, Instant
* New project structure that makes it easier to add support
  for additional file types

... and some breaking changes:

* The code for saving and loading YAML files was moved from the
  configlib-core to the configlib-yaml module:
  * The Configurations class has been renamed to YamlConfigurations
    and its methods lost their -YamlConfiguration affix.
* FieldFormatter has been renamed to NameFormatter
2 years ago
Exlll d1acb875c2 Remove update with default configuration.
Default values for Records can now be provided through constructors
that have no parameters.
2 years ago
Exlll 5b9c7754b4 Move to new project structure 2 years ago
Exlll bff27c06b1 Allow calls to update with a default configuration 2 years ago
Exlll 6ee99ff619 Update documentation for Records 2 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.
2 years ago
Exlll a2153106b5 Add support for Record component comments 2 years ago
Exlll 7e79597cdd Add support for Record serialization 2 years ago
Exlll 31748db01b Add support for Instant, File, Path, URL, and URI 2 years ago
Exlll 5216a889af
Update issue templates 2 years ago
Exlll 3112ea1bce Update version to 3.1.0 2 years ago
Exlll 57a9b33673 Add UUID serializer 2 years ago
Exlll c2c35daab2 Add documantation about ConfigurationSerializable support 2 years ago
Exlll 3ea01199db Add serialization support for Bukkit's ConfigurationSerializable types 2 years ago
Exlll f70c44f159 Add toBuilder method to create a builder from a properties object 2 years ago
Exlll 7c4f630f7c ConfigLib v3 2 years ago
Exlll 65555f7dd6 Publish on master push, update "Import" README section 3 years ago
Exlll 84f38cdc71 Migrate build scripts to Kotlin DSL. 3 years ago
Exlll b047ddcb6e Add Github action to test on PR or on a push to "dev" 3 years ago
Exlll 445e39f8ae Update Gradle to version 7.1 3 years ago
Exlll 38b1a1aca4 Added @Format annotation
This annotation can be used to apply a FieldNameFormatter
to a Configuration without having to instantiate a Properties
object. The FieldNameFormatter returned by the annotation
takes precedence over the value returned by the Properties object.

Added FieldNameFormatters.UPPER_UNDERSCORE
6 years ago
Exlll 58b81f3314 Added FieldFilter
If your configuration has a lot of fields and you want to exclude some
of these fields without making them final, static or transient, you can
configure your properties object to use additional FieldFilters.

A FieldFilter filters the fields of a configuration class by a specified
criterion. For example, if you only want to include fields whose names
don't start with 'ignore', you would add the following filter:

YamlProperties properties = YamlProperties.builder()
                .addFilter(field -> !field.getName().startsWith("ignore"))
                // ...
                .build();
6 years ago
Exlll b8caedc86d Fix: Converting back fails for nested collections of complex ConfigurationElements
Note that you now have to set a nesting level when using nested
collections that require the ElementType annotation.
6 years ago
Exlll ee53d0c609 Fix: Comments not saved if FieldNameFormatter is used 6 years ago
Exlll 9681114e69
Create LICENSE 6 years ago
Exlll 7f600834ff Improve documentation 6 years ago
Exlll 71a6052e29 Make ConfigLib Java 8 compatible 6 years ago
Exlll f4795ca21a Update gradle-wrapper to Gradle version 4.8 6 years ago
Exlll 88838d5b96 Update .travis.yml to Java 10 6 years ago
Exlll 49e5b56b5c Update ConfigLib to version 2.0.0 6 years ago
Exlll e1b629d5df update version 7 years ago
Exlll e4f604a2cd fix: long files not read correctly 7 years ago
Exlll 108133abc0 added versioning 7 years ago
Exlll 9ae4731de4 fix postLoadHook not executed 7 years ago
Exlll a61363aefd fix type conversion 8 years ago
Exlll 71f342783b clean-up, improvements, fixes, docs 8 years ago
Exlll 6b72d6293c support for lists, sets and maps of custom objects 8 years ago
Exlll 0e9b474db1 better support for custom classes 8 years ago
Exlll 0dca3f614f serialize custom classes 8 years ago
Exlll 5352d4183c better usage example 8 years ago
Exlll 8c83bcb09d removed baseName property 8 years ago