/*
 * Generated by XDoclet - Do not edit!
 */
package test.interfaces;

/**
 * Data object for Person.
 * @xdoclet-generated at 16-04-05
 * @copyright The XDoclet Team
 * @author XDoclet
 * @version 1.2.3
 */
public class PersonData
   extends java.lang.Object
   implements java.io.Serializable, test.interfaces.Identifiable
{
   private java.lang.String id;
   private java.lang.String name;
   private java.lang.String firstName;
   private java.lang.String phone;
   private java.lang.String fax;
   private java.util.Date creationDate;

  /* begin value object */

  /* end value object */

   public PersonData()
   {
   }

   public PersonData( java.lang.String id,java.lang.String name,java.lang.String firstName,java.lang.String phone,java.lang.String fax,java.util.Date creationDate )
   {
      setId(id);
      setName(name);
      setFirstName(firstName);
      setPhone(phone);
      setFax(fax);
      setCreationDate(creationDate);
   }

   public PersonData( PersonData otherData )
   {
      setId(otherData.getId());
      setName(otherData.getName());
      setFirstName(otherData.getFirstName());
      setPhone(otherData.getPhone());
      setFax(otherData.getFax());
      setCreationDate(otherData.getCreationDate());

   }

   public java.lang.String getId()
   {
      return this.id;
   }
   public void setId( java.lang.String id )
   {
      this.id = id;
   }

   public java.lang.String getName()
   {
      return this.name;
   }
   public void setName( java.lang.String name )
   {
      this.name = name;
   }

   public java.lang.String getFirstName()
   {
      return this.firstName;
   }
   public void setFirstName( java.lang.String firstName )
   {
      this.firstName = firstName;
   }

   public java.lang.String getPhone()
   {
      return this.phone;
   }
   public void setPhone( java.lang.String phone )
   {
      this.phone = phone;
   }

   public java.lang.String getFax()
   {
      return this.fax;
   }
   public void setFax( java.lang.String fax )
   {
      this.fax = fax;
   }

   public java.util.Date getCreationDate()
   {
      return this.creationDate;
   }
   public void setCreationDate( java.util.Date creationDate )
   {
      this.creationDate = creationDate;
   }

   public String toString()
   {
      StringBuffer str = new StringBuffer("{");

      str.append("id=" + getId() + " " + "name=" + getName() + " " + "firstName=" + getFirstName() + " " + "phone=" + getPhone() + " " + "fax=" + getFax() + " " + "creationDate=" + getCreationDate());
      str.append('}');

      return(str.toString());
   }

   public boolean equals( Object pOther )
   {
      if( pOther instanceof PersonData )
      {
         PersonData lTest = (PersonData) pOther;
         boolean lEquals = true;

         if( this.id == null )
         {
            lEquals = lEquals && ( lTest.id == null );
         }
         else
         {
            lEquals = lEquals && this.id.equals( lTest.id );
         }
         if( this.name == null )
         {
            lEquals = lEquals && ( lTest.name == null );
         }
         else
         {
            lEquals = lEquals && this.name.equals( lTest.name );
         }
         if( this.firstName == null )
         {
            lEquals = lEquals && ( lTest.firstName == null );
         }
         else
         {
            lEquals = lEquals && this.firstName.equals( lTest.firstName );
         }
         if( this.phone == null )
         {
            lEquals = lEquals && ( lTest.phone == null );
         }
         else
         {
            lEquals = lEquals && this.phone.equals( lTest.phone );
         }
         if( this.fax == null )
         {
            lEquals = lEquals && ( lTest.fax == null );
         }
         else
         {
            lEquals = lEquals && this.fax.equals( lTest.fax );
         }
         if( this.creationDate == null )
         {
            lEquals = lEquals && ( lTest.creationDate == null );
         }
         else
         {
            lEquals = lEquals && this.creationDate.equals( lTest.creationDate );
         }

         return lEquals;
      }
      else
      {
         return false;
      }
   }

   public int hashCode()
   {
      int result = 17;

      result = 37*result + ((this.id != null) ? this.id.hashCode() : 0);

      result = 37*result + ((this.name != null) ? this.name.hashCode() : 0);

      result = 37*result + ((this.firstName != null) ? this.firstName.hashCode() : 0);

      result = 37*result + ((this.phone != null) ? this.phone.hashCode() : 0);

      result = 37*result + ((this.fax != null) ? this.fax.hashCode() : 0);

      result = 37*result + ((this.creationDate != null) ? this.creationDate.hashCode() : 0);

      return result;
   }

}
