aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/config/Keys.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/traccar/config/Keys.java')
-rw-r--r--src/org/traccar/config/Keys.java242
1 files changed, 136 insertions, 106 deletions
diff --git a/src/org/traccar/config/Keys.java b/src/org/traccar/config/Keys.java
index 068512de8..9347341b0 100644
--- a/src/org/traccar/config/Keys.java
+++ b/src/org/traccar/config/Keys.java
@@ -17,171 +17,201 @@ package org.traccar.config;
public final class Keys {
+ /**
+ * Connection timeout value in seconds. Because sometimes there is no way to detect lost TCP connection old
+ * connections stay in open state. On most systems there is a limit on number of open connection, so this leads to
+ * problems with establishing new connections when number of devices is high or devices data connections are
+ * unstable.
+ */
public static final ConfigSuffix PROTOCOL_TIMEOUT = new ConfigSuffix(
- ".timeout",
- Integer.class,
- "Connection timeout value in seconds. Because sometimes there is no way to detect lost TCP connection, "
- + "old connections stay in open state. On most systems there is a limit on number of open "
- + "connection, so this leads to problems with establishing new connections when number of "
- + "devices is high or devices data connections are unstable.");
+ ".timeout", Integer.class);
+ /**
+ * Server wide connection timeout value in seconds. See protocol timeout for more information.
+ */
public static final ConfigKey SERVER_TIMEOUT = new ConfigKey(
- "server.timeout",
- Integer.class,
- "Server wide connection timeout value in seconds. See protocol timeout for more information.");
+ "server.timeout", Integer.class);
+ /**
+ * Address for uploading aggregated anonymous usage statistics. Uploaded information is the same you can see on the
+ * statistics screen in the web app. It does not include any sensitive (e.g. locations).
+ */
public static final ConfigKey SERVER_STATISTICS = new ConfigKey(
- "server.statistics",
- Boolean.class,
- "Address for uploading aggregated anonymous usage statistics. Uploaded information is the same you can see "
- + "on the statistics screen in the web app. It does not include any sensitive (e.g. locations).");
+ "server.statistics", Boolean.class);
+ /**
+ * List of external handler classes to use in Netty pipeline.
+ */
public static final ConfigKey EXTRA_HANDLERS = new ConfigKey(
- "extra.handlers",
- String.class,
- "List of external handler classes to use in Netty pipeline.");
+ "extra.handlers", String.class);
+ /**
+ * Enable positions forwarding to other web server.
+ */
public static final ConfigKey FORWARD_ENABLE = new ConfigKey(
- "forward.enable",
- Boolean.class,
- "Enable positions forwarding to other web server.");
+ "forward.enable", Boolean.class);
+ /**
+ * URL to forward positions. Data is passed through URL parameters. For example, {uniqueId} for device identifier,
+ * {latitude} and {longitude} for coordinates.
+ */
public static final ConfigKey FORWARD_URL = new ConfigKey(
- "forward.url",
- String.class,
- "URL to forward positions. Data is passed through URL parameters. For example, {uniqueId} for device "
- + "identifier, {latitude} and {longitude} for coordinates.");
+ "forward.url", String.class);
+ /**
+ * Additional HTTP header, can be used for authorization.
+ */
public static final ConfigKey FORWARD_HEADER = new ConfigKey(
- "forward.header",
- String.class,
- "Additional HTTP header, can be used for authorization.");
+ "forward.header", String.class);
+ /**
+ * Boolean value to enable forwarding in JSON format.
+ */
public static final ConfigKey FORWARD_JSON = new ConfigKey(
- "forward.json",
- Boolean.class,
- "Boolean value to enable forwarding in JSON format.");
+ "forward.json", Boolean.class);
+ /**
+ * Boolean flag to enable or disable position filtering.
+ */
public static final ConfigKey FILTER_ENABLE = new ConfigKey(
- "filter.enable",
- Boolean.class,
- "Boolean flag to enable or disable position filtering.");
+ "filter.enable", Boolean.class);
+ /**
+ * Filter invalid (valid field is set to false) positions.
+ */
public static final ConfigKey FILTER_INVALID = new ConfigKey(
- "filter.invalid",
- Boolean.class,
- "Filter invalid (valid field is set to false) positions.");
+ "filter.invalid", Boolean.class);
+ /**
+ * Filter zero coordinates. Zero latitude and longitude are theoretically valid values, but it practice it usually
+ * indicates invalid GPS data.
+ */
public static final ConfigKey FILTER_ZERO = new ConfigKey(
- "filter.zero",
- Boolean.class,
- "Filter zero coordinates. Zero latitude and longitude are theoretically valid values, but it practice it "
- + "usually indicates invalid GPS data.");
+ "filter.zero", Boolean.class);
+ /**
+ * Filter duplicate records (duplicates are detected by time value).
+ */
public static final ConfigKey FILTER_DUPLICATE = new ConfigKey(
- "filter.duplicate",
- Boolean.class,
- "Filter duplicate records (duplicates are detected by time value).");
+ "filter.duplicate", Boolean.class);
+ /**
+ * Filter records with fix time in future. The values is specified in seconds. Records that have fix time more than
+ * specified number of seconds later than current server time would be filtered out.
+ */
public static final ConfigKey FILTER_FUTURE = new ConfigKey(
- "filter.future",
- Long.class,
- "Filter records with fix time in future. The values is specified in seconds. Records that have fix time "
- + "more than specified number of seconds later than current server time would be filtered out.");
+ "filter.future", Long.class);
+ /**
+ * Filter positions with accuracy less than specified value in meters.
+ */
public static final ConfigKey FILTER_ACCURACY = new ConfigKey(
- "filter.accuracy",
- Integer.class,
- "Filter positions with accuracy less than specified value in meters.");
+ "filter.accuracy", Integer.class);
+ /**
+ * Filter cell and wifi locations that are coming from geolocation provider.
+ */
public static final ConfigKey FILTER_APPROXIMATE = new ConfigKey(
- "filter.approximate",
- Boolean.class,
- "Filter cell and wifi locations that are coming from geolocation provider.");
+ "filter.approximate", Boolean.class);
+ /**
+ * Filter positions with exactly zero speed values.
+ */
public static final ConfigKey FILTER_STATIC = new ConfigKey(
- "filter.static",
- Boolean.class,
- "Filter positions with exactly zero speed values.");
+ "filter.static", Boolean.class);
+ /**
+ * Filter records by distance. The values is specified in meters. If the new position is less far than this value
+ * from the last one it gets filtered out.
+ */
public static final ConfigKey FILTER_DISTANCE = new ConfigKey(
- "filter.distance",
- Integer.class,
- "Filter records by distance. The values is specified in meters. If the new position is less far than this "
- + "value from the last one it gets filtered out.");
+ "filter.distance", Integer.class);
+ /**
+ * Filter records by Maximum Speed value in knots. Can be used to filter jumps to far locations even if they're
+ * marked as valid. Shouldn't be too low. Start testing with values at about 25000.
+ */
public static final ConfigKey FILTER_MAX_SPEED = new ConfigKey(
- "filter.maxSpeed",
- Integer.class,
- "Filter records by Maximum Speed value in knots. Can be used to filter jumps to far locations even if "
- + "they're marked as valid. Shouldn't be too low. Start testing with values at about 25000.");
+ "filter.maxSpeed", Integer.class);
+ /**
+ * Filter position if time from previous position is less than specified value in seconds.
+ */
public static final ConfigKey FILTER_MIN_PERIOD = new ConfigKey(
- "filter.minPeriod",
- Integer.class,
- "Filter position if time from previous position is less than specified value in seconds.");
+ "filter.minPeriod", Integer.class);
+ /**
+ * Time limit for the filtering in seconds. If the time difference between last position and a new one is more than
+ * this limit, the new position will not be filtered out.
+ */
public static final ConfigKey FILTER_SKIP_LIMIT = new ConfigKey(
- "filter.skipLimit",
- Long.class,
- "Time limit for the filtering in seconds. If the time difference between last position and a new one is "
- + "more than this limit, the new position will not be filtered out.");
+ "filter.skipLimit", Long.class);
+ /**
+ * Enable attributes skipping. Attribute skipping can be enabled in the config or device attributes.
+ */
public static final ConfigKey FILTER_SKIP_ATTRIBUTES_ENABLE = new ConfigKey(
- "filter.skipAttributes.enable",
- Boolean.class,
- "Enable attributes skipping. Attribute skipping can be enabled in the config or device attributes");
+ "filter.skipAttributes.enable", Boolean.class);
+ /**
+ * Replaces coordinates with last known if change is less than a 'coordinates.error' meters. Helps to avoid
+ * coordinates jumps during parking period.
+ */
public static final ConfigKey COORDINATES_FILTER = new ConfigKey(
- "coordinates.filter",
- Boolean.class,
- "Replaces coordinates with last known if change is less than a 'coordinates.error' meters. Helps to avoid "
- + "coordinates jumps during parking period.");
+ "coordinates.filter", Boolean.class);
+ /**
+ * Distance in meters. Distances below this value gets handled like explained in 'coordinates.filter'.
+ */
public static final ConfigKey COORDINATES_MIN_ERROR = new ConfigKey(
- "coordinates.minError",
- Integer.class,
- "Distance in meters. Distances below this value gets handled like explained in 'coordinates.filter'.");
+ "coordinates.minError", Integer.class);
+ /**
+ * Distance in meters. Distances above this value gets handled like explained in 'coordinates.filter', but only if
+ * Position is also marked as 'invalid'.
+ */
public static final ConfigKey COORDINATES_MAX_ERROR = new ConfigKey(
- "filter.maxError",
- Integer.class,
- "Distance in meters. Distances above this value gets handled like explained in 'coordinates.filter', but "
- + "only if Position is also marked as 'invalid'.");
+ "filter.maxError", Integer.class);
+ /**
+ * Enable to save device IP addresses information. Disabled by default.
+ */
public static final ConfigKey PROCESSING_REMOTE_ADDRESS_ENABLE = new ConfigKey(
- "processing.remoteAddress.enable",
- Boolean.class,
- "Enable to save device IP addresses information. Disabled by default.");
+ "processing.remoteAddress.enable", Boolean.class);
+ /**
+ * Boolean flag to enable LBS location resolution. Some devices send cell towers information and WiFi point when GPS
+ * location is not available. Traccar can determine coordinates based on that information using third party
+ * services. Default value is false.
+ */
public static final ConfigKey GEOLOCATION_ENABLE = new ConfigKey(
- "geolocation.enable",
- Boolean.class,
- "Boolean flag to enable LBS location resolution. Some devices send cell towers information and WiFi point "
- + "when GPS location is not available. Traccar can determine coordinates based on that information "
- + "using third party services. Default value is false.");
+ "geolocation.enable", Boolean.class);
+ /**
+ * Provider to use for LBS location. Available options: google, mozilla and opencellid. By default opencellid is
+ * used. You have to supply a key that you get from corresponding provider. For more information see LBS geolocation
+ * documentation.
+ */
public static final ConfigKey GEOLOCATION_TYPE = new ConfigKey(
- "geolocation.type",
- String.class,
- "Provider to use for LBS location. Available options: google, mozilla and opencellid. By default "
- + "opencellid is used. You have to supply a key that you get from corresponding provider. For more "
- + "information see LBS geolocation documentation.");
+ "geolocation.type", String.class);
+ /**
+ * Geolocation provider API URL address. Not required for most providers.
+ */
public static final ConfigKey GEOLOCATION_URL = new ConfigKey(
- "geolocation.url",
- String.class,
- "Geolocation provider URL address.");
+ "geolocation.url", String.class);
+ /**
+ * Provider API key. OpenCellID service requires API key.
+ */
public static final ConfigKey GEOLOCATION_KEY = new ConfigKey(
- "geolocation.key",
- String.class,
- "Provider API key. OpenCellID service requires API key.");
+ "geolocation.key", String.class);
+ /**
+ * Boolean flag to apply geolocation to invalid positions.
+ */
public static final ConfigKey GEOLOCATION_PROCESS_INVALID_POSITIONS = new ConfigKey(
- "geolocation.processInvalidPositions",
- Boolean.class,
- "Boolean flag to apply geolocation to invalid positions.");
+ "geolocation.processInvalidPositions", Boolean.class);
private Keys() {
}