/*
* HsRelatorioLegislacaoDataAuto.java
*
* Generated by com.evutils.codegen.JDOObjectGenerator
*
* Use but DON'T TOUCH
*/
package com.evolute.siprp.server.db.data.siprp_local3;

import com.evolute.utils.jdo.*;
import java.util.HashMap;
import java.util.Map;

class HsRelatorioLegislacaoDataAuto extends JDOObject
{

	public static final String TABLENAME = "hs_relatorio_legislacao";

	public static final String HS_RELATORIO_ID = "hs_relatorio_id";
	public static final String HS_RELATORIO_ID_FULL = "hs_relatorio_legislacao.hs_relatorio_id";
	public static final String TO_HS_RELATORIO_ID = "to hs_relatorio_id";
	public static final String HS_LEGISLACAO_ID = "hs_legislacao_id";
	public static final String HS_LEGISLACAO_ID_FULL = "hs_relatorio_legislacao.hs_legislacao_id";
	public static final String ID = "id";
	public static final String ID_FULL = "hs_relatorio_legislacao.id";
	public static final String CATEGORIA = "categoria";
	public static final String CATEGORIA_FULL = "hs_relatorio_legislacao.categoria";
	public static final String DESCRICAO = "descricao";
	public static final String DESCRICAO_FULL = "hs_relatorio_legislacao.descricao";
	public static final String ORDEM = "ordem";
	public static final String ORDEM_FULL = "hs_relatorio_legislacao.ordem";

	public static final String FIELD_NAMES[] = new String[]{
		HS_RELATORIO_ID, TO_HS_RELATORIO_ID, HS_LEGISLACAO_ID, CATEGORIA, DESCRICAO, 
		ORDEM, };


	protected static final String ALL_FIELD_NAMES[] = new String[]{
		HS_RELATORIO_ID, HS_LEGISLACAO_ID, ID, CATEGORIA, DESCRICAO, ORDEM, };

	private Map<String, Object> dataHash;

	public HsRelatorioLegislacaoDataAuto()
	{
		dataHash = new HashMap<String, Object>();
	}

	public Integer getHs_relatorio_id()
	{
		return (Integer) dataHash.get(HS_RELATORIO_ID);
	}

	public void setHs_relatorio_id(Integer hs_relatorio_idValue )
	{
		dataHash.put(TO_HS_RELATORIO_ID, null);
		dataHash.put(HS_RELATORIO_ID, hs_relatorio_idValue );
	}

	public com.evolute.siprp.server.db.data.siprp_local3.HsRelatorioData toHs_relatorio_id()
		throws Exception
	{
		if( dataHash.get(TO_HS_RELATORIO_ID) == null && getHs_relatorio_id() != null )
		{
			dataHash.put(TO_HS_RELATORIO_ID, getJDOProvider().load(com.evolute.siprp.server.db.data.siprp_local3.HsRelatorioData.class, new Object[]{ getHs_relatorio_id() }, new String[]{ com.evolute.siprp.server.db.data.siprp_local3.HsRelatorioData.ID }));
		}
		return (com.evolute.siprp.server.db.data.siprp_local3.HsRelatorioData) dataHash.get(TO_HS_RELATORIO_ID);
	}

	public void setToHs_relatorio_id(com.evolute.siprp.server.db.data.siprp_local3.HsRelatorioData hs_relatorio_idObject )
	{
		if( hs_relatorio_idObject == null )
		{
			dataHash.put(HS_RELATORIO_ID, null);
		}
		else
		{
			dataHash.put(HS_RELATORIO_ID, hs_relatorio_idObject.get( com.evolute.siprp.server.db.data.siprp_local3.HsRelatorioData.ID ));
		}
		dataHash.put(TO_HS_RELATORIO_ID, hs_relatorio_idObject);
	}

	public Integer getHs_legislacao_id()
	{
		return (Integer) get(HS_LEGISLACAO_ID);
	}

	public void setHs_legislacao_id(Integer hs_legislacao_idValue )
	{
		this.set(HS_LEGISLACAO_ID, hs_legislacao_idValue );
	}

	public Integer getId()
	{
		return (Integer) get(ID);
	}

	public void setId(Integer idValue )
	{
		this.set(ID, idValue );
	}

	public String getCategoria()
	{
		return (String) get(CATEGORIA);
	}

	public void setCategoria(String categoriaValue )
	{
		this.set(CATEGORIA, categoriaValue );
	}

	public String getDescricao()
	{
		return (String) get(DESCRICAO);
	}

	public void setDescricao(String descricaoValue )
	{
		this.set(DESCRICAO, descricaoValue );
	}

	public Integer getOrdem()
	{
		return (Integer) get(ORDEM);
	}

	public void setOrdem(Integer ordemValue )
	{
		this.set(ORDEM, ordemValue );
	}

	protected Object innerGet( String fieldName )
		throws Exception
	{
		Object value = null;
		if( TO_HS_RELATORIO_ID.equals( fieldName ) )
		{
			value =  toHs_relatorio_id();
		}
		else if( HS_RELATORIO_ID.equals( fieldName ) )
		{
			value =  getHs_relatorio_id();
		}
		else
		{
			value =  dataHash.get( fieldName );
		}
		return value;
	}

	protected void innerSet( String fieldName, Object value )
		throws Exception
	{
		if( TO_HS_RELATORIO_ID.equals( fieldName ) )
		{
			setToHs_relatorio_id( (com.evolute.siprp.server.db.data.siprp_local3.HsRelatorioData) value );
		}
		else if( HS_RELATORIO_ID.equals( fieldName ) )
		{
			setHs_relatorio_id( (Integer) value );
		}
		else
		{
			dataHash.put( fieldName, value );
		}
	}

	public void save()
		throws Exception
	{
		if( dataHash.get(TO_HS_RELATORIO_ID) != null )
		{
			toHs_relatorio_id().save();
			dataHash.put(HS_RELATORIO_ID, toHs_relatorio_id().get( com.evolute.siprp.server.db.data.siprp_local3.HsRelatorioData.ID ));
		}

		super.save();
	}

	public String []getFieldNames()
	{
		return FIELD_NAMES;
	}

	protected String []getAllFieldNames()
	{
		return ALL_FIELD_NAMES;
	}

	public Class<HsRelatorioLegislacao> getInnerClass()
	{
		return HsRelatorioLegislacao.class;
	}

	public Integer getJDOPrimaryKey()
	{
		Object obj = this.getId();
		if(obj instanceof JDOObject){
			 obj = ((JDOObject) obj).getInnerObject();
		}
		return (Integer) obj;
	}
}
