Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package pl.mateam.marpg.engine.core.internal;
- public class CoreSQL {
- public static final String TABLE_USERS = "`Users`";
- public static final String FIELD_USERS_NAME = "`nickname`";
- public static final String FIELD_USERS_PASSWORD = "`password`";
- public static final String FIELD_USERS_LASTSEEN = "`last_seen`";
- public static final String TABLE_PLAYERS = "`Players`";
- public static final String FIELD_PLAYERS_ISWOMAN = "`iswoman`";
- public static final String TABLE_GAMEMASTERS = "`Gamemasters`";
- public static final String FIELD_GAMEMASTERS_IP = "`last_ip`";
- public static final String TABLE_BANS = "`Bans`";
- public static final String FIELD_BANS_WHOBANNED = "`who_banned`";
- public static final String FIELD_BANS_REASON = "`reason`";
- public static final String FIELD_BANS_DATE = "`date`";
- public static final String FIELD_BANS_EXPIRES = "`expires`";
- private static final String INSERTION_USER = "INSERT INTO " + TABLE_USERS + " VALUES (?, ?, ?);";
- public static final String TRANSACTION_INSERTION_PLAYER = buildTransaction(
- INSERTION_USER,
- "INSERT INTO " + TABLE_PLAYERS + " VALUES (?, 0);"); //0 stands for "male"
- public static final String TRANSACTION_INSERTION_GAMEMASTER = buildTransaction(
- INSERTION_USER,
- "INSERT INTO " + TABLE_GAMEMASTERS + " VALUES (?);");
- public static final String RETRIEVAL_GAMEMASTERS = "SELECT * FROM " + TABLE_GAMEMASTERS + ";";
- public static final String RETRIEVAL_GAMEMASTER = buildCondition(RETRIEVAL_GAMEMASTERS, FIELD_USERS_NAME + " = ?");
- public static final String RETRIEVAL_PLAYERS =
- "SELECT * FROM " + TABLE_PLAYERS
- + " LEFT JOIN " + TABLE_BANS
- + " ON " + field(TABLE_PLAYERS, FIELD_USERS_NAME)
- + " = " + field(TABLE_BANS, FIELD_USERS_NAME);
- public static final String RETRIEVAL_PLAYER = buildCondition(RETRIEVAL_PLAYERS, field(TABLE_PLAYERS, FIELD_USERS_NAME) + " = ?");
- private static String buildTransaction(String... statements) {
- StringBuilder builder = new StringBuilder("START TRANSACTION;");
- for(String statement : statements)
- builder.append(statement);
- builder.append("COMMIT;");
- return builder.toString();
- }
- public static String field(String tableName, String fieldName) {
- return tableName + "." + fieldName;
- }
- public static String buildCondition(String statementWithoutCondition, String condition) {
- if(condition == null)
- return statementWithoutCondition;
- statementWithoutCondition.replaceAll(";", "");
- StringBuilder builder = new StringBuilder(statementWithoutCondition);
- builder.append(" WHERE ");
- builder.append(condition);
- builder.append(";");
- return builder.toString();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement