implemented storing and loading of message settings
Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
@@ -114,6 +114,7 @@ public class MessageSystem extends BaseHandler implements PostBox, EventListener
|
||||
var head = path.pop();
|
||||
return switch (head){
|
||||
case null -> listMessages(ex,user.get());
|
||||
case SETTINGS -> getSettings(ex,user.get());
|
||||
default -> super.doGet(path,ex);
|
||||
};
|
||||
} catch (NumberFormatException e){
|
||||
@@ -142,6 +143,10 @@ public class MessageSystem extends BaseHandler implements PostBox, EventListener
|
||||
}
|
||||
}
|
||||
|
||||
private boolean getSettings(HttpExchange ex, UmbrellaUser user) throws IOException {
|
||||
return sendContent(ex,db.getSettings(user));
|
||||
}
|
||||
|
||||
private boolean listMessages(HttpExchange ex, UmbrellaUser user) throws IOException {
|
||||
var messages = queue.stream().filter(e -> e.isFor(user)).map(e -> summary(e, user.language())).toList();
|
||||
return sendContent(ex,messages);
|
||||
|
||||
@@ -12,7 +12,7 @@ public class Instantly implements Settings{
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean sendAt(int scheduledHour) {
|
||||
public boolean sendAt(Integer scheduledHour) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@ public class Schedule implements Settings{
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean sendAt(int scheduledHour) {
|
||||
return hours.contains(scheduledHour);
|
||||
public boolean sendAt(Integer scheduledHour) {
|
||||
return scheduledHour != null && hours.contains(scheduledHour);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -6,5 +6,5 @@ import de.srsoftware.tools.Mappable;
|
||||
|
||||
|
||||
public interface Settings extends Mappable {
|
||||
boolean sendAt(int scheduledHour);
|
||||
boolean sendAt(Integer scheduledHour);
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ import java.util.Map;
|
||||
|
||||
public class Silent implements Settings{
|
||||
@Override
|
||||
public boolean sendAt(int scheduledHour) {
|
||||
public boolean sendAt(Integer scheduledHour) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user