aboutsummaryrefslogtreecommitdiff
path: root/central/src/main/java/moe/yuuta/dn42peering/database/DatabaseConfiguration.java
blob: 6c83cb08823a7bc6c22d08fe14dbed65a6919db9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package moe.yuuta.dn42peering.database;

import io.vertx.codegen.annotations.DataObject;
import io.vertx.core.json.JsonObject;

import javax.annotation.Nonnull;

@DataObject
public class DatabaseConfiguration {
    public final String host;
    public final int port;
    public final String database;
    public final String user;
    public final String password;

    public DatabaseConfiguration(@Nonnull JsonObject json) {
        this.host = json.getString("host", "localhost");
        this.port = json.getInteger("port", 3306);
        this.database = json.getString("database", "dn42peering");
        this.user = json.getString("user", "root");
        this.password = json.getString("password", "");
    }

    @Nonnull
    public JsonObject toJson() {
        return new JsonObject()
                .put("host", host)
                .put("port", port)
                .put("database", database)
                .put("user", user)
                .put("password", password);
    }
}