View Javadoc

1   package geo.google.datamodel;
2   
3   
4   import java.io.Serializable;
5   
6   import oasis.names.tc.ciq.xsdschema.xal._2.AddressDetails;
7   
8   import org.apache.commons.lang.StringUtils;
9   import org.apache.commons.lang.builder.EqualsBuilder;
10  import org.apache.commons.lang.builder.HashCodeBuilder;
11  import org.apache.commons.lang.builder.ToStringBuilder;
12  import org.apache.commons.lang.builder.ToStringStyle;
13  /***
14   * Data class for address. 
15   * @author jliang
16   *
17   */
18  public class GeoAddress implements Serializable{
19    private static final long serialVersionUID = 2701695885973529100L;
20    private GeoCoordinate _coordinate;
21    private AddressDetails _addressDetails;
22    private String _addressLine = StringUtils.EMPTY;
23    private GeoAddressAccuracy _accuracy = GeoAddressAccuracy.UNKNOWN_LOCATION;
24    
25    /***
26     * A structured address, formatted as xAL, or eXtensible Address Language, 
27     * an international standard for address formatting. 
28     * http://www.oasis-open.org/committees/ciq/ciq.html#6
29     * @return
30     */
31    public AddressDetails getAddressDetails() {
32      return _addressDetails;
33    }
34    public void setAddressDetails(AddressDetails addressDetails) {
35      _addressDetails = addressDetails;
36    }
37    /***
38     * A string value representing an unstructured address written as a standard street, 
39     * city, state address, and/or as a postal code. 
40     * @return
41     */
42    public String getAddressLine() {
43      return _addressLine;
44    }
45    public void setAddressLine(String addressLine) {
46      _addressLine = addressLine;
47    }
48    /***
49     * A geographic location defined by longitude, latitude, and (optional) altitude.
50     * @return
51     */
52    public GeoCoordinate getCoordinate() {
53      return _coordinate;
54    }
55    public void setCoordinate(GeoCoordinate coordinate) {
56      _coordinate = coordinate;
57    }
58    public GeoAddressAccuracy getAccuracy() {
59      return _accuracy;
60    }
61    public void setAccuracy(GeoAddressAccuracy accuracy) {
62      _accuracy = accuracy;
63    }
64    @Override
65    public boolean equals(Object o) {
66      return EqualsBuilder.reflectionEquals(this, o);
67    }
68    
69    @Override
70    public int hashCode() {
71      return HashCodeBuilder.reflectionHashCode(this);
72    }
73    
74    @Override
75    public String toString() {
76      return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
77    }
78  }