All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.evasion.entity.content.StaticPage Maven / Gradle / Ivy

The newest version!
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.evasion.entity.content;

import com.evasion.EntityJPA;
import com.evasion.entity.security.User;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import javax.persistence.*;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;

/**
 *
 * @author sebastien.glon
 */
@Entity(name = StaticPage.ENTITY_NAME)
@Table(name = StaticPage.ENTITY_NAME)
@NamedQueries({
    @NamedQuery(name = StaticPage.FIND_ALL, query = "SELECT p FROM " + StaticPage.ENTITY_NAME + " p"),
    @NamedQuery(name = "findpage", query = "SELECT p.corps FROM " + StaticPage.ENTITY_NAME + " p WHERE p.id = ?1")
})
public class StaticPage extends EntityJPA {

    /**
     * *
     * serialVersionUID.
     */
    private static final long serialVersionUID = 1L;

    public static final String ENTITY_NAME = "CMS_STATIC_PAGE";

    public static final String FIND_ALL = "findAllStaticPage";

    /**
     * Identifiant d'une personne.
     */
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;

    @Column(nullable = false, length = 150)
    private String titre;

    @Basic(fetch = FetchType.LAZY)
    @Lob
    @Column(nullable = false)
    private String corps;

    @Column(length = 500)
    private String description;

    @Column(nullable=false)
    private String userName;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "dateMaj")
    private Calendar dateMajInternal = new GregorianCalendar();

    /**
     * Constructeur interne pour la persistence.
     */
    public StaticPage() {
    }

    /**
     * Constructeur publique.
     *
     * @param titre titre de la page.
     * @param corps corps de la page.
     * @param description description de la page.
     * @param userName utilisateur auteur de la page.
     */
    public StaticPage(String titre, String corps, String description, String userName) {
        this.titre = titre;
        this.corps = corps;
        this.description = description;
        this.userName = userName;
        this.dateMajInternal = new GregorianCalendar();
    }

    /**
     * Getter du corps de page.
     *
     * @return corps de page.
     */
    public String getCorps() {
        return corps;
    }

    /**
     * Setter du corps de page.
     *
     * @param corps corps de page.
     */
    public void setCorps(String corps) {
        this.corps = corps;
    }

    /**
     * Getter de la description de page
     *
     * @return description de page.
     */
    public String getDescription() {
        return description;
    }

    /**
     * Setter de la description de la page.
     *
     * @param description description de la page.
     */
    public void setDescription(String description) {
        this.description = description;
    }

    /**
     * Getter de l'identifiant technique.
     *
     * @return identifiant technique.
     */
    public Long getId() {
        return id;
    }

    /**
     * Setter de l'identifiant technique
     *
     * @param id Identifiant technioque.
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * Getter de titre.
     *
     * @return titre de la page.
     */
    public String getTitre() {
        return titre;
    }

    /**
     * Setter du titre de la page.
     *
     * @param titre titre de la page.
     */
    public void setTitre(String titre) {
        this.titre = titre;
    }

    /**
     * Getter de la date de mise à jour (non protégé).
     *
     * @return date de mise à jour non protégé.
     */
    protected Calendar getDateMajInternal() {
        return dateMajInternal;
    }

    /**
     * Setter de la date de mise à jour (non protégé).
     *
     * @param dateMajInternal date de mise à jour non protégé.
     */
    protected void setDateMajInternal(Calendar dateMajInternal) {
        this.dateMajInternal = dateMajInternal;
    }

    /**
     * Getter de la date de mise à jour
     *
     * @return date de dernière mise à jour.
     */
    public Date getDateMaj() {
        if (dateMajInternal == null) {
            return null;
        } else {
            return dateMajInternal.getTime();
        }
    }

    /**
     * Setter de la date de dernière mise à jour.
     *
     * @param dateMaj date de dernière mise à jour.
     */
    public void setDateMaj(Date dateMaj) {
        Calendar calendar = new GregorianCalendar();
        calendar.setTime(dateMaj);
        this.dateMajInternal = calendar;
    }

    /**
     * Getter de l'utilisateur.
     *
     * @return utilisateur auteur de la page.
     */
    public String getUserName() {
        return userName;
    }

    /**
     * Setter de l'utilisateur.
     *
     * @param userName utilisateur auteur de la page.
     */
    public void setUserName(String userName) {
        this.userName = userName;
    }

    /**
     * {@inheritDoc }
     */
    @Override
    public boolean equals(final Object obj) {
        if (obj == null) {
            return false;
        }
        if (this == obj) {
            return true;
        }
        if (!(obj instanceof StaticPage)) {
            return false;
        }
        StaticPage rhs = (StaticPage) obj;

        return new EqualsBuilder().append(this.titre, rhs.titre).
                append(this.userName, rhs.userName).
                isEquals();
    }

    /**
     * @{@inheritDoc }
     */
    @Override
    public int hashCode() {
        return new HashCodeBuilder().append(this.titre).
                append(this.userName).
                toHashCode();
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy