1 package geo.google.datamodel; 2 3 /*** 4 * An attribute indicating how accurately we were able to geocode the given address. 5 * @see http://www.google.com/apis/maps/documentation/reference.html#GGeoAddressAccuracy 6 * @author jliang 7 * 8 */ 9 public enum GeoAddressAccuracy{ 10 UNKNOWN_LOCATION(0), 11 COUNTRY_LEVEL(1), 12 REGION_LEVEL(2), 13 SUB_REGION_LEVEL(3), 14 TOWN_LEVEL(4), 15 POST_CODE_LEVEL(5), 16 STREET_LEVEL(6), 17 INTERSECTION_LEVEL(7), 18 ADDRESS_LEVEL(8); 19 private int _code = -1; 20 private GeoAddressAccuracy(int code){ 21 _code = code; 22 } 23 public int getCode() { 24 return _code; 25 } 26 public String getName(){ 27 return this.name(); 28 } 29 public static GeoAddressAccuracy getAccuracyByCode(int code){ 30 switch (code) { 31 case 0: 32 return UNKNOWN_LOCATION; 33 case 1: 34 return COUNTRY_LEVEL; 35 case 2: 36 return REGION_LEVEL; 37 case 3: 38 return SUB_REGION_LEVEL; 39 case 4: 40 return TOWN_LEVEL; 41 case 5: 42 return POST_CODE_LEVEL; 43 case 6: 44 return STREET_LEVEL; 45 case 7: 46 return INTERSECTION_LEVEL; 47 case 8: 48 return ADDRESS_LEVEL; 49 default: 50 return UNKNOWN_LOCATION; 51 } 52 } 53 }