Files
tarisan_gitea/Fuentes/com/tarisan/generador/GenerarAttributeInfoBD.java
T
2025-06-09 13:37:06 +02:00

140 lines
4.8 KiB
Java

package com.tarisan.generador;
import java.io.*;
import java.util.Vector;
public class GenerarAttributeInfoBD
{
public static void crearAttributeInfo( Tabla tabla , String packageName)
{
String nombreClase = tabla.getNombre();
System.out.println("Generando " + nombreClase + "AttributeInfo...");
try{
PrintWriter out = new PrintWriter( new FileWriter(".\\dataGenerado\\" + nombreClase + "AttributeInfo.java" ) );
out.println("package " + packageName + ".data;\r\r\n\r\r\n\r\r\n");
out.println( "public class " + nombreClase + "AttributeInfo extends " + packageName + ".persistencia.ObjetoBaseAttributeInfo" );
out.println( "{" );
//Recorro las propiedades
String definicionPropiedades = "";
String listaClaves = "";
String metodosPropiedades = "";
String tipo="", nombrePropiedad="";
boolean clave , required;
String originalName=null, largo=null;
String nombrePropiedadCambiada = null;
String tipoElemento = null;
String columna="";
Vector vectorCampos = tabla.getCampos();
Campo campo;
for( int i=0; i < vectorCampos.size(); i++ )
{
campo = ( Campo )vectorCampos.elementAt(i);
nombrePropiedad = campo.getNombre();
//Saco sus propiedades
nombrePropiedad = campo.getNombre();
tipo = campo.getTipo();
clave = campo.getClave();
required = campo.getRequerido();
originalName = campo.getNombreOriginal();
largo = "" + campo.getLargo();
//Definicion de las propiedades
definicionPropiedades += "\tprivate boolean " + nombrePropiedad +"Required = "+ required +";\r\n";
definicionPropiedades += "\tprivate String " + nombrePropiedad +"OriginalName = \""+ originalName +"\";\r\n";
definicionPropiedades += "\tprivate int " + nombrePropiedad +"Largo = "+ largo +";\r\n";
//Genero el codigo para las claves
if( clave )
{
if( !listaClaves.equals("") )
listaClaves += ", ";
listaClaves += "\""+ nombrePropiedad +"\"";
}
//Metodos GET
//Required
nombrePropiedadCambiada = nombrePropiedad + "Required";
metodosPropiedades += "\r\n\r\n\tpublic boolean " + getGetMethod( nombrePropiedadCambiada ) +"()\r\n";
metodosPropiedades += "\t{\r\n";
metodosPropiedades += "\t\treturn " + nombrePropiedadCambiada + ";\r\n";
metodosPropiedades += "\t}\r\n";
//OriginalName
nombrePropiedadCambiada = nombrePropiedad + "OriginalName";
metodosPropiedades += "\tpublic String " + getGetMethod( nombrePropiedadCambiada ) +"()\r\n";
metodosPropiedades += "\t{\r\n";
metodosPropiedades += "\t\treturn " + nombrePropiedadCambiada + ";\r\n";
metodosPropiedades += "\t}\r\n";
//Largo
nombrePropiedadCambiada = nombrePropiedad + "Largo";
metodosPropiedades += "\tpublic int " + getGetMethod( nombrePropiedadCambiada ) +"()\r\n";
metodosPropiedades += "\t{\r\n";
metodosPropiedades += "\t\treturn " + nombrePropiedadCambiada + ";\r\n";
metodosPropiedades += "\t}\r\n";
//Metodos SET
//Required
nombrePropiedadCambiada = nombrePropiedad + "Required";
metodosPropiedades += "\r\n\tpublic void " + getSetMethod( nombrePropiedadCambiada ) + "( boolean s )\r\n";
metodosPropiedades += "\t{\r\n";
metodosPropiedades += "\t\t" + nombrePropiedadCambiada + " = s;\r\n";
metodosPropiedades += "\t}\r\n";
//OriginalName
nombrePropiedadCambiada = nombrePropiedad + "OriginalName";
metodosPropiedades += "\tpublic void " + getSetMethod( nombrePropiedadCambiada ) + "( String s )\r\n";
metodosPropiedades += "\t{\r\n";
metodosPropiedades += "\t\t" + nombrePropiedadCambiada + " = s;\r\n";
metodosPropiedades += "\t}\r\n";
//Required
nombrePropiedadCambiada = nombrePropiedad + "Largo";
metodosPropiedades += "\tpublic void " + getSetMethod( nombrePropiedadCambiada ) + "( int s )\r\n";
metodosPropiedades += "\t{\r\n";
metodosPropiedades += "\t\t" + nombrePropiedadCambiada + " = s;\r\n";
metodosPropiedades += "\t}\r\n";
}//fin del for
//Imprimo el resto
out.println( definicionPropiedades );
out.println( "\tprivate String[] primaryKey = {" + listaClaves + "};" );
out.println( "\r\n\tpublic String[] getPrimaryKey(){" );
out.println( "\t\treturn primaryKey;" );
out.println( "\t}" );
out.println( metodosPropiedades );
out.println( "\r\n\r\n}\r\n" );
out.close();
}
catch( Exception e )
{
System.out.println( e );
}
}
public static String getGetMethod( String nombrePropiedad )
{
String nombreMetodo = "get" + nombrePropiedad.substring(0,1).toUpperCase() + nombrePropiedad.substring(1);
return nombreMetodo;
}
public static String getSetMethod( String nombrePropiedad )
{
String nombreMetodo = "set" + nombrePropiedad.substring(0,1).toUpperCase() + nombrePropiedad.substring(1);
return nombreMetodo;
}
}