]> git.mxchange.org Git - jcontacts-business-core.git/blobdiff - src/org/mxchange/jcontactsbusiness/headquarters/CompanyHeadQuartersData.java
Continued a bit:
[jcontacts-business-core.git] / src / org / mxchange / jcontactsbusiness / headquarters / CompanyHeadQuartersData.java
index 1ee51a331ceb278b5572de88b9dad34c2224ccb0..0349a232a07df31fab7900bf7c1f66561f8bd2b3 100644 (file)
@@ -22,7 +22,6 @@ import javax.persistence.Basic;
 import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Entity;
-import javax.persistence.FetchType;
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
@@ -31,6 +30,7 @@ import javax.persistence.OneToOne;
 import javax.persistence.Table;
 import javax.persistence.Temporal;
 import javax.persistence.TemporalType;
+import javax.persistence.Transient;
 import org.mxchange.jcountry.data.Country;
 import org.mxchange.jcountry.data.CountryData;
 import org.mxchange.jphone.phonenumbers.fax.DialableFaxNumber;
@@ -43,15 +43,17 @@ import org.mxchange.jusercore.model.user.User;
 /**
  * A POJO for company headquarts data
  * <p>
- * @author Roland Haeder<roland@mxchange.org>
+ * @author Roland Hรคder<roland@mxchange.org>
  */
 @Entity (name = "company_headquarters")
 @Table (name = "company_headquarters")
-public class CompanyHeadQuartersData implements HeadQuartersData, Comparable<HeadQuartersData> {
+@SuppressWarnings ("PersistenceUnitPresent")
+public class CompanyHeadQuartersData implements HeadQuartersData {
 
        /**
         * Serial number
         */
+       @Transient
        private static final long serialVersionUID = 385_752_948_781_761L;
 
        /**
@@ -65,7 +67,7 @@ public class CompanyHeadQuartersData implements HeadQuartersData, Comparable<Hea
         * Headquarter's country code
         */
        @JoinColumn (name = "headquarters_country_id", nullable = false)
-       @OneToOne (targetEntity = CountryData.class, cascade = CascadeType.MERGE, optional = false, fetch = FetchType.EAGER)
+       @OneToOne (targetEntity = CountryData.class, cascade = CascadeType.REFRESH, optional = false)
        private Country headquartersCountry;
 
        /**
@@ -95,7 +97,7 @@ public class CompanyHeadQuartersData implements HeadQuartersData, Comparable<Hea
         */
        @Id
        @GeneratedValue (strategy = GenerationType.IDENTITY)
-       @Column (name = "headquarters_id", length = 20, nullable = false, updatable = false)
+       @Column (name = "headquarters_id", nullable = false, updatable = false)
        private Long headquartersId;
 
        /**
@@ -128,7 +130,7 @@ public class CompanyHeadQuartersData implements HeadQuartersData, Comparable<Hea
         * User owner instance
         */
        @JoinColumn (name = "headquarters_user_id", nullable = false, updatable = false)
-       @OneToOne (targetEntity = LoginUser.class, cascade = CascadeType.MERGE, optional = false)
+       @OneToOne (targetEntity = LoginUser.class, cascade = CascadeType.REFRESH, optional = false)
        private User headquartersUserOwner;
 
        /**
@@ -138,14 +140,9 @@ public class CompanyHeadQuartersData implements HeadQuartersData, Comparable<Hea
        @Column (name = "headquarters_zip_code", length = 6, nullable = false)
        private Integer headquartersZipCode;
 
-       @Override
-       public int compareTo (final HeadQuartersData headQuartersData) {
-               throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
-       }
-
        @Override
        public boolean equals (final Object object) {
-               if (object == null) {
+               if (null == object) {
                        return false;
                } else if (this.getClass() != object.getClass()) {
                        return false;
@@ -153,7 +150,9 @@ public class CompanyHeadQuartersData implements HeadQuartersData, Comparable<Hea
 
                final HeadQuartersData other = (HeadQuartersData) object;
 
-               if (!Objects.equals(this.getHeadquartersCity(), other.getHeadquartersCity())) {
+               if (!Objects.equals(this.getHeadquartersId(), other.getHeadquartersId())) {
+                       return false;
+               } else if (!Objects.equals(this.getHeadquartersCity(), other.getHeadquartersCity())) {
                        return false;
                } else if (!Objects.equals(this.getHeadquartersCountry(), other.getHeadquartersCountry())) {
                        return false;
@@ -172,19 +171,6 @@ public class CompanyHeadQuartersData implements HeadQuartersData, Comparable<Hea
                return true;
        }
 
-       @Override
-       public int hashCode () {
-               int hash = 7;
-               hash = 47 * hash + Objects.hashCode(this.getHeadquartersCity());
-               hash = 47 * hash + Objects.hashCode(this.getHeadquartersCountry());
-               hash = 47 * hash + Objects.hashCode(this.getHeadquartersHouseNumber());
-               hash = 47 * hash + Objects.hashCode(this.getHeadquartersStore());
-               hash = 47 * hash + Objects.hashCode(this.getHeadquartersStreet());
-               hash = 47 * hash + Objects.hashCode(this.getHeadquartersSuiteNumber());
-               hash = 47 * hash + Objects.hashCode(this.getHeadquartersZipCode());
-               return hash;
-       }
-
        @Override
        public String getHeadquartersCity () {
                return this.headquartersCity;
@@ -206,11 +192,13 @@ public class CompanyHeadQuartersData implements HeadQuartersData, Comparable<Hea
        }
 
        @Override
+       @SuppressWarnings ("ReturnOfDateField")
        public Calendar getHeadquartersCreated () {
                return this.headquartersCreated;
        }
 
        @Override
+       @SuppressWarnings ("AssignmentToDateFieldFromParameter")
        public void setHeadquartersCreated (final Calendar headquartersCreated) {
                this.headquartersCreated = headquartersCreated;
        }
@@ -305,4 +293,20 @@ public class CompanyHeadQuartersData implements HeadQuartersData, Comparable<Hea
                this.headquartersZipCode = headquartersZipCode;
        }
 
+       @Override
+       public int hashCode () {
+               int hash = 7;
+
+               hash = 47 * hash + Objects.hashCode(this.getHeadquartersId());
+               hash = 47 * hash + Objects.hashCode(this.getHeadquartersCity());
+               hash = 47 * hash + Objects.hashCode(this.getHeadquartersCountry());
+               hash = 47 * hash + Objects.hashCode(this.getHeadquartersHouseNumber());
+               hash = 47 * hash + Objects.hashCode(this.getHeadquartersStore());
+               hash = 47 * hash + Objects.hashCode(this.getHeadquartersStreet());
+               hash = 47 * hash + Objects.hashCode(this.getHeadquartersSuiteNumber());
+               hash = 47 * hash + Objects.hashCode(this.getHeadquartersZipCode());
+
+               return hash;
+       }
+
 }