diff options
Diffstat (limited to 'src/org/traccar/Context.java')
-rw-r--r-- | src/org/traccar/Context.java | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/src/org/traccar/Context.java b/src/org/traccar/Context.java index 581f00082..2b8860187 100644 --- a/src/org/traccar/Context.java +++ b/src/org/traccar/Context.java @@ -17,6 +17,11 @@ package org.traccar; import com.ning.http.client.AsyncHttpClient; +import java.net.InetAddress; +import java.util.Properties; + +import org.apache.velocity.app.VelocityEngine; +import org.eclipse.jetty.util.URIUtil; import org.traccar.database.AliasesManager; import org.traccar.database.ConnectionManager; import org.traccar.database.DataManager; @@ -125,6 +130,12 @@ public final class Context { return notificationManager; } + private static VelocityEngine velocityEngine; + + public static VelocityEngine getVelocityEngine() { + return velocityEngine; + } + private static final AsyncHttpClient ASYNC_HTTP_CLIENT = new AsyncHttpClient(); public static AsyncHttpClient getAsyncHttpClient() { @@ -181,7 +192,11 @@ public final class Context { int cacheSize = config.getInteger("geocoder.cacheSize"); switch (type) { case "nominatim": - reverseGeocoder = new NominatimReverseGeocoder(url, cacheSize); + if (key != null) { + reverseGeocoder = new NominatimReverseGeocoder(url, key, cacheSize); + } else { + reverseGeocoder = new NominatimReverseGeocoder(url, cacheSize); + } break; case "gisgraphy": reverseGeocoder = new GisgraphyReverseGeocoder(url, cacheSize); @@ -242,6 +257,20 @@ public final class Context { if (config.getBoolean("event.enable")) { notificationManager = new NotificationManager(dataManager); + Properties velocityProperties = new Properties(); + velocityProperties.setProperty("file.resource.loader.path", + Context.getConfig().getString("mail.templatesPath", "templates/mail") + "/"); + velocityProperties.setProperty("runtime.log.logsystem.class", + "org.apache.velocity.runtime.log.NullLogChute"); + + String address = config.getString("web.address", InetAddress.getLocalHost().getHostAddress()); + int port = config.getInteger("web.port", 8082); + String webUrl = URIUtil.newURI("http", address, port, "", ""); + webUrl = Context.getConfig().getString("web.url", webUrl); + velocityProperties.setProperty("web.url", webUrl); + + velocityEngine = new VelocityEngine(); + velocityEngine.init(velocityProperties); } serverManager = new ServerManager(); |