package com.fp.persistence.parmas.param; import javax.persistence.Column; import java.io.Serializable; import com.fp.dto.hb.HibernateId; import java.lang.reflect.Field; import javax.persistence.Embeddable; import javax.persistence.Transient; /**Clase que hace referencia a la Clave Primaria de TARMUNIDADTIPO*/ @Embeddable public class TarmUnidadTipoKey extends com.fp.dto.AbstractDataTransport implements Serializable,Cloneable,HibernateId{ /** * HashCode asociado con la Instancia */ @Transient private int hashValue = 0; /** * Version de la Clase */ private static final long serialVersionUID = 1L; @Column(name="CLASE", nullable=false,updatable=false) /** * Codigo de catalogo 01 Explosivo, 02 Arma de Fuego */ private String clase; @Column(name="CLASECODE", nullable=false,updatable=false) /** * Codigo de tabla de catalogo 01 Codigo de tabla de clase de arma */ private String clasecode; @Column(name="TIPOARMAEXPLOSIVO", nullable=false,updatable=false) /** * Codigo de catalogo 01 Revolver, 02 Polvora */ private String tipoarmaexplosivo; @Column(name="TIPOARMAEXPLOSIVOCODIGO", nullable=false,updatable=false) /** * Codigo de tabla de catalogo 01 Codigo de tabla de tipos de armaexplosivo */ private String tipoarmaexplosivocodigo; @Column(name="UNIDADMEDIDAPESO", nullable=false,updatable=false) /** * Codigo de catalogo 01 KG, 02 Unidad */ private String unidadmedidapeso; @Column(name="UNIDADMEDIDAPESOCODIGO", nullable=false,updatable=false) /** * Codigo de tabla de catalogo 01 Codigo de tabla de tipos de unidad peso */ private String unidadmedidapesocodigo; /**Contructor por defecto*/ public TarmUnidadTipoKey(){} /**Contructor de TarmUnidadTipoKey @param pClase Codigo de catalogo 01 Explosivo, 02 Arma de Fuego @param pClasecode Codigo de tabla de catalogo 01 Codigo de tabla de clase de arma @param pTipoarmaexplosivo Codigo de catalogo 01 Revolver, 02 Polvora @param pTipoarmaexplosivocodigo Codigo de tabla de catalogo 01 Codigo de tabla de tipos de armaexplosivo @param pUnidadmedidapeso Codigo de catalogo 01 KG, 02 Unidad @param pUnidadmedidapesocodigo Codigo de tabla de catalogo 01 Codigo de tabla de tipos de unidad peso */ public TarmUnidadTipoKey(String pClase,String pClasecode,String pTipoarmaexplosivo,String pTipoarmaexplosivocodigo,String pUnidadmedidapeso,String pUnidadmedidapesocodigo){ clase=pClase; clasecode=pClasecode; tipoarmaexplosivo=pTipoarmaexplosivo; tipoarmaexplosivocodigo=pTipoarmaexplosivocodigo; unidadmedidapeso=pUnidadmedidapeso; unidadmedidapesocodigo=pUnidadmedidapesocodigo; } /**Obtiene el valor de clase @return valor de clase*/ public String getClase(){ return clase; } /**Fija el valor de clase @param pClase nuevo Valor de clase*/ public void setClase(String pClase){ clase=pClase; } /**Obtiene el valor de clasecode @return valor de clasecode*/ public String getClasecode(){ return clasecode; } /**Fija el valor de clasecode @param pClasecode nuevo Valor de clasecode*/ public void setClasecode(String pClasecode){ clasecode=pClasecode; } /**Obtiene el valor de tipoarmaexplosivo @return valor de tipoarmaexplosivo*/ public String getTipoarmaexplosivo(){ return tipoarmaexplosivo; } /**Fija el valor de tipoarmaexplosivo @param pTipoarmaexplosivo nuevo Valor de tipoarmaexplosivo*/ public void setTipoarmaexplosivo(String pTipoarmaexplosivo){ tipoarmaexplosivo=pTipoarmaexplosivo; } /**Obtiene el valor de tipoarmaexplosivocodigo @return valor de tipoarmaexplosivocodigo*/ public String getTipoarmaexplosivocodigo(){ return tipoarmaexplosivocodigo; } /**Fija el valor de tipoarmaexplosivocodigo @param pTipoarmaexplosivocodigo nuevo Valor de tipoarmaexplosivocodigo*/ public void setTipoarmaexplosivocodigo(String pTipoarmaexplosivocodigo){ tipoarmaexplosivocodigo=pTipoarmaexplosivocodigo; } /**Obtiene el valor de unidadmedidapeso @return valor de unidadmedidapeso*/ public String getUnidadmedidapeso(){ return unidadmedidapeso; } /**Fija el valor de unidadmedidapeso @param pUnidadmedidapeso nuevo Valor de unidadmedidapeso*/ public void setUnidadmedidapeso(String pUnidadmedidapeso){ unidadmedidapeso=pUnidadmedidapeso; } /**Obtiene el valor de unidadmedidapesocodigo @return valor de unidadmedidapesocodigo*/ public String getUnidadmedidapesocodigo(){ return unidadmedidapesocodigo; } /**Fija el valor de unidadmedidapesocodigo @param pUnidadmedidapesocodigo nuevo Valor de unidadmedidapesocodigo*/ public void setUnidadmedidapesocodigo(String pUnidadmedidapesocodigo){ unidadmedidapesocodigo=pUnidadmedidapesocodigo; } /**Implementacion de la comparacion de TarmUnidadTipoKey @param o Objeto de comparacion */ public boolean equals(Object o){ if (o == null)return false; if (! (o instanceof TarmUnidadTipoKey))return false; TarmUnidadTipoKey that = (TarmUnidadTipoKey) o; if (this.getClase() == null || that.getClase() == null){ return false; } if (! this.getClase().equals(that.getClase())){ return false; } if (this.getClasecode() == null || that.getClasecode() == null){ return false; } if (! this.getClasecode().equals(that.getClasecode())){ return false; } if (this.getTipoarmaexplosivo() == null || that.getTipoarmaexplosivo() == null){ return false; } if (! this.getTipoarmaexplosivo().equals(that.getTipoarmaexplosivo())){ return false; } if (this.getTipoarmaexplosivocodigo() == null || that.getTipoarmaexplosivocodigo() == null){ return false; } if (! this.getTipoarmaexplosivocodigo().equals(that.getTipoarmaexplosivocodigo())){ return false; } if (this.getUnidadmedidapeso() == null || that.getUnidadmedidapeso() == null){ return false; } if (! this.getUnidadmedidapeso().equals(that.getUnidadmedidapeso())){ return false; } if (this.getUnidadmedidapesocodigo() == null || that.getUnidadmedidapesocodigo() == null){ return false; } if (! this.getUnidadmedidapesocodigo().equals(that.getUnidadmedidapesocodigo())){ return false; } return true; } /**Implementacion del metodo hashCode bajo el patron de Bloch @return hashCode de la instancia TarmUnidadTipoKey */ public int hashCode(){ if (this.hashValue == 0){ int result = 17; result = result * 37 + (this.getClase() == null ? 0 : this.getClase().hashCode()); result = result * 37 + (this.getClasecode() == null ? 0 : this.getClasecode().hashCode()); result = result * 37 + (this.getTipoarmaexplosivo() == null ? 0 : this.getTipoarmaexplosivo().hashCode()); result = result * 37 + (this.getTipoarmaexplosivocodigo() == null ? 0 : this.getTipoarmaexplosivocodigo().hashCode()); result = result * 37 + (this.getUnidadmedidapeso() == null ? 0 : this.getUnidadmedidapeso().hashCode()); result = result * 37 + (this.getUnidadmedidapesocodigo() == null ? 0 : this.getUnidadmedidapesocodigo().hashCode()); this.hashValue = result; } return this.hashValue; } public Object cloneMe() throws CloneNotSupportedException { return this.clone(); } /**Implementacion toString */ public String toString() { Field[]fs=this.getClass().getDeclaredFields(); String data=""; for(Field f:fs){ try{ String name=f.getName(); if(f.getType().getName().compareTo("java.util.Set")==0)continue; if(name.compareTo("hashValue")==0||name.compareTo("serialVersionUID")==0)continue; data+="pk."+name+"="+f.get(this)+";"; }catch(Exception e){ continue; } } if(data.compareTo("")==0){ data=super.toString(); } return data; } }