Interface ConfigMigration
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
Upgrades a config file's contents by one version, before the values are read. The file's version is kept in its
"$version" key; a config built with ConfigBuilder.version(int) runs every migration from the
file's version up to its own, in order, then rewrites the file.
builder.version(2).migration(1, root -> {
// "renderDistance" moved into the "rendering" group
JsonObject rendering = root.getAsJsonObject("rendering");
rendering.add("distance", root.remove("renderDistance"));
});
Simple renames don't need a migration: see aliases on the entry builders.-
Method Summary
-
Method Details
-
migrate
void migrate(com.google.gson.JsonObject root) - Parameters:
root- the file's contents as nested objects, whatever its format; change it in place
-