diff options
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/org/traccar/api/resource/PasswordResource.java | 4 | ||||
-rw-r--r-- | src/main/java/org/traccar/notification/Message.java (renamed from src/main/java/org/traccar/notification/FullMessage.java) | 4 | ||||
-rw-r--r-- | src/main/java/org/traccar/notification/NotificationFormatter.java | 10 | ||||
-rw-r--r-- | src/main/java/org/traccar/notification/ShortMessage.java | 36 | ||||
-rw-r--r-- | src/main/java/org/traccar/notification/TextTemplateFormatter.java | 13 | ||||
-rw-r--r-- | src/main/java/org/traccar/notificators/NotificatorFirebase.java | 17 | ||||
-rw-r--r-- | src/main/java/org/traccar/notificators/NotificatorMail.java | 4 | ||||
-rw-r--r-- | src/main/java/org/traccar/notificators/NotificatorPushover.java | 38 | ||||
-rw-r--r-- | src/main/java/org/traccar/notificators/NotificatorSms.java | 6 | ||||
-rw-r--r-- | src/main/java/org/traccar/notificators/NotificatorTelegram.java | 20 |
10 files changed, 52 insertions, 100 deletions
diff --git a/src/main/java/org/traccar/api/resource/PasswordResource.java b/src/main/java/org/traccar/api/resource/PasswordResource.java index 20e8d768d..16b0afc12 100644 --- a/src/main/java/org/traccar/api/resource/PasswordResource.java +++ b/src/main/java/org/traccar/api/resource/PasswordResource.java @@ -19,7 +19,7 @@ import org.apache.velocity.VelocityContext; import org.traccar.Context; import org.traccar.api.BaseResource; import org.traccar.model.User; -import org.traccar.notification.FullMessage; +import org.traccar.notification.Message; import org.traccar.notification.TextTemplateFormatter; import javax.annotation.security.PermitAll; @@ -53,7 +53,7 @@ public class PasswordResource extends BaseResource { Context.getUsersManager().updateItem(user); VelocityContext velocityContext = TextTemplateFormatter.prepareContext(null); velocityContext.put("token", token); - FullMessage message = TextTemplateFormatter.formatFullMessage(velocityContext, "passwordReset"); + Message message = TextTemplateFormatter.formatMessage(velocityContext, "passwordReset", "full"); Context.getMailManager().sendMessage(userId, message.getSubject(), message.getBody()); break; } diff --git a/src/main/java/org/traccar/notification/FullMessage.java b/src/main/java/org/traccar/notification/Message.java index f66537c6e..33f38007c 100644 --- a/src/main/java/org/traccar/notification/FullMessage.java +++ b/src/main/java/org/traccar/notification/Message.java @@ -16,12 +16,12 @@ */ package org.traccar.notification; -public class FullMessage { +public class Message { private String subject; private String body; - public FullMessage(String subject, String body) { + public Message(String subject, String body) { this.subject = subject; this.body = body; } diff --git a/src/main/java/org/traccar/notification/NotificationFormatter.java b/src/main/java/org/traccar/notification/NotificationFormatter.java index f33961c8b..3170d1204 100644 --- a/src/main/java/org/traccar/notification/NotificationFormatter.java +++ b/src/main/java/org/traccar/notification/NotificationFormatter.java @@ -58,14 +58,8 @@ public final class NotificationFormatter { return velocityContext; } - public static FullMessage formatFullMessage(long userId, Event event, Position position) { + public static Message formatMessage(long userId, Event event, Position position, String templatePath) { VelocityContext velocityContext = prepareContext(userId, event, position); - return TextTemplateFormatter.formatFullMessage(velocityContext, event.getType()); + return TextTemplateFormatter.formatMessage(velocityContext, event.getType(), templatePath); } - - public static ShortMessage formatShortMessage(long userId, Event event, Position position) { - VelocityContext velocityContext = prepareContext(userId, event, position); - return TextTemplateFormatter.formatShortMessage(velocityContext, event.getType()); - } - } diff --git a/src/main/java/org/traccar/notification/ShortMessage.java b/src/main/java/org/traccar/notification/ShortMessage.java deleted file mode 100644 index 28812a1f1..000000000 --- a/src/main/java/org/traccar/notification/ShortMessage.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright 2016 Anton Tananaev (anton@traccar.org) - * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.notification; - -public class ShortMessage { - - private String title; - private String body; - - public ShortMessage(String title, String body) { - this.title = title; - this.body = body; - } - - public String getTitle() { - return title; - } - - public String getBody() { - return body; - } -} diff --git a/src/main/java/org/traccar/notification/TextTemplateFormatter.java b/src/main/java/org/traccar/notification/TextTemplateFormatter.java index 8a4d35677..77a2fea05 100644 --- a/src/main/java/org/traccar/notification/TextTemplateFormatter.java +++ b/src/main/java/org/traccar/notification/TextTemplateFormatter.java @@ -71,17 +71,12 @@ public final class TextTemplateFormatter { return template; } - public static FullMessage formatFullMessage(VelocityContext velocityContext, String name) { - String formattedMessage = formatMessage(velocityContext, name, "full"); - return new FullMessage((String) velocityContext.get("subject"), formattedMessage); + public static Message formatMessage(VelocityContext velocityContext, String name, String templatePath) { + String formattedMessage = format(velocityContext, name, templatePath); + return new Message((String) velocityContext.get("subject"), formattedMessage); } - public static ShortMessage formatShortMessage(VelocityContext velocityContext, String name) { - String formattedMessage = formatMessage(velocityContext, name, "short"); - return new ShortMessage((String) velocityContext.get("title"), formattedMessage); - } - - private static String formatMessage( + private static String format( VelocityContext velocityContext, String name, String templatePath) { StringWriter writer = new StringWriter(); diff --git a/src/main/java/org/traccar/notificators/NotificatorFirebase.java b/src/main/java/org/traccar/notificators/NotificatorFirebase.java index 9d1982f9c..0f189a330 100644 --- a/src/main/java/org/traccar/notificators/NotificatorFirebase.java +++ b/src/main/java/org/traccar/notificators/NotificatorFirebase.java @@ -24,9 +24,8 @@ import org.traccar.config.Keys; import org.traccar.model.Event; import org.traccar.model.Position; import org.traccar.model.User; -import org.traccar.notification.FullMessage; +import org.traccar.notification.Message; import org.traccar.notification.NotificationFormatter; -import org.traccar.notification.ShortMessage; import javax.ws.rs.client.Entity; import javax.ws.rs.client.InvocationCallback; @@ -47,7 +46,7 @@ public class NotificatorFirebase extends Notificator { private String sound; } - public static class Message { + public static class Payload { @JsonProperty("registration_ids") private String[] tokens; @JsonProperty("notification") @@ -70,20 +69,20 @@ public class NotificatorFirebase extends Notificator { final User user = Context.getPermissionsManager().getUser(userId); if (user.getAttributes().containsKey("notificationTokens")) { - ShortMessage shortMessage = NotificationFormatter.formatShortMessage(userId, event, position); + Message shortMessage = NotificationFormatter.formatMessage(userId, event, position, "short"); Notification notification = new Notification(); - notification.title= shortMessage.getTitle(); + notification.title = shortMessage.getSubject(); notification.body = shortMessage.getBody(); notification.sound = "default"; - Message message = new Message(); - message.tokens = user.getString("notificationTokens").split("[, ]"); - message.notification = notification; + Payload payload = new Payload(); + payload.tokens = user.getString("notificationTokens").split("[, ]"); + payload.notification = notification; Context.getClient().target(url).request() .header("Authorization", "key=" + key) - .async().post(Entity.json(message), new InvocationCallback<Object>() { + .async().post(Entity.json(payload), new InvocationCallback<Object>() { @Override public void completed(Object o) { } diff --git a/src/main/java/org/traccar/notificators/NotificatorMail.java b/src/main/java/org/traccar/notificators/NotificatorMail.java index 6b9774c58..339445622 100644 --- a/src/main/java/org/traccar/notificators/NotificatorMail.java +++ b/src/main/java/org/traccar/notificators/NotificatorMail.java @@ -19,7 +19,7 @@ package org.traccar.notificators; import org.traccar.Context; import org.traccar.model.Event; import org.traccar.model.Position; -import org.traccar.notification.FullMessage; +import org.traccar.notification.Message; import org.traccar.notification.MessageException; import org.traccar.notification.NotificationFormatter; @@ -30,7 +30,7 @@ public final class NotificatorMail extends Notificator { @Override public void sendSync(long userId, Event event, Position position) throws MessageException { try { - FullMessage message = NotificationFormatter.formatFullMessage(userId, event, position); + Message message = NotificationFormatter.formatMessage(userId, event, position, "full"); Context.getMailManager().sendMessage(userId, message.getSubject(), message.getBody()); } catch (MessagingException e) { throw new MessageException(e); diff --git a/src/main/java/org/traccar/notificators/NotificatorPushover.java b/src/main/java/org/traccar/notificators/NotificatorPushover.java index e541ea525..4a3099d7c 100644 --- a/src/main/java/org/traccar/notificators/NotificatorPushover.java +++ b/src/main/java/org/traccar/notificators/NotificatorPushover.java @@ -23,8 +23,8 @@ import org.traccar.config.Keys; import org.traccar.model.Event; import org.traccar.model.Position; import org.traccar.model.User; +import org.traccar.notification.Message; import org.traccar.notification.NotificationFormatter; -import org.traccar.notification.ShortMessage; import javax.ws.rs.client.Entity; import javax.ws.rs.client.InvocationCallback; @@ -37,7 +37,7 @@ public class NotificatorPushover extends Notificator { private final String token; private final String user; - public static class Message { + public static class Payload { @JsonProperty("token") private String token; @JsonProperty("user") @@ -77,26 +77,26 @@ public class NotificatorPushover extends Notificator { return; } - ShortMessage shortMessage = NotificationFormatter.formatShortMessage(userId, event, position); + Message shortMessage = NotificationFormatter.formatMessage(userId, event, position, "short"); - Message message = new Message(); - message.token = token; - message.user = this.user; - message.device = device; - message.title= shortMessage.getTitle(); - message.message = shortMessage.getBody(); + Payload payload = new Payload(); + payload.token = token; + payload.user = this.user; + payload.device = device; + payload.title = shortMessage.getSubject(); + payload.message = shortMessage.getBody(); Context.getClient().target(url).request() - .async().post(Entity.json(message), new InvocationCallback<Object>() { - @Override - public void completed(Object o) { - } - - @Override - public void failed(Throwable throwable) { - LOGGER.warn("Pushover API error", throwable); - } - }); + .async().post(Entity.json(payload), new InvocationCallback<Object>() { + @Override + public void completed(Object o) { + } + + @Override + public void failed(Throwable throwable) { + LOGGER.warn("Pushover API error", throwable); + } + }); } @Override diff --git a/src/main/java/org/traccar/notificators/NotificatorSms.java b/src/main/java/org/traccar/notificators/NotificatorSms.java index 360eb44ff..1a4739c1a 100644 --- a/src/main/java/org/traccar/notificators/NotificatorSms.java +++ b/src/main/java/org/traccar/notificators/NotificatorSms.java @@ -22,9 +22,9 @@ import org.traccar.database.StatisticsManager; import org.traccar.model.Event; import org.traccar.model.Position; import org.traccar.model.User; +import org.traccar.notification.Message; import org.traccar.notification.MessageException; import org.traccar.notification.NotificationFormatter; -import org.traccar.notification.ShortMessage; public final class NotificatorSms extends Notificator { @@ -32,7 +32,7 @@ public final class NotificatorSms extends Notificator { public void sendAsync(long userId, Event event, Position position) { final User user = Context.getPermissionsManager().getUser(userId); if (user.getPhone() != null) { - ShortMessage shortMessage = NotificationFormatter.formatShortMessage(userId, event, position); + Message shortMessage = NotificationFormatter.formatMessage(userId, event, position, "short"); Main.getInjector().getInstance(StatisticsManager.class).registerSms(); Context.getSmsManager().sendMessageAsync(user.getPhone(), shortMessage.getBody(), false); @@ -43,7 +43,7 @@ public final class NotificatorSms extends Notificator { public void sendSync(long userId, Event event, Position position) throws MessageException, InterruptedException { final User user = Context.getPermissionsManager().getUser(userId); if (user.getPhone() != null) { - ShortMessage shortMessage = NotificationFormatter.formatShortMessage(userId, event, position); + Message shortMessage = NotificationFormatter.formatMessage(userId, event, position, "short"); Main.getInjector().getInstance(StatisticsManager.class).registerSms(); Context.getSmsManager().sendMessageSync(user.getPhone(), shortMessage.getBody(), false); diff --git a/src/main/java/org/traccar/notificators/NotificatorTelegram.java b/src/main/java/org/traccar/notificators/NotificatorTelegram.java index a8cdacfbf..c85e2be3d 100644 --- a/src/main/java/org/traccar/notificators/NotificatorTelegram.java +++ b/src/main/java/org/traccar/notificators/NotificatorTelegram.java @@ -24,8 +24,8 @@ import org.traccar.model.User; import org.traccar.config.Keys; import org.traccar.model.Event; import org.traccar.model.Position; +import org.traccar.notification.Message; import org.traccar.notification.NotificationFormatter; -import org.traccar.notification.ShortMessage; import javax.ws.rs.client.Entity; import javax.ws.rs.client.InvocationCallback; @@ -75,15 +75,15 @@ public class NotificatorTelegram extends Notificator { private void executeRequest(String url, Object message) { Context.getClient().target(url).request() .async().post(Entity.json(message), new InvocationCallback<Object>() { - @Override - public void completed(Object o) { - } + @Override + public void completed(Object o) { + } - @Override - public void failed(Throwable throwable) { - LOGGER.warn("Telegram API error", throwable); - } - }); + @Override + public void failed(Throwable throwable) { + LOGGER.warn("Telegram API error", throwable); + } + }); } private LocationMessage createLocationMessage(String messageChatId, Position position) { @@ -99,7 +99,7 @@ public class NotificatorTelegram extends Notificator { @Override public void sendSync(long userId, Event event, Position position) { User user = Context.getPermissionsManager().getUser(userId); - ShortMessage shortMessage = NotificationFormatter.formatShortMessage(userId, event, position); + Message shortMessage = NotificationFormatter.formatMessage(userId, event, position, "short"); TextMessage message = new TextMessage(); message.chatId = user.getString("telegramChatId"); |