package org.appfuse.model;

import java.io.Serializable;


/**
 * This class is used to represent a resume's reference(s).
 *
 * <p>
 * <a href="Reference.java.html"><i>View Source</i></a>
 * </p>
 *
 * @author <a href="mailto:matt@raibledesigns.com">Matt Raible</a>
 * @version $Revision: 1.1 $ $Date: 2004/03/31 13:04:16 $
 *
 * @struts.form include-all="true" extends="BaseForm"
 * @hibernate.class table="reference"
 */
public class Reference extends BaseObject implements Serializable {
    //~ Instance fields ========================================================

    private Long id;
    private Long resumeId;
    private String name;
    private String organizationName;
    private String title;
    private String phoneNumber;
    private String email;
    private Boolean personal;
    private Boolean professional;
    
    //~ Methods ================================================================

    public void setId(Long id) {
        this.id = id;
    }

    /**
     * Returns the organizationName identifier.
     * @return String
     *
     * @hibernate.id column="id" generator-class="increment" 
     *  unsaved-value="null"
     */
    public Long getId() {
        return this.id;
    }

    /**
     * @return Returns the name.
     * @struts.validator type="required" msgkey="errors.required"
     * @hibernate.property column="name" length="100"
     */
    public String getName() {
        return name;
    }
    
    public void setOrganizationName(String name) {
        this.organizationName = name;
    }

    /**
     * Returns the organizationName phoneNumber.
     * @return String
     *
     * @hibernate.property column="organization_name"
     */
    public String getOrganizationName() {
        return this.organizationName;
    }
    
    /**
     * @return Returns the phoneNumber.
     * @struts.validator type="required" msgkey="errors.required"
     * @hibernate.property column="phoneNumber" length="20"
     */
    public String getPhoneNumber() {
        return phoneNumber;
    }

    /**
     * @param phoneNumber The phoneNumber to set.
     */
    public void setPhoneNumber(String description) {
        this.phoneNumber = description;
    }

    /**
     * @param name The name to set.
     */
    public void setName(String location) {
        this.name = location;
    }

    /**
     * @return Returns the resumeId.
     * @hibernate.property column="resume_id"
     */
    public Long getResumeId() {
        return resumeId;
    }

    /**
     * @param resumeId The resumeId to set.
     */
    public void setResumeId(Long resumeId) {
        this.resumeId = resumeId;
    }

    /**
     * @return Returns the title.
     * @hibernate.property column="title" length="50"
     */
    public String getTitle() {
        return title;
    }

    /**
     * @param title The title to set.
     */
    public void setTitle(String title) {
        this.title = title;
    }

    /**
     * @return Returns the email.
     * @struts.validator type="email"
     * @hibernate.property column="email" length="50"
     */
    public String getEmail() {
        return email;
    }

    /**
     * @param email The email to set.
     */
    public void setEmail(String email) {
        this.email = email;
    }

    /**
     * @return Returns the personal.
     * @hibernate.property column="personal"
     */
    public Boolean getPersonal() {
        return personal;
    }

    /**
     * @param personal The personal to set.
     */
    public void setPersonal(Boolean personal) {
        this.personal = personal;
    }

    /**
     * @return Returns the professional.
     * @hibernate.property column="professional"
     */
    public Boolean getProfessional() {
        return professional;
    }

    /**
     * @param professional The professional to set.
     */
    public void setProfessional(Boolean professional) {
        this.professional = professional;
    }

}