started adding comments, restructured Database class

This commit is contained in:
2022-04-19 08:41:03 +02:00
parent 9b1cc974ad
commit aae095f2ea
5 changed files with 146 additions and 125 deletions

View File

@@ -19,6 +19,8 @@ public class User {
private static final HashMap<String,User> users = new HashMap<>();
public static final int PERMISSION_ADMIN = 1;
public static final int PERMISSION_CREATE_LISTS = 2;
public static final String SALT = "salt";
public static final String HASHED_PASS = "hashedPassword";
private String email, salt, hashedPass, name;
private int permissions;
@@ -56,7 +58,12 @@ public class User {
public void addPermission(int newPermission) throws SQLException {
permissions |= newPermission;
Database.open().update(TABLE_NAME).set(PERMISSIONS,permissions).where(EMAIL,email()).run();
Database.open()
.update(TABLE_NAME)
.set(PERMISSIONS,permissions)
.where(EMAIL,email())
.compile()
.run();
}
@@ -81,12 +88,12 @@ public class User {
.append(HASHED_PASS).append(" ").append(VARCHAR)
.append(");");
Database.open().query(sql).run();
Database.open().query(sql).compile().run();
}
public void dropPermission(int newPermission) throws SQLException {
permissions ^= (permissions & newPermission);
Database.open().update(TABLE_NAME).set(PERMISSIONS,permissions).run();
Database.open().update(TABLE_NAME).set(PERMISSIONS,permissions).compile().run();
}
public boolean hashPermission(int permission){
@@ -102,7 +109,7 @@ public class User {
var userList = new ArrayList<User>();
var query = Database.open().select(TABLE_NAME);
if (emails != null && !emails.isEmpty()) query.where(EMAIL,emails);
var rs = query.exec();
var rs = query.compile().exec();
while (rs.next()) userList.add(User.from(rs));
return userList;
}
@@ -124,6 +131,7 @@ public class User {
ResultSet rs = Database.open()
.select(TABLE_NAME)
.where(EMAIL,email)
.compile()
.exec();
try {
if (rs.next()) {
@@ -145,7 +153,7 @@ public class User {
public static boolean noUsers() throws SQLException {
var rs = Database.open().select(TABLE_NAME,"count(*)").exec();
var rs = Database.open().select(TABLE_NAME,"count(*)").compile().exec();
try {
if (rs.next()) {
return rs.getInt(1) < 1;
@@ -175,6 +183,7 @@ public class User {
if (hashedPass != null) values.put(HASHED_PASS,hashedPass);
Database.open().insertInto(TABLE_NAME)
.values(values)
.compile()
.run();
return this;
}