package projectv1a; import java.util.*; /** * Clase AllowedValues * * Se usa como un nuevo tipo de dato. Alberga un objeto de tipo Rango que limita * el rango de los valores permitidos, la creación de un rango es opcional. Se * consigue mediante la creación de varios constructores, según cual se use * tendremos, o no, un objeto de tipo Rango. * * También hay un Vector de valores permitidos, hay dos metodos para la * introducción de valores en él. El primero de ellos inserta integers * aprovechando el Boxing de Java 5. El segundo permite la inserción de * cualquier tipo de dato pero con el formato Object, es decir, si queremos * introducir un float habrá que hacer uso de su clase contenedora Float. * * Más adelante se ha utilizado también para indicar el criterio de disjunción * de una clase. */ public class AllowedValues { private Rango rank; private Vector valuesList; // Será igual al último vector modificado o añadido //////////////////////////////////////////\\ private Vector valuesListInt; //\\\\ private Vector valuesListFloat; //\\\\\\ private Vector valuesListDouble; //////// Necesitamos indicarle a Castor explicitamente el contenido del vector private Vector valuesListBoolean; /////// private Vector valuesListString; ///// /////////////////////////////////////////// private int identity; ////////////// CONSTRUCTOR /////////////// public AllowedValues(int a, int b) { // cuando deseamos crear un rango rank = new Rango(a, b); // y la lista. valuesList = new Vector(); valuesListInt = new Vector(); valuesListBoolean = new Vector(); valuesListFloat = new Vector(); valuesListDouble = new Vector(); valuesListString = new Vector(); } public AllowedValues(Object a, Object b) { // a y b deben ser tipo numérico rank = new Rango((Integer)a, (Integer)b); valuesList = new Vector(); valuesListInt = new Vector(); valuesListBoolean = new Vector(); valuesListFloat = new Vector(); valuesListDouble = new Vector(); valuesListString = new Vector(); } public AllowedValues() { // cuando solo deseamos crear una lista de valores valuesList = new Vector(); valuesListInt = new Vector(); valuesListBoolean = new Vector(); valuesListFloat = new Vector(); valuesListDouble = new Vector(); valuesListString = new Vector(); } ///////////////////////////////////////// public void setId(int i){ identity = i; } public int getId(){ return identity; } //// LOS NUEVOS VECTORES //// public Vector getValuesListInt(){ return valuesListInt; } public void setValuesListInt(Vector v){ valuesListInt = v; valuesList = valuesListInt; } public Vector getValuesListFloat(){ return valuesListFloat; } public void setValuesListFloat(Vector v){ valuesListFloat = v; valuesList = valuesListFloat; } public Vector getValuesListDouble(){ return valuesListDouble; } public void setValuesListDouble(Vector v){ valuesListDouble = v; valuesList = valuesListDouble; } public Vector getValuesListBoolean(){ return valuesListBoolean; } public void setValuesListBoolean(Vector v){ valuesListBoolean = v; valuesList = valuesListBoolean; } public Vector getValuesListString(){ return valuesListString; } public void setValuesListString(Vector v){ valuesListString = v; valuesList = valuesListString; } public void addInt(int c) { // Insertar un nuevo entero en el vector de enteros valuesListInt.add(c); valuesList = valuesListInt; } public void addFloat(float c) { // Insertar un nuevo float en el vector de floats valuesListFloat.add(c); valuesList = valuesListFloat; } public void addDouble(double c) { // Insertar un nuevo double en el vector de doubles valuesListDouble.add(c); valuesList = valuesListDouble; } public void addBoolean(boolean c) { // Insertar un nuevo boolean en el vector de booleanos valuesListBoolean.add(c); valuesList = valuesListBoolean; } public void addString(String c) { // Insertar un nuevo String en el vector de Strings valuesListString.add(c); valuesList = valuesListString; } ///////////////////////////// /* public void addToList(int c) { // Insertar un nuevo entero en el vector de valuesList.add(c); // valores permitidos. } public void addToList(float c){ // Insertar un nuevo float en el vector de valuesList.add(c); // valores permitidos. } public void addToList(double c){// Insertar un nuevo doble en el vector de valuesList.add(c); // valores permitidos. } public void addToList(String c){// Insertar una nueva cadena en el vector de valuesList.add(c); // valores permitidos. } */ public Vector getList() { // Devuelve el Vector de valores permitidos return valuesList; } public void setList(Vector v) { // Devuelve el Vector de valores permitidos valuesList = v; } public Rango getRank(){ return rank; } public void setRank(Rango r){ rank = r; } }