package com.ejie.aa20b.model;

import com.ejie.x38.serialization.JsonDateDeserializer;
import com.ejie.x38.serialization.JsonDateSerializer;
import java.util.Date;
import org.codehaus.jackson.map.annotate.JsonDeserialize;
import org.codehaus.jackson.map.annotate.JsonSerialize;

/**
 * Clase generated by UDA, 28-nov-2014 11:32:15.
 * 
 * @author UDA
 */

public class Clase implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	// Clave compuesta
	private Integer idclase;
	private String cclase;
	private String eclase;
	private String baja;
	private Date feini;
	private String usupubli;

	private String strFeini; // para recoger los filtros y mantener al Volver.

	/**
	 * Method 'Clase'.
	 */
	public Clase() {
	}

	/**
	 * Method 'Clase'.
	 * 
	 * @param idclase
	 *            Integer
	 * @param cclase
	 *            String
	 * @param eclase
	 *            String
	 * @param baja
	 *            String
	 * @param feini
	 *            Date
	 * @param usupubli
	 *            String
	 */
	public Clase(Integer idclase, String cclase, String eclase, String baja,
			Date feini, String usupubli) {

		this.idclase = idclase;
		this.cclase = cclase;
		this.eclase = eclase;
		this.baja = baja;
		this.feini = feini;
		this.usupubli = usupubli;
	}

	/**
	 * Method 'getIdclase'.
	 * 
	 * @return Integer
	 */

	public Integer getIdclase() {
		return this.idclase;
	}

	/**
	 * Method 'setIdclase'.
	 * 
	 * @param idclase
	 *            Integer
	 * @return
	 */

	public void setIdclase(Integer idclase) {
		this.idclase = idclase;
	}

	/**
	 * Method 'getCclase'.
	 * 
	 * @return String
	 */

	public String getCclase() {
		return this.cclase;
	}

	/**
	 * Method 'setCclase'.
	 * 
	 * @param cclase
	 *            String
	 * @return
	 */

	public void setCclase(String cclase) {
		this.cclase = cclase;
	}

	/**
	 * Method 'getEclase'.
	 * 
	 * @return String
	 */

	public String getEclase() {
		return this.eclase;
	}

	/**
	 * Method 'setEclase'.
	 * 
	 * @param eclase
	 *            String
	 * @return
	 */

	public void setEclase(String eclase) {
		this.eclase = eclase;
	}

	/**
	 * Method 'getBaja'.
	 * 
	 * @return String
	 */

	public String getBaja() {
		return this.baja;
	}

	/**
	 * Method 'setBaja'.
	 * 
	 * @param baja
	 *            String
	 * @return
	 */

	public void setBaja(String baja) {
		this.baja = baja;
	}

	/**
	 * Method 'getFeini'.
	 * 
	 * @return Date
	 */

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFeini() {
		return this.feini;
	}

	/**
	 * Method 'setFeini'.
	 * 
	 * @param feini
	 *            Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFeini(Date feini) {
		this.feini = feini;
	}

	/**
	 * Method 'getUsupubli'.
	 * 
	 * @return String
	 */

	public String getUsupubli() {
		return this.usupubli;
	}

	/**
	 * Method 'setUsupubli'.
	 * 
	 * @param usupubli
	 *            String
	 * @return
	 */

	public void setUsupubli(String usupubli) {
		this.usupubli = usupubli;
	}

	/**
	 * Intended only for logging and debugging.
	 * 
	 * Here, the contents of every main field are placed into the result.
	 * 
	 * @return String
	 */
	@Override
	public String toString() {
		StringBuilder result = new StringBuilder();
		result.append(this.getClass().getName()).append(" Object { ");
		// Clave compuesta

		result.append("[ idclase: ").append(this.idclase).append(" ]");

		result.append(", [ cclase: ").append(this.cclase).append(" ]");

		result.append(", [ eclase: ").append(this.eclase).append(" ]");

		result.append(", [ baja: ").append(this.baja).append(" ]");

		result.append(", [ feini: ").append(this.feini).append(" ]");

		result.append(", [ usupubli: ").append(this.usupubli).append(" ]");
		result.append("}");
		return result.toString();
	}

	public void setStrFeini(String strFeini) {
		this.strFeini = strFeini;
	}

	public String getStrFeini() {
		return strFeini;
	}

}
