package ng.prk.prkngandroid.model; import com.mapbox.mapboxsdk.annotations.MarkerOptions; import com.mapbox.mapboxsdk.annotations.PolylineOptions; import com.mapbox.mapboxsdk.geometry.LatLng; import java.util.HashMap; import java.util.List; import ng.prk.prkngandroid.model.ui.MarkerWrapper; import ng.prk.prkngandroid.model.ui.PolylineWrapper; public class SpotsAnnotations { private LatLng center; private HashMap<PolylineOptions, String> polylines; private HashMap<MarkerOptions, String> markers; private List<PolylineWrapper> polylinesList; private List<MarkerWrapper> markersList; public SpotsAnnotations() { this.polylines = new HashMap<>(); this.markers = new HashMap<>(); } public void addPolyline(String featureId, PolylineOptions polyline) { this.polylines.put(polyline, featureId); } public void addPolyline(PolylineWrapper polyline) { this.polylinesList.add(polyline); } public void addMarker(String featureId, MarkerOptions marker) { this.markers.put(marker, featureId); } public void addMarker(MarkerWrapper marker) { this.markersList.add(marker); } // TODO verify impact on using complex object as KEY public HashMap<PolylineOptions, String> getPolylines() { return polylines; } public HashMap<MarkerOptions, String> getMarkers() { return markers; } public void clearPolylines() { this.polylines = null; } public void clearMarkers() { this.markers = null; } public LatLng getCenterCoordinate() { return center; } public void setCenterCoordinate(LatLng center) { this.center = center; } }