diff options
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/module/telemetry/OfflineDownloadEndEvent.java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/module/telemetry/OfflineDownloadEndEvent.java | 104 |
1 files changed, 88 insertions, 16 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/module/telemetry/OfflineDownloadEndEvent.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/module/telemetry/OfflineDownloadEndEvent.java index cbc79c7b60..e086d760b7 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/module/telemetry/OfflineDownloadEndEvent.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/module/telemetry/OfflineDownloadEndEvent.java @@ -2,8 +2,11 @@ package com.mapbox.mapboxsdk.module.telemetry; import android.annotation.SuppressLint; import android.os.Parcel; +import android.support.annotation.FloatRange; import com.mapbox.android.telemetry.Event; +import com.mapbox.mapboxsdk.constants.MapboxConstants; +import com.mapbox.mapboxsdk.offline.OfflineRegion; /** * Event will be sent while offline download end. @@ -16,33 +19,37 @@ public class OfflineDownloadEndEvent extends Event { private final Double maxZoom; private final String shapeForOfflineRegion; private String styleURL; - private Long sizeOfResourcesCompleted; - private Long numberOfTilesCompleted; - private String state; + private long sizeOfResourcesCompleted; + private long numberOfTilesCompleted; + private int state; + + OfflineDownloadEndEvent(PhoneState phoneState, String shapeForOfflineRegion, + @FloatRange(from = MapboxConstants.MINIMUM_ZOOM, + to = MapboxConstants.MAXIMUM_ZOOM) Double minZoom, + @FloatRange(from = MapboxConstants.MINIMUM_ZOOM, + to = MapboxConstants.MAXIMUM_ZOOM) Double maxZoom) { + this.created = phoneState.getCreated(); + this.shapeForOfflineRegion = shapeForOfflineRegion; + this.minZoom = minZoom; + this.maxZoom = maxZoom; + } void setStyleURL(String styleURL) { this.styleURL = styleURL; } - void setSizeOfResourcesCompleted(Long sizeOfResourcesCompleted) { + void setSizeOfResourcesCompleted(long sizeOfResourcesCompleted) { this.sizeOfResourcesCompleted = sizeOfResourcesCompleted; } - void setNumberOfTilesCompleted(Long numberOfTilesCompleted) { + void setNumberOfTilesCompleted(long numberOfTilesCompleted) { this.numberOfTilesCompleted = numberOfTilesCompleted; } - void setState(String state) { + void setState(@OfflineRegion.DownloadState int state) { this.state = state; } - OfflineDownloadEndEvent(PhoneState phoneState, String shapeForOfflineRegion, Double minZoom, Double maxZoom) { - this.created = phoneState.getCreated(); - this.shapeForOfflineRegion = shapeForOfflineRegion; - this.minZoom = minZoom; - this.maxZoom = maxZoom; - } - String getCreated() { return created; } @@ -63,19 +70,84 @@ public class OfflineDownloadEndEvent extends Event { return styleURL; } - Long getSizeOfResourcesCompleted() { + long getSizeOfResourcesCompleted() { return sizeOfResourcesCompleted; } - Long getNumberOfTilesCompleted() { + long getNumberOfTilesCompleted() { return numberOfTilesCompleted; } - String getState() { + int getState() { return state; } @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + + OfflineDownloadEndEvent that = (OfflineDownloadEndEvent) o; + + if (sizeOfResourcesCompleted != that.sizeOfResourcesCompleted) { + return false; + } + if (numberOfTilesCompleted != that.numberOfTilesCompleted) { + return false; + } + if (state != that.state) { + return false; + } + if (created != null ? !created.equals(that.created) : that.created != null) { + return false; + } + if (minZoom != null ? !minZoom.equals(that.minZoom) : that.minZoom != null) { + return false; + } + if (maxZoom != null ? !maxZoom.equals(that.maxZoom) : that.maxZoom != null) { + return false; + } + if (shapeForOfflineRegion != null ? !shapeForOfflineRegion.equals(that.shapeForOfflineRegion) : + that.shapeForOfflineRegion != null) { + return false; + } + return styleURL != null ? styleURL.equals(that.styleURL) : that.styleURL == null; + } + + @Override + public int hashCode() { + int result = event.hashCode(); + result = 31 * result + (created != null ? created.hashCode() : 0); + result = 31 * result + (minZoom != null ? minZoom.hashCode() : 0); + result = 31 * result + (maxZoom != null ? maxZoom.hashCode() : 0); + result = 31 * result + (shapeForOfflineRegion != null ? shapeForOfflineRegion.hashCode() : 0); + result = 31 * result + (styleURL != null ? styleURL.hashCode() : 0); + result = 31 * result + (int) (sizeOfResourcesCompleted ^ (sizeOfResourcesCompleted >>> 32)); + result = 31 * result + (int) (numberOfTilesCompleted ^ (numberOfTilesCompleted >>> 32)); + result = 31 * result + state; + return result; + } + + @Override + public String toString() { + return "OfflineDownloadEndEvent{" + + "event='" + event + '\'' + + ", created='" + created + '\'' + + ", minZoom=" + minZoom + + ", maxZoom=" + maxZoom + + ", shapeForOfflineRegion='" + shapeForOfflineRegion + '\'' + + ", styleURL='" + styleURL + '\'' + + ", sizeOfResourcesCompleted=" + sizeOfResourcesCompleted + + ", numberOfTilesCompleted=" + numberOfTilesCompleted + + ", state=" + state + + '}'; + } + + @Override public int describeContents() { return 0; } |