working on translations
Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
@@ -5,6 +5,7 @@ import static de.srsoftware.umbrella.core.constants.Module.BOOKMARK;
|
||||
import static de.srsoftware.umbrella.core.model.Translatable.t;
|
||||
|
||||
import de.srsoftware.umbrella.core.constants.Field;
|
||||
import de.srsoftware.umbrella.core.constants.Text;
|
||||
import de.srsoftware.umbrella.core.model.Bookmark;
|
||||
import de.srsoftware.umbrella.core.model.Translatable;
|
||||
import de.srsoftware.umbrella.core.model.UmbrellaUser;
|
||||
@@ -22,19 +23,42 @@ public class BookmarkEvent extends Event<Bookmark> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Translatable describe(boolean verbose) {
|
||||
return switch (eventType()){
|
||||
case CREATE -> t("New bookmark created");
|
||||
case DELETE -> t("The bookmark '{url}' has been deleted", Field.URL, payload().url());
|
||||
case UPDATE -> t("Bookmark updated");
|
||||
default -> null;
|
||||
};
|
||||
public Translatable describeCreate(boolean verbose) {
|
||||
return t(Text.CREATE_BOOKMARK_DESCRIPTION,Field.URL,payload().url(),Field.DESCRIPTION,payload().comment());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Translatable subject() {
|
||||
return describe(false);
|
||||
public Translatable describeDelete(boolean verbose) {
|
||||
return t(Text.DELETE_BOOKMARK_DESCRIPTION, Field.DESCRIPTION, payload().comment());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Translatable describeMemberAdded(boolean verbose) {
|
||||
return t(Text.MEMBER_ADDED_TO_BM_DESC,Field.DESCRIPTION,payload().comment());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Translatable describeUpdate(boolean verbose) {
|
||||
return t(Text.UPDATE_BM_DESCRIPTION, Field.USER, initiator().name());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Translatable subjectCreate() {
|
||||
return t(Text.CREATE_BOOKMARK_SUBJECT,Field.USER,initiator().name());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Translatable subjectDelete() {
|
||||
return t(Text.DELETE_BOOKMARK_SUBJECT, Field.USER, initiator().name(), Field.URL, payload().url());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Translatable subjectMemberAdded() {
|
||||
return t(Text.MEMBER_ADDED_TO_BM_SUBJ,Field.USER, initiator().name(), Field.URL, payload().url());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Translatable subjectUpdate() {
|
||||
return t(Text.UPDATE_BM_SUBJECT,Field.URL, payload().url(), Field.DESCRIPTION, diff().orElse(""));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,9 +2,11 @@
|
||||
package de.srsoftware.umbrella.messagebus.events;
|
||||
|
||||
import static de.srsoftware.umbrella.core.constants.Field.*;
|
||||
import static de.srsoftware.umbrella.core.model.Translatable.t;
|
||||
import static java.util.Optional.*;
|
||||
|
||||
import de.srsoftware.tools.Diff;
|
||||
import de.srsoftware.umbrella.core.constants.Field;
|
||||
import de.srsoftware.umbrella.core.model.Translatable;
|
||||
import de.srsoftware.umbrella.core.model.UmbrellaObject;
|
||||
import de.srsoftware.umbrella.core.model.UmbrellaUser;
|
||||
@@ -47,7 +49,19 @@ public abstract class Event<Payload extends UmbrellaObject> {
|
||||
|
||||
public abstract Collection<UmbrellaUser> audience();
|
||||
|
||||
public abstract Translatable describe(boolean verbose);
|
||||
public Translatable describe(boolean verbose) {
|
||||
return switch (eventType()){
|
||||
case CREATE -> describeCreate(verbose);
|
||||
case DELETE -> describeDelete(verbose);
|
||||
case MEMBER_ADDED -> describeMemberAdded(verbose);
|
||||
case UPDATE -> describeUpdate(verbose);
|
||||
};
|
||||
}
|
||||
|
||||
public abstract Translatable describeCreate(boolean verbose);
|
||||
public abstract Translatable describeDelete(boolean verbose);
|
||||
public abstract Translatable describeMemberAdded(boolean verbose);
|
||||
public abstract Translatable describeUpdate(boolean verbose);
|
||||
|
||||
private Map<String, Object> dropMarkdown(Map<String, Object> map) {
|
||||
var result = new HashMap<String, Object>();
|
||||
@@ -110,5 +124,18 @@ public abstract class Event<Payload extends UmbrellaObject> {
|
||||
return payload;
|
||||
}
|
||||
|
||||
public abstract Translatable subject();
|
||||
public Translatable subject() {
|
||||
return switch (eventType()){
|
||||
case CREATE -> subjectCreate();
|
||||
case DELETE -> subjectDelete();
|
||||
case MEMBER_ADDED -> subjectMemberAdded();
|
||||
case UPDATE -> subjectUpdate();
|
||||
};
|
||||
}
|
||||
|
||||
public abstract Translatable subjectCreate();
|
||||
public abstract Translatable subjectDelete();
|
||||
public abstract Translatable subjectMemberAdded();
|
||||
public abstract Translatable subjectUpdate();
|
||||
|
||||
}
|
||||
|
||||
@@ -23,30 +23,9 @@ public class ItemEvent extends Event<Item>{
|
||||
return List.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Translatable describe(boolean verbose) {
|
||||
return switch (eventType()){
|
||||
case CREATE -> describeCreate();
|
||||
case null, default -> null;
|
||||
};
|
||||
}
|
||||
|
||||
private Translatable describeCreate() {
|
||||
var loc = payload().location().resolve().name();
|
||||
return t("{user} added \"{item}\" to \"{location}\"", USER,initiator().name(), ITEM, payload().name(), LOCATION, loc);
|
||||
}
|
||||
|
||||
@Override
|
||||
public long objectId() {
|
||||
return payload().id();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Translatable subject() {
|
||||
var loc = payload().location().resolve().name();
|
||||
return switch (eventType()){
|
||||
case CREATE -> t("A new item has been added to \"{location}\":",LOCATION,loc);
|
||||
case null, default -> null;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user