working on backend-side translations

This commit is contained in:
2025-12-13 13:21:43 +01:00
parent a4f08e13a6
commit d210207b3b
3 changed files with 32 additions and 18 deletions

View File

@@ -1,6 +1,14 @@
package de.srsoftware.umbrella.core;
public class Errors {
public static final String FAILED_TO_LOAD_CONTACT_BY_ID = "failed_to_load_contact_by_id";
public static final String FAILED_TO_LOAD_CONTACTS_OF_USER = "failed_to_load_contacts_of_user";
public static final String FAILED_TO_CREATE_STATE = "failed_to_create_state";
public static final String FAILED_TO_CREATE_TABLE = "failed_to_create_table";
public static final String FAILED_TO_DROP_MEMBER_FROM_PROJECT = "failed_to_drop_member_from_project";
public static final String FAILED_TO_INSERT_PROJECT = "failed_to_insert_project";
public static final String FAILED_TO_LOAD_CONTACT_BY_ID = "failed_to_load_contact_by_id";
public static final String FAILED_TO_LOAD_CONTACTS_OF_USER = "failed_to_load_contacts_of_user";
public static final String FAILED_TO_LOAD_ITEMS = "failed_to_load_items";
public static final String FAILED_TO_LOAD_PROJECT = "failed_to_load_project";
public static final String FAILED_TO_LOAD_PROJECT_MEMBERS = "failed_to_load_project_members";
public static final String FAILED_TO_UPDATE_PROJECT = "failed_to_update_project";
}

View File

@@ -5,6 +5,8 @@ import static de.srsoftware.tools.jdbc.Condition.*;
import static de.srsoftware.tools.jdbc.Query.*;
import static de.srsoftware.tools.jdbc.Query.SelectQuery.ALL;
import static de.srsoftware.umbrella.core.Constants.*;
import static de.srsoftware.umbrella.core.Errors.*;
import static de.srsoftware.umbrella.core.exceptions.UmbrellaException.databaseException;
import static de.srsoftware.umbrella.core.model.Status.COMPLETE;
import static de.srsoftware.umbrella.core.model.Status.OPEN;
import static de.srsoftware.umbrella.project.Constants.*;
@@ -46,8 +48,7 @@ public class SqliteDb extends BaseDb implements ProjectDb {
stmt.execute();
stmt.close();
} catch (SQLException e) {
LOG.log(ERROR, ERROR_FAILED_CREATE_TABLE, TABLE_PROJECTS, e);
throw new RuntimeException(e);
throw databaseException(FAILED_TO_CREATE_TABLE,TABLE_PROJECTS);
}
}
@@ -65,8 +66,7 @@ PRIMARY KEY (project_id, code)
stmt.execute();
stmt.close();
} catch (SQLException e) {
LOG.log(ERROR, ERROR_FAILED_CREATE_TABLE, TABLE_CUSTOM_STATES, e);
throw new RuntimeException(e);
throw databaseException(FAILED_TO_CREATE_TABLE,TABLE_CUSTOM_STATES);
}
}
@@ -98,8 +98,7 @@ CREATE TABLE IF NOT EXISTS {0} (
stmt.execute();
stmt.close();
} catch (SQLException e) {
LOG.log(ERROR,ERROR_FAILED_CREATE_TABLE,TABLE_PROJECT_USERS,e);
throw new RuntimeException(e);
throw databaseException(FAILED_TO_CREATE_TABLE,TABLE_PROJECT_USERS);
}
}
@@ -112,7 +111,7 @@ CREATE TABLE IF NOT EXISTS {0} (
.where(USER_ID,equal(userId))
.execute(db);
} catch (SQLException e) {
throw new UmbrellaException("Failed to delete member (userId = {0} from project {1}",userId,projectId);
throw databaseException(FAILED_TO_DROP_MEMBER_FROM_PROJECT);
}
}
@@ -125,7 +124,7 @@ CREATE TABLE IF NOT EXISTS {0} (
rs.close();
return result;
} catch (SQLException e){
throw new UmbrellaException("Faailed to load project members");
throw databaseException(FAILED_TO_LOAD_PROJECT_MEMBERS);
}
}
@@ -152,7 +151,7 @@ CREATE TABLE IF NOT EXISTS {0} (
rs.close();
return project;
} catch (SQLException e) {
throw new UmbrellaException("Failed to load project from database");
throw databaseException(FAILED_TO_LOAD_PROJECT);
}
}
@@ -174,7 +173,7 @@ CREATE TABLE IF NOT EXISTS {0} (
rs.close();
return projects;
} catch (SQLException e) {
throw new UmbrellaException("Failed to load items from database");
throw databaseException(FAILED_TO_LOAD_ITEMS);
}
}
@@ -196,7 +195,7 @@ CREATE TABLE IF NOT EXISTS {0} (
rs.close();
return projects;
} catch (SQLException e) {
throw new UmbrellaException("Failed to load items from database");
throw databaseException(FAILED_TO_LOAD_ITEMS);
}
}
@@ -214,7 +213,7 @@ CREATE TABLE IF NOT EXISTS {0} (
rs.close();
return projects;
} catch (SQLException e) {
throw new UmbrellaException("Failed to load items from database");
throw databaseException(FAILED_TO_LOAD_ITEMS);
}
}
@@ -235,7 +234,7 @@ CREATE TABLE IF NOT EXISTS {0} (
return new Project(id, prj.name(), prj.description(),prj.status(),prj.companyId().orElse(null),prj.showClosed(),prj.members(),prj.allowedStates());
}
} catch (SQLException e) {
throw new UmbrellaException("Failed to insert project into database");
throw databaseException(FAILED_TO_INSERT_PROJECT);
}
} else { // Update
try {
@@ -257,7 +256,7 @@ CREATE TABLE IF NOT EXISTS {0} (
}
return prj;
} catch (SQLException e) {
throw new UmbrellaException("Failed to update project in database");
throw databaseException(FAILED_TO_UPDATE_PROJECT);
}
}
return null;
@@ -270,8 +269,7 @@ CREATE TABLE IF NOT EXISTS {0} (
insertInto(TABLE_CUSTOM_STATES,PROJECT_ID,CODE,NAME).values(projectId,newState.code(),newState.name()).execute(db).close();
return newState;
} catch (SQLException e) {
throw new UmbrellaException("Failed to create custom state!");
throw databaseException(FAILED_TO_CREATE_STATE);
}
}
}

View File

@@ -95,8 +95,16 @@
"failed": "fehlgeschlagen",
"failed_login_attempts" : "Account nach {attempts} fehlgeschlagenen Logins gesperrt bis {release_time}",
"failed_to_create_state": "Failed to create custom state!",
"failed_to_create_table": "Failed to create table `{0}`",
"failed_to_drop_member_from_project": "Failed to delete member (userId = {0} from project {1}",
"failed_to_insert_project": "Failed to insert project into database",
"failed_to_load_contact_by_id": "Failed to load contact with id = {0}",
"failed_to_load_contacts_of_user": "Failed to load contacts of user {0}",
"failed_to_load_items": "Failed to load items from database",
"failed_to_load_project": "Failed to load project from database",
"failed_to_load_project_members": "Failed to load members of project",
"failed_to_update_project": "Failed to update project in database",
"family_name": "Familenname",
"file": "Datei",
"files": "Dateien",