Remodel color roles

This commit is contained in:
Aleksei Gryczewski 2022-04-22 15:29:04 -04:00
parent ce46eaf3b3
commit e85f50053e
3 changed files with 51 additions and 65 deletions

View File

@ -1,65 +0,0 @@
/*
* Copyright (c) 2020. Aleksei Gryczewski
* All rights reserved.
*/
package dev.salmonllama.fsbot.database.models;
import dev.salmonllama.fsbot.database.DatabaseModel;
public class ColorRole extends DatabaseModel {
private final long roleId;
private final long serverId;
private final String color;
public ColorRole(ColorRoleBuilder builder) {
roleId = builder.roleId;
serverId = builder.serverId;
color = builder.color;
}
public long getRoleId() {
return roleId;
}
public long getServerId() {
return serverId;
}
public String getColor() {
return color;
}
public static String schema() {
return "CREATE TABLE IF NOT EXISTS color_roles (role_id INTEGER, server_id INTEGER, color TEXT)";
}
@Override
public String toString() {
return String.format("Color Role: {roleId: %d, serverId: %d, color: %s", roleId, serverId, color);
}
public static class ColorRoleBuilder {
private final long roleId;
private long serverId;
private String color;
public ColorRoleBuilder(long roleId) {
this.roleId = roleId;
}
public ColorRoleBuilder setServerId(long serverId) {
this.serverId = serverId;
return this;
}
public ColorRoleBuilder setColor(String color) {
this.color = color;
return this;
}
public ColorRole build() {
return new ColorRole(this);
}
}
}

View File

@ -0,0 +1,36 @@
/*
* Copyright (c) 2020. Aleksei Gryczewski
* All rights reserved.
*/
package dev.salmonllama.fsbot.database.models;
import dev.salmonllama.fsbot.database.DatabaseModel;
public class Role extends DatabaseModel {
public String roleId;
public String serverId;
public String color;
public String groupId;
public Role(
String roleId,
String serverId,
String color,
String groupId
) {
this.roleId = roleId;
this.serverId = serverId;
this.color = color;
this.groupId = groupId;
}
public static String schema() {
return "CREATE TABLE IF NOT EXISTS color_roles (role_id TEXT, server_id TEXT, color TEXT, group_id TEXT)";
}
@Override
public String toString() {
return String.format("Color Role: {roleId: %s, serverId: %s, color: %s, groupId: %s}", roleId, serverId, color, groupId);
}
}

View File

@ -0,0 +1,15 @@
package dev.salmonllama.fsbot.database.models;
import dev.salmonllama.fsbot.database.DatabaseModel;
import dev.salmonllama.fsbot.services.IdService;
public class RoleGroup extends DatabaseModel {
public final String id;
public String messageId;
public String name;
public String requiredRole;
public RoleGroup() {
this.id = IdService.generateShort();
}
}