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; package de.srsoftware.umbrella.core;
public class Errors { 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_CREATE_STATE = "failed_to_create_state";
public static final String FAILED_TO_LOAD_CONTACTS_OF_USER = "failed_to_load_contacts_of_user"; 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.*;
import static de.srsoftware.tools.jdbc.Query.SelectQuery.ALL; import static de.srsoftware.tools.jdbc.Query.SelectQuery.ALL;
import static de.srsoftware.umbrella.core.Constants.*; 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.COMPLETE;
import static de.srsoftware.umbrella.core.model.Status.OPEN; import static de.srsoftware.umbrella.core.model.Status.OPEN;
import static de.srsoftware.umbrella.project.Constants.*; import static de.srsoftware.umbrella.project.Constants.*;
@@ -46,8 +48,7 @@ public class SqliteDb extends BaseDb implements ProjectDb {
stmt.execute(); stmt.execute();
stmt.close(); stmt.close();
} catch (SQLException e) { } catch (SQLException e) {
LOG.log(ERROR, ERROR_FAILED_CREATE_TABLE, TABLE_PROJECTS, e); throw databaseException(FAILED_TO_CREATE_TABLE,TABLE_PROJECTS);
throw new RuntimeException(e);
} }
} }
@@ -65,8 +66,7 @@ PRIMARY KEY (project_id, code)
stmt.execute(); stmt.execute();
stmt.close(); stmt.close();
} catch (SQLException e) { } catch (SQLException e) {
LOG.log(ERROR, ERROR_FAILED_CREATE_TABLE, TABLE_CUSTOM_STATES, e); throw databaseException(FAILED_TO_CREATE_TABLE,TABLE_CUSTOM_STATES);
throw new RuntimeException(e);
} }
} }
@@ -98,8 +98,7 @@ CREATE TABLE IF NOT EXISTS {0} (
stmt.execute(); stmt.execute();
stmt.close(); stmt.close();
} catch (SQLException e) { } catch (SQLException e) {
LOG.log(ERROR,ERROR_FAILED_CREATE_TABLE,TABLE_PROJECT_USERS,e); throw databaseException(FAILED_TO_CREATE_TABLE,TABLE_PROJECT_USERS);
throw new RuntimeException(e);
} }
} }
@@ -112,7 +111,7 @@ CREATE TABLE IF NOT EXISTS {0} (
.where(USER_ID,equal(userId)) .where(USER_ID,equal(userId))
.execute(db); .execute(db);
} catch (SQLException e) { } 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(); rs.close();
return result; return result;
} catch (SQLException e){ } 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(); rs.close();
return project; return project;
} catch (SQLException e) { } 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(); rs.close();
return projects; return projects;
} catch (SQLException e) { } 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(); rs.close();
return projects; return projects;
} catch (SQLException e) { } 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(); rs.close();
return projects; return projects;
} catch (SQLException e) { } 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()); return new Project(id, prj.name(), prj.description(),prj.status(),prj.companyId().orElse(null),prj.showClosed(),prj.members(),prj.allowedStates());
} }
} catch (SQLException e) { } catch (SQLException e) {
throw new UmbrellaException("Failed to insert project into database"); throw databaseException(FAILED_TO_INSERT_PROJECT);
} }
} else { // Update } else { // Update
try { try {
@@ -257,7 +256,7 @@ CREATE TABLE IF NOT EXISTS {0} (
} }
return prj; return prj;
} catch (SQLException e) { } catch (SQLException e) {
throw new UmbrellaException("Failed to update project in database"); throw databaseException(FAILED_TO_UPDATE_PROJECT);
} }
} }
return null; 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(); insertInto(TABLE_CUSTOM_STATES,PROJECT_ID,CODE,NAME).values(projectId,newState.code(),newState.name()).execute(db).close();
return newState; return newState;
} catch (SQLException e) { } 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": "fehlgeschlagen",
"failed_login_attempts" : "Account nach {attempts} fehlgeschlagenen Logins gesperrt bis {release_time}", "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_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_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", "family_name": "Familenname",
"file": "Datei", "file": "Datei",
"files": "Dateien", "files": "Dateien",