package com.flickr4java.flickr.photos; /** * A geographic position. * * @author mago * @version $Id: GeoData.java,v 1.4 2009/07/23 20:41:03 x-mago Exp $ */ public class GeoData { private float longitude; private float latitude; private int accuracy; public GeoData() { super(); } public GeoData(String longitudeStr, String latitudeStr, String accuracyStr) { longitude = Float.parseFloat(longitudeStr); latitude = Float.parseFloat(latitudeStr); accuracy = Integer.parseInt(accuracyStr); } public int getAccuracy() { return accuracy; } /** * Set the accuracy level. * <p> * * World level is 1, Country is ~3, Region ~6, City ~11, Street ~16. * * @param accuracy * @see com.flickr4java.flickr.Flickr#ACCURACY_WORLD * @see com.flickr4java.flickr.Flickr#ACCURACY_COUNTRY * @see com.flickr4java.flickr.Flickr#ACCURACY_REGION * @see com.flickr4java.flickr.Flickr#ACCURACY_CITY * @see com.flickr4java.flickr.Flickr#ACCURACY_STREET */ public void setAccuracy(int accuracy) { this.accuracy = accuracy; } public float getLatitude() { return latitude; } public void setLatitude(float latitude) { this.latitude = latitude; } public float getLongitude() { return longitude; } public void setLongitude(float longitude) { this.longitude = longitude; } @Override public String toString() { return "GeoData[longitude=" + longitude + " latitude=" + latitude + " accuracy=" + accuracy + "]"; } @Override public boolean equals(Object obj) { if ((obj == null) || (obj.getClass() != this.getClass())) { return false; } if (obj == this) { return true; } GeoData test = (GeoData) obj; return longitude == test.longitude && latitude == test.latitude && accuracy == test.accuracy; } @Override public int hashCode() { int hash = 1; hash += new Float(longitude).hashCode(); hash += new Float(latitude).hashCode(); hash += new Integer(accuracy).hashCode(); return hash; } }