Skip to content

mouse0w0/configuration

Repository files navigation

Configuration

A simple configuration API for Java.

How to import

1. Import API

Maven:

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>
<dependency>
    <groupId>com.github.Mouse0w0.Configuration</groupId>
    <artifactId>configuration-api</artifactId>
    <version>1.3.0</version>
</dependency>

Gradle:

repositories {
    maven { url 'https://jitpack.io' }
}

dependencies {
     implementation 'com.github.Mouse0w0.Configuration:configuration-api:1.3.0'
}

2. Select and import parsers

Now only support configuration-gson and configuration-toml4j.

Maven:

<dependency>
    <groupId>com.github.Mouse0w0.Configuration</groupId>
    <artifactId>configuration-toml4j</artifactId>
    <version>1.3.0</version>
</dependency>

Gradle:

dependencies {
    implementation 'com.github.Mouse0w0.Configuration:configuration-toml4j:1.3.0'
}

How to use

Get configuration value

Config config;
int i = config.getInt("parent.int");
String s = config.getString("parent.string", "Hello World"); // Support default value

Set configuration value

Config config;
Object oldValue = config.set("parent.string", "Hello World");

Load configuration file

Config config = ConfigIOUtils.load(new File("config.json"));
// Config config = ConfigIOUtils.load(new File("config.toml"));

Save configuration file

config.save(Paths.of("config.json"));
// config.save(new File("config.toml"));
//
// Or call ConfigIoUtils.save(File, Config) and ConfigIoUtils.save(Path, Config)
// ConfigIOUtils.save(Paths.of("config.json"), config);
// ConfigIOUtils.save(new File("config.toml"), config);