DriverConfigurazioneDB_gestioneErroreLIB.java
- /*
- * GovWay - A customizable API Gateway
- * https://govway.org
- *
- * Copyright (c) 2005-2025 Link.it srl (https://link.it).
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 3, as published by
- * the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
- package org.openspcoop2.core.config.driver.db;
- import static org.openspcoop2.core.constants.CostantiDB.CREATE;
- import static org.openspcoop2.core.constants.CostantiDB.DELETE;
- import static org.openspcoop2.core.constants.CostantiDB.UPDATE;
- import java.sql.Connection;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import org.openspcoop2.core.commons.DBUtils;
- import org.openspcoop2.core.config.GestioneErrore;
- import org.openspcoop2.core.config.GestioneErroreCodiceTrasporto;
- import org.openspcoop2.core.config.GestioneErroreSoapFault;
- import org.openspcoop2.core.config.constants.GestioneErroreComportamento;
- import org.openspcoop2.core.config.driver.DriverConfigurazioneException;
- import org.openspcoop2.core.config.driver.DriverConfigurazioneNotFound;
- import org.openspcoop2.core.constants.CostantiDB;
- import org.openspcoop2.utils.jdbc.JDBCUtilities;
- import org.openspcoop2.utils.sql.ISQLQueryObject;
- import org.openspcoop2.utils.sql.SQLObjectFactory;
- /**
- * DriverConfigurazioneDB_gestioneErroreLIB
- *
- * @author Stefano Corallo - corallo@link.it
- * @author $Author$
- * @version $Rev$, $Date$
- */
- public class DriverConfigurazioneDB_gestioneErroreLIB {
-
- public static GestioneErrore getGestioneErrore(long idGestioneErrore,Connection con) throws DriverConfigurazioneException,DriverConfigurazioneNotFound{
-
- GestioneErrore gestioneErrore = null;
-
- PreparedStatement stm = null;
- ResultSet rs = null;
- PreparedStatement stm1 = null;
- ResultSet rs1 = null;
-
- try {
- ISQLQueryObject sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
-
- // Get gestione errore generale
- sqlQueryObject.addFromTable(CostantiDB.GESTIONE_ERRORE);
- sqlQueryObject.addSelectField("comportamento_default");
- sqlQueryObject.addSelectField("cadenza_rispedizione");
- sqlQueryObject.addSelectField("nome");
- sqlQueryObject.addWhereCondition("id=?");
- String sqlQuery = sqlQueryObject.createSQLQuery();
- DriverConfigurazioneDBLib.log.debug("eseguo query: " + DBUtils.formatSQLString(sqlQuery));
- stm = con.prepareStatement(sqlQuery);
- stm.setLong(1, idGestioneErrore);
- rs = stm.executeQuery();
- if (rs.next()) {
- gestioneErrore = new GestioneErrore();
- gestioneErrore.setId(idGestioneErrore);
- gestioneErrore.setComportamento(GestioneErroreComportamento.toEnumConstant(rs.getString("comportamento_default")));
- gestioneErrore.setCadenzaRispedizione(rs.getString("cadenza_rispedizione"));
- gestioneErrore.setNome(rs.getString("nome"));
- //trasporto
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addFromTable(CostantiDB.GESTIONE_ERRORE_TRASPORTO);
- sqlQueryObject.addSelectField("*");
- sqlQueryObject.addWhereCondition("id_gestione_errore = ?");
- sqlQuery = sqlQueryObject.createSQLQuery();
- stm1 = con.prepareStatement(sqlQuery);
- stm1.setLong(1, gestioneErrore.getId());
- rs1 = stm1.executeQuery();
- while(rs1.next())
- {
- GestioneErroreCodiceTrasporto trasporto = new GestioneErroreCodiceTrasporto();
- trasporto.setComportamento(GestioneErroreComportamento.toEnumConstant(rs1.getString("comportamento")));
- trasporto.setCadenzaRispedizione(rs1.getString("cadenza_rispedizione"));
- if(rs1.getLong("valore_massimo")>0){
- String maxVal = ""+rs1.getLong("valore_massimo");
- trasporto.setValoreMassimo(!maxVal.equals("") ? Integer.valueOf(maxVal) : null);
- }
- if(rs1.getLong("valore_minimo")>0){
- String minVal = ""+rs1.getLong("valore_minimo");
- trasporto.setValoreMinimo(!minVal.equals("") ? Integer.valueOf(minVal) : null);
- }
- gestioneErrore.addCodiceTrasporto(trasporto);
- }
- rs1.close();
- stm1.close();
- //soap
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addFromTable(CostantiDB.GESTIONE_ERRORE_SOAP);
- sqlQueryObject.addSelectField("*");
- sqlQueryObject.addWhereCondition("id_gestione_errore = ?");
- sqlQuery = sqlQueryObject.createSQLQuery();
- stm1 = con.prepareStatement(sqlQuery);
- stm1.setLong(1, gestioneErrore.getId());
- rs1 = stm1.executeQuery();
- while(rs1.next())
- {
- GestioneErroreSoapFault soap = new GestioneErroreSoapFault();
- soap.setComportamento(GestioneErroreComportamento.toEnumConstant(rs1.getString("comportamento")));
- soap.setCadenzaRispedizione(rs1.getString("cadenza_rispedizione"));
- soap.setFaultActor(rs1.getString("fault_actor"));
- soap.setFaultCode(rs1.getString("fault_code"));
- soap.setFaultString(rs1.getString("fault_string"));
- gestioneErrore.addSoapFault(soap);
- }
- rs1.close();
- stm1.close();
- } else {
- throw new DriverConfigurazioneNotFound("Gestione errore con id["+idGestioneErrore+"] non presente");
- }
- rs.close();
- stm.close();
- return gestioneErrore;
- } catch (SQLException se) {
- throw new DriverConfigurazioneException(" SqlException: " + se.getMessage(),se);
- }catch (DriverConfigurazioneNotFound e) {
- throw new DriverConfigurazioneNotFound(e);
- }catch (Exception se) {
- throw new DriverConfigurazioneException(" Exception: " + se.getMessage(),se);
- } finally {
- //Chiudo statement and resultset
- JDBCUtilities.closeResources(rs1, stm1);
- JDBCUtilities.closeResources(rs, stm);
- }
- }
-
- public static long getIdGestioneErrore(String nomeGestioneErrore,Connection con) throws DriverConfigurazioneException
- {
- PreparedStatement stm = null;
- ResultSet rs = null;
- long idGestioneErrore=-1;
- try
- {
- ISQLQueryObject sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addFromTable(CostantiDB.GESTIONE_ERRORE);
- sqlQueryObject.addSelectField("id");
- sqlQueryObject.addWhereCondition("nome = ?");
- String query = sqlQueryObject.createSQLQuery();
- stm=con.prepareStatement(query);
- stm.setString(1, nomeGestioneErrore);
- rs=stm.executeQuery();
- if(rs.next()){
- idGestioneErrore = rs.getLong("id");
- }
- return idGestioneErrore;
- }catch (SQLException e) {
- throw new DriverConfigurazioneException(e);
- }catch (Exception e) {
- throw new DriverConfigurazioneException(e);
- }finally
- {
- //Chiudo statement and resultset
- JDBCUtilities.closeResources(rs, stm);
- }
- }
-
-
-
- public static long CRUDGestioneErroreServizioApplicativo(int type, org.openspcoop2.core.config.GestioneErrore gestioneErrore,
- long idSoggettoProprietario,long idServizioApplicativo,boolean invocazioneServizio,
- Connection con)throws DriverConfigurazioneException{
- if(invocazioneServizio)
- return CRUDGestioneErrore(type, gestioneErrore, idSoggettoProprietario, idServizioApplicativo,1,con);
- else
- return CRUDGestioneErrore(type, gestioneErrore, idSoggettoProprietario, idServizioApplicativo,2,con);
- }
- public static long CRUDGestioneErroreComponenteCooperazione(int type, org.openspcoop2.core.config.GestioneErrore gestioneErrore,
- Connection con) throws DriverConfigurazioneException{
- return CRUDGestioneErrore(type, gestioneErrore, -1,-1,3,con) ;
- }
- public static long CRUDGestioneErroreComponenteIntegrazione(int type, org.openspcoop2.core.config.GestioneErrore gestioneErrore,
- Connection con) throws DriverConfigurazioneException{
- return CRUDGestioneErrore(type, gestioneErrore,-1,-1,4,con) ;
- }
-
- private static long CRUDGestioneErrore(int type, org.openspcoop2.core.config.GestioneErrore gestioneErrore,
- long idSoggettoProprietario,long idServizioApplicativo,
- int tipoCRUD,Connection con) throws DriverConfigurazioneException {
- if (gestioneErrore == null)
- throw new DriverConfigurazioneException("[DriverConfigurazioneDB_LIB::CRUDGestioneErrore] Parametro non valido.");
-
- String nomeGestioneErrore = null; // Costruito obbligatoriamente dal driver
- if(tipoCRUD==1 || tipoCRUD==2){
- // crud servizioApplicativo invocazioneServizio(1) o rispostaAsincrona(2)
- if(idSoggettoProprietario<=0){
- throw new DriverConfigurazioneException("[DriverConfigurazioneDB_LIB::CRUDGestioneErrore] Soggetto proprietario non fornito.");
- }
- if(idServizioApplicativo<=0){
- throw new DriverConfigurazioneException("[DriverConfigurazioneDB_LIB::CRUDGestioneErrore] Servizio applicativo non fornito.");
- }
- nomeGestioneErrore = "Soggetto("+idSoggettoProprietario+")_SA("+idServizioApplicativo+")_";
- if(tipoCRUD==1)
- nomeGestioneErrore = nomeGestioneErrore + "INV";
- else
- nomeGestioneErrore = nomeGestioneErrore + "RISP";
- }else if(tipoCRUD==3){
- // componente cooperazione
- nomeGestioneErrore = "componenteCooperazioneGestioneErroreDefaultPdD";
- }else if(tipoCRUD==4){
- // componente integrazione
- nomeGestioneErrore = "componenteIntegrazioneGestioneErroreDefaultPdD";
- }
- // updateNome
- gestioneErrore.setNome(nomeGestioneErrore);
- // Type
- int tipoOperazione = type;
- // Recupero id gestione errore se presente
- long idGestioneErroreChange = -1;
- if (type == CostantiDB.UPDATE){
- try{
- idGestioneErroreChange = getIdGestioneErrore(nomeGestioneErrore, con);
- }catch (Exception e) {
- throw new DriverConfigurazioneException(e.getMessage(),e);
- }
- if(idGestioneErroreChange<=0){
- tipoOperazione = CostantiDB.CREATE;
- }
- }
-
-
- PreparedStatement updateStmt = null;
- PreparedStatement selectStmt = null;
- String updateQuery = "";
- String selectQuery = "";
- ResultSet selectRS = null;
- int n = 0;
- try {
- // preparo lo statement in base al tipo di operazione
- switch (tipoOperazione) {
- case CREATE:
- // CREATE
- ISQLQueryObject sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addInsertTable(CostantiDB.GESTIONE_ERRORE);
- sqlQueryObject.addInsertField("comportamento_default", "?");
- sqlQueryObject.addInsertField("cadenza_rispedizione", "?");
- sqlQueryObject.addInsertField("nome", "?");
- updateQuery = sqlQueryObject.createSQLInsert();
- updateStmt = con.prepareStatement(updateQuery);
- updateStmt.setString(1, DriverConfigurazioneDBLib.getValue(gestioneErrore.getComportamento()));
- updateStmt.setString(2, gestioneErrore.getCadenzaRispedizione());
- updateStmt.setString(3, gestioneErrore.getNome());
- // eseguo lo statement
- n = updateStmt.executeUpdate();
- updateStmt.close();
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getComportamento(),gestioneErrore.getCadenzaRispedizione(),gestioneErrore.getNome()));
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore type = " + type + " row affected =" + n);
- // Recupero id
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addFromTable(CostantiDB.GESTIONE_ERRORE);
- sqlQueryObject.addSelectField("id");
- sqlQueryObject.addWhereCondition("nome = ?");
- selectQuery = sqlQueryObject.createSQLQuery();
- selectStmt = con.prepareStatement(selectQuery);
- selectStmt.setString(1, gestioneErrore.getNome());
- selectRS = selectStmt.executeQuery();
- if (selectRS.next()) {
- gestioneErrore.setId(selectRS.getLong("id"));
- }else{
- throw new Exception("id gestione errore non trovato dopo inserimento con nome ["+gestioneErrore.getNome()+"]");
- }
- selectRS.close();
- selectStmt.close();
-
- // Insert gestione errore trasporto
- for(int i=0; i<gestioneErrore.sizeCodiceTrasportoList(); i++){
- GestioneErroreCodiceTrasporto tr = gestioneErrore.getCodiceTrasporto(i);
-
- int valoreMassimo = -1;
- int valoreMinimo = -1;
- if(tr.getValoreMassimo()!=null){
- valoreMassimo = tr.getValoreMassimo().intValue();
- }
- if(tr.getValoreMinimo()!=null){
- valoreMinimo = tr.getValoreMinimo().intValue();
- }
-
-
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addInsertTable(CostantiDB.GESTIONE_ERRORE_TRASPORTO);
- sqlQueryObject.addInsertField("id_gestione_errore", "?");
- if(valoreMassimo>=0)
- sqlQueryObject.addInsertField("valore_massimo", "?");
- if(valoreMinimo>=0)
- sqlQueryObject.addInsertField("valore_minimo", "?");
- sqlQueryObject.addInsertField("comportamento", "?");
- sqlQueryObject.addInsertField("cadenza_rispedizione", "?");
- updateQuery = sqlQueryObject.createSQLInsert();
- updateStmt = con.prepareStatement(updateQuery);
- int index = 1;
- updateStmt.setLong(index, gestioneErrore.getId()); index++;
- if(valoreMassimo>=0){
- updateStmt.setInt(index, valoreMassimo); index++;
- }
- if(valoreMinimo>=0){
- updateStmt.setInt(index, valoreMinimo); index++;
- }
- updateStmt.setString(index, DriverConfigurazioneDBLib.getValue(tr.getComportamento())); index++;
- updateStmt.setString(index, tr.getCadenzaRispedizione()); index++;
- // eseguo lo statement
- n = updateStmt.executeUpdate();
- updateStmt.close();
-
- if(valoreMassimo>=0 && valoreMinimo>=0){
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_Trasporto("+i+") CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getId(),valoreMassimo,valoreMinimo,tr.getComportamento(),tr.getCadenzaRispedizione()));
- }else if(valoreMassimo>=0){
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_Trasporto("+i+") CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getId(),valoreMassimo,tr.getComportamento(),tr.getCadenzaRispedizione()));
- }else if(valoreMinimo>=0){
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_Trasporto("+i+") CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getId(),valoreMinimo,tr.getComportamento(),tr.getCadenzaRispedizione()));
- }else{
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_Trasporto("+i+") CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getId(),tr.getComportamento(),tr.getCadenzaRispedizione()));
- }
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_Trasporto("+i+") type = " + type + " row affected =" + n);
- }
-
- // Insert gestione errore SOAP FAULT
- for(int i=0; i<gestioneErrore.sizeSoapFaultList(); i++){
- GestioneErroreSoapFault sf = gestioneErrore.getSoapFault(i);
-
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addInsertTable(CostantiDB.GESTIONE_ERRORE_SOAP);
- sqlQueryObject.addInsertField("id_gestione_errore", "?");
- sqlQueryObject.addInsertField("fault_actor", "?");
- sqlQueryObject.addInsertField("fault_code", "?");
- sqlQueryObject.addInsertField("fault_string", "?");
- sqlQueryObject.addInsertField("comportamento", "?");
- sqlQueryObject.addInsertField("cadenza_rispedizione", "?");
- updateQuery = sqlQueryObject.createSQLInsert();
- updateStmt = con.prepareStatement(updateQuery);
- updateStmt.setLong(1, gestioneErrore.getId());
- updateStmt.setString(2, sf.getFaultActor());
- updateStmt.setString(3,sf.getFaultCode());
- updateStmt.setString(4,sf.getFaultString());
- updateStmt.setString(5,DriverConfigurazioneDBLib.getValue(sf.getComportamento()));
- updateStmt.setString(6, sf.getCadenzaRispedizione());
- // eseguo lo statement
- n = updateStmt.executeUpdate();
- updateStmt.close();
-
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_SoapFault("+i+") CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getId(),sf.getFaultActor(),sf.getFaultCode(),sf.getFaultString(),sf.getComportamento(),sf.getCadenzaRispedizione()));
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_SoapFault("+i+") type = " + type + " row affected =" + n);
- }
-
- break;
- case UPDATE:
-
- // UPDATE (ci entro solo se prima ho trovato un gestore errore inserito (idGestioneErroreChange) )
-
- // Set idGestionErrore
- gestioneErrore.setId(idGestioneErroreChange);
-
- // Update gestion errore
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addUpdateTable(CostantiDB.GESTIONE_ERRORE);
- sqlQueryObject.addUpdateField("comportamento_default", "?");
- sqlQueryObject.addUpdateField("cadenza_rispedizione", "?");
- sqlQueryObject.addWhereCondition("id=?");
- sqlQueryObject.setANDLogicOperator(true);
- updateQuery = sqlQueryObject.createSQLUpdate();
- updateStmt = con.prepareStatement(updateQuery);
-
- updateStmt.setString(1, DriverConfigurazioneDBLib.getValue(gestioneErrore.getComportamento()));
- updateStmt.setString(2, gestioneErrore.getCadenzaRispedizione());
- updateStmt.setLong(3, idGestioneErroreChange);
- n = updateStmt.executeUpdate();
- updateStmt.close();
-
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore UPDATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getComportamento(),gestioneErrore.getCadenzaRispedizione(),idGestioneErroreChange));
- DriverConfigurazioneDBLib.log.debug("CRUGestioneErrore type = " + type + " row affected =" + n);
-
- // Delete vecchie gestione errore trasporto
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addDeleteTable(CostantiDB.GESTIONE_ERRORE_TRASPORTO);
- sqlQueryObject.addWhereCondition("id_gestione_errore=?");
- updateQuery = sqlQueryObject.createSQLDelete();
- updateStmt = con.prepareStatement(updateQuery);
- updateStmt.setLong(1, idGestioneErroreChange);
- n = updateStmt.executeUpdate();
- updateStmt.close();
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore (Delete old trasporto) UPDATE : \n" + DBUtils.formatSQLString(updateQuery,
- idGestioneErroreChange));
- DriverConfigurazioneDBLib.log.debug("CRUGestioneErrore (Delete old trasporto) type = " + type + " row affected =" + n);
-
- // Delete vecchie gestione errore soap fault
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addDeleteTable(CostantiDB.GESTIONE_ERRORE_SOAP);
- sqlQueryObject.addWhereCondition("id_gestione_errore=?");
- updateQuery = sqlQueryObject.createSQLDelete();
- updateStmt = con.prepareStatement(updateQuery);
- updateStmt.setLong(1, idGestioneErroreChange);
- n = updateStmt.executeUpdate();
- updateStmt.close();
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore (Delete old soap fault) UPDATE : \n" + DBUtils.formatSQLString(updateQuery,
- idGestioneErroreChange));
- DriverConfigurazioneDBLib.log.debug("CRUGestioneErrore (Delete old soap fault) type = " + type + " row affected =" + n);
-
- // Insert gestione errore trasporto
- for(int i=0; i<gestioneErrore.sizeCodiceTrasportoList(); i++){
- GestioneErroreCodiceTrasporto tr = gestioneErrore.getCodiceTrasporto(i);
-
- int valoreMassimo = -1;
- int valoreMinimo = -1;
- if(tr.getValoreMassimo()!=null){
- valoreMassimo = tr.getValoreMassimo().intValue();
- }
- if(tr.getValoreMinimo()!=null){
- valoreMinimo = tr.getValoreMinimo().intValue();
- }
-
-
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addInsertTable(CostantiDB.GESTIONE_ERRORE_TRASPORTO);
- sqlQueryObject.addInsertField("id_gestione_errore", "?");
- if(valoreMassimo>=0)
- sqlQueryObject.addInsertField("valore_massimo", "?");
- if(valoreMinimo>=0)
- sqlQueryObject.addInsertField("valore_minimo", "?");
- sqlQueryObject.addInsertField("comportamento", "?");
- sqlQueryObject.addInsertField("cadenza_rispedizione", "?");
- updateQuery = sqlQueryObject.createSQLInsert();
- updateStmt = con.prepareStatement(updateQuery);
- int index = 1;
- updateStmt.setLong(index, gestioneErrore.getId()); index++;
- if(valoreMassimo>=0){
- updateStmt.setInt(index, valoreMassimo); index++;
- }
- if(valoreMinimo>=0){
- updateStmt.setInt(index, valoreMinimo); index++;
- }
- updateStmt.setString(index, DriverConfigurazioneDBLib.getValue(tr.getComportamento())); index++;
- updateStmt.setString(index, tr.getCadenzaRispedizione()); index++;
- // eseguo lo statement
- n = updateStmt.executeUpdate();
- updateStmt.close();
-
- if(valoreMassimo>=0 && valoreMinimo>=0){
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_Trasporto("+i+") CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getId(),valoreMassimo,valoreMinimo,tr.getComportamento(),tr.getCadenzaRispedizione()));
- }else if(valoreMassimo>=0){
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_Trasporto("+i+") CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getId(),valoreMassimo,tr.getComportamento(),tr.getCadenzaRispedizione()));
- }else if(valoreMinimo>=0){
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_Trasporto("+i+") CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getId(),valoreMinimo,tr.getComportamento(),tr.getCadenzaRispedizione()));
- }else{
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_Trasporto("+i+") CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getId(),tr.getComportamento(),tr.getCadenzaRispedizione()));
- }
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_Trasporto("+i+") type = " + type + " row affected =" + n);
- }
-
- // Insert gestione errore SOAP FAULT
- for(int i=0; i<gestioneErrore.sizeSoapFaultList(); i++){
- GestioneErroreSoapFault sf = gestioneErrore.getSoapFault(i);
-
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addInsertTable(CostantiDB.GESTIONE_ERRORE_SOAP);
- sqlQueryObject.addInsertField("id_gestione_errore", "?");
- sqlQueryObject.addInsertField("fault_actor", "?");
- sqlQueryObject.addInsertField("fault_code", "?");
- sqlQueryObject.addInsertField("fault_string", "?");
- sqlQueryObject.addInsertField("comportamento", "?");
- sqlQueryObject.addInsertField("cadenza_rispedizione", "?");
- updateQuery = sqlQueryObject.createSQLInsert();
- updateStmt = con.prepareStatement(updateQuery);
- updateStmt.setLong(1, gestioneErrore.getId());
- updateStmt.setString(2, sf.getFaultActor());
- updateStmt.setString(3,sf.getFaultCode());
- updateStmt.setString(4,sf.getFaultString());
- updateStmt.setString(5,DriverConfigurazioneDBLib.getValue(sf.getComportamento()));
- updateStmt.setString(6, sf.getCadenzaRispedizione());
- // eseguo lo statement
- n = updateStmt.executeUpdate();
- updateStmt.close();
-
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_SoapFault("+i+") CREATE : \n" + DBUtils.formatSQLString(updateQuery,
- gestioneErrore.getId(),sf.getFaultActor(),sf.getFaultCode(),sf.getFaultString(),sf.getComportamento(),sf.getCadenzaRispedizione()));
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore_SoapFault("+i+") type = " + type + " row affected =" + n);
- }
-
- break;
- case DELETE:
- // DELETE
-
- long idGestioneErrore = getIdGestioneErrore(nomeGestioneErrore, con);
-
- gestioneErrore.setId(idGestioneErrore);
-
- if(idGestioneErrore>0){
-
- // Delete gestione errore trasporto
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addDeleteTable(CostantiDB.GESTIONE_ERRORE_TRASPORTO);
- sqlQueryObject.addWhereCondition("id_gestione_errore=?");
- updateQuery = sqlQueryObject.createSQLDelete();
- updateStmt = con.prepareStatement(updateQuery);
- updateStmt.setLong(1, idGestioneErrore);
- n = updateStmt.executeUpdate();
- updateStmt.close();
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore (Delete trasporto) UPDATE : \n" + DBUtils.formatSQLString(updateQuery,
- idGestioneErrore));
- DriverConfigurazioneDBLib.log.debug("CRUGestioneErrore (Delete trasporto) type = " + type + " row affected =" + n);
-
- // Delete gestione errore soap fault
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addDeleteTable(CostantiDB.GESTIONE_ERRORE_SOAP);
- sqlQueryObject.addWhereCondition("id_gestione_errore=?");
- updateQuery = sqlQueryObject.createSQLDelete();
- updateStmt = con.prepareStatement(updateQuery);
- updateStmt.setLong(1, idGestioneErrore);
- n = updateStmt.executeUpdate();
- updateStmt.close();
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore (Delete soap fault) UPDATE : \n" + DBUtils.formatSQLString(updateQuery,
- idGestioneErrore));
- DriverConfigurazioneDBLib.log.debug("CRUGestioneErrore (Delete soap fault) type = " + type + " row affected =" + n);
- // Delete gestione errore
- sqlQueryObject = SQLObjectFactory.createSQLQueryObject(DriverConfigurazioneDBLib.tipoDB);
- sqlQueryObject.addDeleteTable(CostantiDB.GESTIONE_ERRORE);
- sqlQueryObject.addWhereCondition("id=?");
- updateQuery = sqlQueryObject.createSQLDelete();
- updateStmt = con.prepareStatement(updateQuery);
- updateStmt.setLong(1, idGestioneErrore);
- n = updateStmt.executeUpdate();
- updateStmt.close();
-
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore type = " + type + " row affected =" + n);
- DriverConfigurazioneDBLib.log.debug("CRUDGestioneErrore DELETE : \n" + DBUtils.formatSQLString(updateQuery,
- idGestioneErrore));
-
- }
- break;
- }
- return n;
- } catch (SQLException se) {
- throw new DriverConfigurazioneException("[DriverConfigurazioneDB_LIB::CRUDGestioneErrore] SQLException [" + se.getMessage() + "].",se);
- }catch (Exception se) {
- throw new DriverConfigurazioneException("[DriverConfigurazioneDB_LIB::CRUDGestioneErrore] Exception [" + se.getMessage() + "].",se);
- } finally {
- JDBCUtilities.closeResources(selectRS, selectStmt);
- JDBCUtilities.closeResources(updateStmt);
- }
- }
-
- }