/*
 * PositionList.java
 *
 * Created on 30 de septiembre de 2004, 19:28
 */

package com.fenalco.entities;

import java.util.Hashtable;
import java.util.Vector;

import com.fenalco.utilities.database.QueryException;
import com.fenalco.utilities.database.SQLUtilities;

/**
 * 
 * @author Juan Ernesto Peña Kaltekis
 */
public class PositionList
{

	/**
	 * Este <CODE>Vector</CODE> agrupa los objetos del tipo <CODE>Position
	 * </CODE> que conforman el listado, está diseñado de la siguiente forma:
	 * key: id del código Position <CODE>positionId</CODE> value: Objeto del
	 * tipo <CODE>Position</CODE>
	 */
	private Vector positions;

	/** Constructor por defecto de la clase */
	public PositionList( )
	{
		this.positions = new Vector();
		this.loadData();
	}

	/**
	 * Este método carga de base de datos todos los registros de la tabla
	 * position en el atributo sections.
	 */
	public boolean loadData( )
	{
		// TODO: implement
		try
		{
			Vector results = new Vector();
			results = SQLUtilities
					.query("SELECT carg_id FROM cargo ORDER BY carg_nombre;");
			for( int i = 0; i < results.size(); i++ )
			{
				Hashtable temp = new Hashtable();
				temp = (Hashtable) results.elementAt(i);
				Integer key = (Integer) temp.get("carg_id");
				positions.addElement(new Position(key.intValue()));
			}
		}
		catch (QueryException qe)
		{
			System.out.println(qe.getMessage());
			return false;
		}
		return true;
	}

	/**
	 * Consultor para el atributo positions.
	 * 
	 * @return Valor del atributo positions.
	 */
	public Vector getPositions( )
	{
		return this.positions;
	}

	/**
	 * Modificador para el atributo positions.
	 * 
	 * @param sections
	 *            Nuevo valor del atributo positions.
	 */
	public void setPositions( Vector positions )
	{
		this.positions = positions;
	}

}