diff options
Diffstat (limited to 'src/org/traccar/geolocation')
3 files changed, 28 insertions, 3 deletions
diff --git a/src/org/traccar/geolocation/GeolocationException.java b/src/org/traccar/geolocation/GeolocationException.java new file mode 100644 index 000000000..5847cc807 --- /dev/null +++ b/src/org/traccar/geolocation/GeolocationException.java @@ -0,0 +1,24 @@ +/* + * Copyright 2016 Anton Tananaev (anton@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.geolocation; + +public class GeolocationException extends RuntimeException { + + public GeolocationException(String message) { + super(message); + } + +} diff --git a/src/org/traccar/geolocation/OpenCellIdGeolocationProvider.java b/src/org/traccar/geolocation/OpenCellIdGeolocationProvider.java index 7d129e3e9..d6e45b550 100644 --- a/src/org/traccar/geolocation/OpenCellIdGeolocationProvider.java +++ b/src/org/traccar/geolocation/OpenCellIdGeolocationProvider.java @@ -55,7 +55,7 @@ public class OpenCellIdGeolocationProvider implements GeolocationProvider { json.getJsonNumber("lat").doubleValue(), json.getJsonNumber("lon").doubleValue(), 0); } else { - callback.onFailure(new IllegalArgumentException("Coordinates are missing")); + callback.onFailure(new GeolocationException("Coordinates are missing")); } } return null; @@ -68,7 +68,7 @@ public class OpenCellIdGeolocationProvider implements GeolocationProvider { }); } else { - callback.onFailure(new IllegalArgumentException("No network information")); + callback.onFailure(new GeolocationException("No network information")); } } diff --git a/src/org/traccar/geolocation/UniversalGeolocationProvider.java b/src/org/traccar/geolocation/UniversalGeolocationProvider.java index 320d0774b..48152f7df 100644 --- a/src/org/traccar/geolocation/UniversalGeolocationProvider.java +++ b/src/org/traccar/geolocation/UniversalGeolocationProvider.java @@ -43,7 +43,8 @@ public class UniversalGeolocationProvider implements GeolocationProvider { try (JsonReader reader = Json.createReader(response.getResponseBodyAsStream())) { JsonObject json = reader.readObject(); if (json.containsKey("error")) { - callback.onFailure(new RuntimeException(json.getJsonObject("error").getString("message"))); + callback.onFailure( + new GeolocationException(json.getJsonObject("error").getString("message"))); } else { JsonObject location = json.getJsonObject("location"); callback.onSuccess( |