aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/ServerManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/traccar/ServerManager.java')
-rw-r--r--src/org/traccar/ServerManager.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/org/traccar/ServerManager.java b/src/org/traccar/ServerManager.java
index 57cb3ea4e..378d8a52d 100644
--- a/src/org/traccar/ServerManager.java
+++ b/src/org/traccar/ServerManager.java
@@ -181,6 +181,7 @@ public class ServerManager {
initGoSafeServer("gosafe");
initAutoFon45Server("autofon45");
initBceServer("bce");
+ initXirgoServer("xirgo");
initProtocolDetector();
@@ -1337,5 +1338,19 @@ public class ServerManager {
serverList.add(server);
}
}
+
+ private void initXirgoServer(final String protocol) throws SQLException {
+ if (isProtocolEnabled(properties, protocol)) {
+ serverList.add(new TrackerServer(this, new ServerBootstrap(), protocol) {
+ @Override
+ protected void addSpecificHandlers(ChannelPipeline pipeline) {
+ pipeline.addLast("frameDecoder", new CharacterDelimiterFrameDecoder(1024, "##"));
+ pipeline.addLast("stringDecoder", new StringDecoder());
+ pipeline.addLast("stringEncoder", new StringEncoder());
+ pipeline.addLast("objectDecoder", new XirgoProtocolDecoder(dataManager, protocol, properties));
+ }
+ });
+ }
+ }
}