package it.csi.demo.democomp.business.business.dao.refappdao.metadata;

import it.csi.demo.democomp.business.business.dao.refappdao.dto.*;
import it.csi.demo.democomp.business.business.dao.metadata.*;
import java.util.List;

/**
 * @generated
 */
public class PersonaMetadata implements DAOMetadata {

	private String[] columnNames;

	public PersonaMetadata() {
		columnNames = new String[]{"NOME", "COGNOME", "COGNOME_ACQUISITO",
				"DATA_NASCITA", "SESSO", "STATO_CIVILE", "CODICE_FISCALE",
				"NUMERO_CARATTERISTICO", "DATA_INCARICO", "CITTA_NASCITA",
				"PROVINCIA_NASCITA"};
	}

	public PersonaMetadata(String[] columnNames) {
		this.columnNames = columnNames;
	}

	/**
	 * Method 'getTableName'
	 * 
	 * @return String
	 * @generated
	 */
	public String getTableName() {
		return "PERSONA";
	}

	public String getColumnName(String prefixPropName, String propName) {
		if (prefixPropName != null && prefixPropName.length() > 0)
			return getColumnName(prefixPropName + "." + propName);
		else
			return getColumnName(propName);
	}

	/**
	 * Method 'getColumnName'
	 * 
	 * @param propName
	 * @return String
	 * @generated
	 */
	public String getColumnName(String propName) {
		if ("nome".equalsIgnoreCase(propName)) {
			return "NOME";
		}
		if ("cognome".equalsIgnoreCase(propName)) {
			return "COGNOME";
		}
		if ("cognomeAcquisito".equalsIgnoreCase(propName)) {
			return "COGNOME_ACQUISITO";
		}
		if ("dataNascita".equalsIgnoreCase(propName)) {
			return "DATA_NASCITA";
		}
		if ("sesso".equalsIgnoreCase(propName)) {
			return "SESSO";
		}
		if ("statoCivile".equalsIgnoreCase(propName)) {
			return "STATO_CIVILE";
		}
		if ("codiceFiscale".equalsIgnoreCase(propName)) {
			return "CODICE_FISCALE";
		}
		if ("numeroCaratteristico".equalsIgnoreCase(propName)) {
			return "NUMERO_CARATTERISTICO";
		}
		if ("dataIncarico".equalsIgnoreCase(propName)) {
			return "DATA_INCARICO";
		}
		if ("cittaNascita".equalsIgnoreCase(propName)) {
			return "CITTA_NASCITA";
		}
		if ("provinciaNascita".equalsIgnoreCase(propName)) {
			return "PROVINCIA_NASCITA";
		}
		/// se non trovato
		throw new IllegalArgumentException("proprieta' " + propName
				+ " non trovata per il DTO PersonaDto");
	}

	/**
	 * Method 'getColumnNames'
	 * 
	 * @return String[]
	 * @generated
	 */
	public String[] getColumnNames() {
		return this.columnNames;
	}

}
