View Javadoc
1   /*******************************************************************************
2    *   Gisgraphy Project 
3    * 
4    *   This library is free software; you can redistribute it and/or
5    *   modify it under the terms of the GNU Lesser General Public
6    *   License as published by the Free Software Foundation; either
7    *   version 2.1 of the License, or (at your option) any later version.
8    * 
9    *   This library is distributed in the hope that it will be useful,
10   *   but WITHOUT ANY WARRANTY; without even the implied warranty of
11   *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12   *   Lesser General Public License for more details.
13   * 
14   *   You should have received a copy of the GNU Lesser General Public
15   *   License along with this library; if not, write to the Free Software
16   *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
17   * 
18   *  Copyright 2008  Gisgraphy project 
19   *  David Masclet <davidmasclet@gisgraphy.com>
20   *  
21   *  
22   *******************************************************************************/
23  package com.gisgraphy.domain.geoloc.entity;
24  
25  import javax.persistence.Entity;
26  
27  import org.hibernate.annotations.Cache;
28  import org.hibernate.annotations.CacheConcurrencyStrategy;
29  
30  /**
31   * Represents a city subdivision Object
32   * 
33   * @author <a href="mailto:david.masclet@gisgraphy.com">David Masclet</a>
34   */
35  @Entity
36  @Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
37  public class CitySubdivision extends GisFeature implements ZipCodesAware {
38      
39      /**
40       * Constructor that populate the {@link CitySubdivision} with the gisFeature
41       * fields<br>
42       * 
43       * @param gisFeature
44       *                The gisFeature from which we want to populate the
45       *                {@linkplain CitySubdivision}
46       */
47      public CitySubdivision(GisFeature gisFeature) {
48  	super(gisFeature);
49      }
50  
51  
52      /**
53       * Default constructor (Needed by CGLib)
54       */
55      public CitySubdivision() {
56  	super();
57      }
58  
59      /*
60       * (non-Javadoc)
61       * 
62       * @see com.gisgraphy.domain.geoloc.entity.GisFeature#hashCode()
63       */
64      @Override
65      public int hashCode() {
66  	final int PRIME = 31;
67  	int result = super.hashCode();
68  	result = PRIME * result
69  		+ ((getFeatureId() == null) ? 0 : getFeatureId().hashCode());
70  	return result;
71      }
72  
73         
74  }