Skip to content

Commit

Permalink
Corretta funzione per il conteggio delle righe del file tracciato csv.
Browse files Browse the repository at this point in the history
Gestito salvataggio degli eventi nel caso in cui viene lanciata un'eccezione dal framework spring e il contesto dell'evento non e' stato ancora creato.
  • Loading branch information
pintorig committed Aug 8, 2019
1 parent d7b3a77 commit eb671dd
Show file tree
Hide file tree
Showing 12 changed files with 90 additions and 61 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -49,4 +49,7 @@ Examples:
| promemoriaAvviso | { "oggetto": "Promemoria pagamento", "messaggio": "Devi pagare", "allegaPdf": "aaaaa" } |
| promemoriaRicevuta | { "oggetto": null, "messaggio": "Hai pagato", "allegaPdf": true } |
| promemoriaRicevuta | { "oggetto": "Promemoria pagamento eseguito", "messaggio": null, "allegaPdf": true } |
| promemoriaRicevuta | { "oggetto": "Promemoria pagamento eseguito", "messaggio": "Hai pagato", "allegaPdf": "aaaaa" } |
| promemoriaRicevuta | { "oggetto": "Promemoria pagamento eseguito", "messaggio": "Hai pagato", "allegaPdf": "aaaaa" } |
| tracciatoCsv | {"responseHeader": "idA2A,idPendenza,idDominio", "freemarkerRequest": null, "freemarkerResponse": "eyAidHlwZSI6ICJvYmplY3QiIH0=" } |
| tracciatoCsv | {"responseHeader": "idA2A,idPendenza,idDominio", "freemarkerRequest": "eyAidHlwZSI6ICJvYmplY3QiIH0=", "freemarkerResponse": null } |
| tracciatoCsv | {"responseHeader": null, "freemarkerRequest": "eyAidHlwZSI6ICJvYmplY3QiIH0=", "freemarkerResponse": "eyAidHlwZSI6ICJvYmplY3QiIH0=" } |
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ Background:
"inoltro": null,
"promemoriaAvviso": null,
"promemoriaRicevuta": null,
"visualizzazione": null
"visualizzazione": null,
"tracciatoCsv": null
}
"""

Expand All @@ -35,7 +36,8 @@ And request
form: null,
trasformazione: null,
validazione: null,
visualizzazione: null;
visualizzazione: null,
tracciatoCsv: null
}
"""
When method put
Expand Down Expand Up @@ -84,4 +86,4 @@ Examples:
| promemoriaRicevuta | { "tipo": "freemarker", "oggetto": "Promemoria pagamento eseguito", "messaggio": "Hai pagato", "allegaPdf": true } |
| promemoriaRicevuta | { "tipo": "freemarker", "oggetto": "Promemoria pagamento eseguito", "messaggio": "Hai pagato", "allegaPdf": false } |
| visualizzazione | "eyAidHlwZSI6ICJvYmplY3QiIH0=" |
| visualizzazione | null |
| tracciatoCsv | {"responseHeader": "idA2A,idPendenza,idDominio", "freemarkerRequest": "eyAidHlwZSI6ICJvYmplY3QiIH0=", "freemarkerResponse": "eyAidHlwZSI6ICJvYmplY3QiIH0=" } |
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,10 @@ Background:
pagaTerzi: true,
form: null,
trasformazione: null,
validazione: null
validazione: null,
promemoriaAvviso: null,
promemoriaRicevuta: null,
tracciatoCsv: null
}
"""

Expand Down Expand Up @@ -56,6 +59,9 @@ Examples:
| promemoriaRicevuta | { "oggetto": null, "messaggio": "Hai pagato", "allegaPdf": true } |
| promemoriaRicevuta | { "oggetto": "Promemoria pagamento eseguito", "messaggio": null, "allegaPdf": true } |
| promemoriaRicevuta | { "oggetto": "Promemoria pagamento eseguito", "messaggio": "Hai pagato", "allegaPdf": "aaaaa" } |
| tracciatoCsv | {"responseHeader": "idA2A,idPendenza,idDominio", "freemarkerRequest": null, "freemarkerResponse": "eyAidHlwZSI6ICJvYmplY3QiIH0=" } |
| tracciatoCsv | {"responseHeader": "idA2A,idPendenza,idDominio", "freemarkerRequest": "eyAidHlwZSI6ICJvYmplY3QiIH0=", "freemarkerResponse": null } |
| tracciatoCsv | {"responseHeader": null, "freemarkerRequest": "eyAidHlwZSI6ICJvYmplY3QiIH0=", "freemarkerResponse": "eyAidHlwZSI6ICJvYmplY3QiIH0=" } |


Scenario: Sintassi errata nel campo (idTipoEntrata)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,20 @@ Background:
definizione: null
},
validazione: null,
visualizzazione: null;
visualizzazione: null,
tracciatoCsv: {
responseHeader: "idA2A,idPendenza,idDominio",
freemarkerRequest: null,
freemarkerResponse: null
}
}
"""
* set tipoPendenza.form.definizione = encodeBase64InputStream(read('msg/tipoPendenza-dovuta-form.json.payload'))
* set tipoPendenza.trasformazione.definizione = encodeBase64InputStream(read('msg/tipoPendenza-dovuta-freemarker.ftl'))
* set tipoPendenza.validazione = encodeBase64InputStream(read('msg/tipoPendenza-dovuta-validazione-form.json'))
* set tipoPendenza.visualizzazione = encodeBase64InputStream(read('msg/tipoPendenza-dovuta-visualizzazione.json.payload'))
* set tipoPendenza.tracciatoCsv.freemarkerRequest = encodeBase64InputStream(read('msg/tracciato-csv-freemarker-request.ftl'))
* set tipoPendenza.tracciatoCsv.freemarkerResponse = encodeBase64InputStream(read('msg/tracciato-csv-freemarker-response.ftl'))

Scenario: Aggiunta di un tipoPendenza

Expand Down Expand Up @@ -80,3 +87,4 @@ Examples:
| promemoriaRicevuta | { "tipo": "freemarker", "oggetto": "Promemoria pagamento eseguito", "messaggio": "Hai pagato", "allegaPdf": false } |
| promemoriaRicevuta | null |
| visualizzazione | null |
| tracciatoCsv | null |
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
idA2A,idPendenza,idDominio,tipoPendenza,idUnitaOperativa,causale,annoRiferimento,cartellaPagamento,datiAllegati,direzione,divisione,importo,dataValidita,dataScadenza,tassonomiaAvviso,tipoSoggettoPagatore,identificativoPagatore,anagraficaPagatore,indirizzoPagatore,civicoPagatore,capPagatore,localitaPagatore,provinciaPagatore,nazionePagatore,emailPagatore,cellularePagatore,idVoce1,importoVoce1,descrizioneVoce1,ibanAccreditoVoce1,ibanAppoggioVoce1,tipoContabilitaVoce1,codiceContabilitaVoce1,tipoVoce1,idVoce2,importoVoce2,descrizioneVoce2,ibanAccreditoVoce2,ibanAppoggioVoce2,tipoContabilitaVoce2,codiceContabilitaVoce2,tipoVoce2,idVoce3,importoVoce3,descrizioneVoce3,ibanAccreditoVoce3,ibanAppoggioVoce3,tipoContabilitaVoce3,codiceContabilitaVoce3,tipoVoce3,idVoce4,importoVoce4,descrizioneVoce4,ibanAccreditoVoce4,ibanAppoggioVoce4,tipoContabilitaVoce4,codiceContabilitaVoce4,tipoVoce4,idVoce5,importoVoce5,descrizioneVoce5,ibanAccreditoVoce5,ibanAppoggioVoce5,tipoContabilitaVoce5,codiceContabilitaVoce5,tipoVoce5
{idA2A},{idPendenza},{idDominio},{tipoPendenza},,Tassa Passo Carrabile n. abc00000,2010,CRT-001,"{ ""foo"": ""baz"", ""bar"": true }",,,{importo},2019-12-30,2020-12-30,Servizi erogati da altri enti,F,DRCGNN12A46A326K,Giovanna D'Arco,Viale Monterosa,11Bis,340,Roma,RM,IT,laPulzelladOrleans@yahoo.fr,,1,{importo_voce},Tassa Passo Carrabile n. abc00000,{ibanAccredito},,ALTRO,CodiceContabilita,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
{idA2A_p2},{idPendenza_p2},{idDominio_p2},{tipoPendenza_p2},,Tassa Passo Carrabile n. abc00000,2010,CRT-001,"{ ""foo"": ""baz"", ""bar"": true }",,,{importo_p2},2019-12-30,2020-12-30,Servizi erogati da altri enti,F,DRCGNN12A46A326K,Giovanna D'Arco,Viale Monterosa,11Bis,340,Roma,RM,IT,laPulzelladOrleans@yahoo.fr,,1,{importo_voce_p2},Tassa Passo Carrabile n. abc00000,{ibanAccredito_p2},,ALTRO,CodiceContabilita,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
{idA2A_p2},{idPendenza_p2},{idDominio_p2},{tipoPendenza_p2},,Tassa Passo Carrabile n. abc00000,2010,CRT-001,"{ ""foo"": ""baz"", ""bar"": true }",,,{importo_p2},2019-12-30,2020-12-30,Servizi erogati da altri enti,F,DRCGNN12A46A326K,Giovanna D'Arco,Viale Monterosa,11Bis,340,Roma,RM,IT,laPulzelladOrleans@yahoo.fr,,1,{importo_voce_p2},Tassa Passo Carrabile n. abc00000,{ibanAccredito_p2},,ALTRO,CodiceContabilita,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
idA2A,idPendenza,idDominio,tipoPendenza,idUnitaOperativa,causale,annoRiferimento,cartellaPagamento,datiAllegati,direzione,divisione,importo,dataValidita,dataScadenza,tassonomiaAvviso,tipoSoggettoPagatore,identificativoPagatore,anagraficaPagatore,indirizzoPagatore,civicoPagatore,capPagatore,localitaPagatore,provinciaPagatore,nazionePagatore,emailPagatore,cellularePagatore,idVoce1,importoVoce1,descrizioneVoce1,ibanAccreditoVoce1,ibanAppoggioVoce1,tipoContabilitaVoce1,codiceContabilitaVoce1,tipoVoce1,idVoce2,importoVoce2,descrizioneVoce2,ibanAccreditoVoce2,ibanAppoggioVoce2,tipoContabilitaVoce2,codiceContabilitaVoce2,tipoVoce2,idVoce3,importoVoce3,descrizioneVoce3,ibanAccreditoVoce3,ibanAppoggioVoce3,tipoContabilitaVoce3,codiceContabilitaVoce3,tipoVoce3,idVoce4,importoVoce4,descrizioneVoce4,ibanAccreditoVoce4,ibanAppoggioVoce4,tipoContabilitaVoce4,codiceContabilitaVoce4,tipoVoce4,idVoce5,importoVoce5,descrizioneVoce5,ibanAccreditoVoce5,ibanAppoggioVoce5,tipoContabilitaVoce5,codiceContabilitaVoce5,tipoVoce5
{idA2A},{idPendenza},{idDominio},{tipoPendenza},,Tassa Passo Carrabile n. abc00000,2010,CRT-001,"{ ""foo"": ""baz"", ""bar"": true }",,,{importo},2019-12-30,2020-12-30,Servizi erogati da altri enti,F,DRCGNN12A46A326K,Giovanna D'Arco,Viale Monterosa,11Bis,340,Roma,RM,IT,laPulzelladOrleans@yahoo.fr,,1,{importo_voce},Tassa Passo Carrabile n. abc00000,{ibanAccredito},,ALTRO,CodiceContabilita,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
{idA2A},{idPendenza},{idDominio},{tipoPendenza},,Tassa Passo Carrabile n. abc00000,2010,CRT-001,"{ ""foo"": ""baz"", ""bar"": true }",,,{importo},2019-12-30,2020-12-30,Servizi erogati da altri enti,F,DRCGNN12A46A326K,Giovanna D'Arco,Viale Monterosa,11Bis,340,Roma,RM,IT,laPulzelladOrleans@yahoo.fr,,1,{importo_voce},Tassa Passo Carrabile n. abc00000,{ibanAccredito},,ALTRO,CodiceContabilita,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
import org.apache.cxf.io.CachedOutputStreamCallback;
import org.apache.cxf.message.Exchange;
import org.apache.cxf.message.Message;
import org.openspcoop2.generic_project.exception.ServiceException;
import org.openspcoop2.utils.LoggerWrapperFactory;
import org.openspcoop2.utils.service.beans.HttpMethodEnum;
import org.openspcoop2.utils.service.context.ContextThreadLocal;
Expand All @@ -26,10 +25,8 @@
import it.govpay.bd.model.eventi.DettaglioRichiesta;
import it.govpay.bd.model.eventi.DettaglioRisposta;
import it.govpay.core.dao.configurazione.ConfigurazioneDAO;
import it.govpay.core.dao.configurazione.exception.ConfigurazioneNonTrovataException;
import it.govpay.core.exceptions.NotAuthenticatedException;
import it.govpay.core.exceptions.NotAuthorizedException;
import it.govpay.core.utils.EventoContext;
import it.govpay.core.utils.EventoContext.Esito;
import it.govpay.core.utils.GpContext;

public class GiornaleEventiCollectorOutInterceptor extends org.apache.cxf.ext.logging.LoggingOutInterceptor {
Expand All @@ -46,6 +43,10 @@ public GiornaleEventiCollectorOutInterceptor() {

@Override
public void handleMessage(Message message) throws Fault {
String url = null;
String httpMethodS = null;
String principal = null;
Esito esito = null;
try {
if(this.giornaleEventiConfig.isAbilitaGiornaleEventi()) {
boolean logEvento = false;
Expand All @@ -58,25 +59,26 @@ public void handleMessage(Message message) throws Fault {

Message inMessage = exchange.getInMessage();
final LogEvent eventRequest = new DefaultLogEventMapper().map(inMessage);
String url = eventoCtx.getUrl() != null ? eventoCtx.getUrl() : eventRequest.getAddress();
String httpMethodS = eventoCtx.getMethod() != null ? eventoCtx.getMethod() : eventRequest.getHttpMethod();
String principal = eventoCtx.getPrincipal()!= null ? eventoCtx.getPrincipal() : eventRequest.getPrincipal();
url = eventoCtx.getUrl() != null ? eventoCtx.getUrl() : eventRequest.getAddress();
httpMethodS = eventoCtx.getMethod() != null ? eventoCtx.getMethod() : eventRequest.getHttpMethod();
principal = eventoCtx.getPrincipal()!= null ? eventoCtx.getPrincipal() : eventRequest.getPrincipal();

HttpMethodEnum httpMethod = GiornaleEventiUtilities.getHttpMethod(httpMethodS);
esito = eventoCtx.getEsito() != null ? eventoCtx.getEsito() : Esito.KO;

this.log.debug("Log Evento API: ["+this.giornaleEventiConfig.getApiName()+"] Method ["+httpMethodS+"], Url ["+url+"], Esito ["+eventoCtx.getEsito()+"]");
this.log.debug("Log Evento API: ["+this.giornaleEventiConfig.getApiName()+"] Method ["+httpMethodS+"], Url ["+url+"], Esito ["+esito+"]");

GdeInterfaccia configurazioneInterfaccia = GiornaleEventiUtilities.getConfigurazioneGiornaleEventi(context, this.configurazioneDAO, this.giornaleEventiConfig);

if(configurazioneInterfaccia != null) {
if(GiornaleEventiUtilities.isRequestLettura(httpMethod)) {
logEvento = GiornaleEventiUtilities.logEvento(configurazioneInterfaccia.getLetture(), eventoCtx.getEsito());
dumpEvento = GiornaleEventiUtilities.dumpEvento(configurazioneInterfaccia.getLetture(), eventoCtx.getEsito());
logEvento = GiornaleEventiUtilities.logEvento(configurazioneInterfaccia.getLetture(), esito);
dumpEvento = GiornaleEventiUtilities.dumpEvento(configurazioneInterfaccia.getLetture(), esito);
}

if(GiornaleEventiUtilities.isRequestScrittura(httpMethod)) {
logEvento = GiornaleEventiUtilities.logEvento(configurazioneInterfaccia.getScritture(), eventoCtx.getEsito());
dumpEvento = GiornaleEventiUtilities.dumpEvento(configurazioneInterfaccia.getScritture(), eventoCtx.getEsito());
logEvento = GiornaleEventiUtilities.logEvento(configurazioneInterfaccia.getScritture(), esito);
dumpEvento = GiornaleEventiUtilities.dumpEvento(configurazioneInterfaccia.getScritture(), esito);
}

eventoCtx.setRegistraEvento(logEvento);
Expand Down Expand Up @@ -127,13 +129,7 @@ public void handleMessage(Message message) throws Fault {
this.log.warn("La configurazione per l'API ["+this.giornaleEventiConfig.getApiName()+"] non e' corretta, salvataggio evento non eseguito.");
}
}
} catch (ConfigurazioneNonTrovataException e) {
this.log.error(e.getMessage(),e);
} catch (NotAuthorizedException e) {
this.log.error(e.getMessage(),e);
} catch (NotAuthenticatedException e) {
this.log.error(e.getMessage(),e);
} catch (ServiceException e) {
} catch (Throwable e) {
this.log.error(e.getMessage(),e);
} finally {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import org.apache.cxf.message.Message;
import org.apache.cxf.phase.AbstractPhaseInterceptor;
import org.apache.cxf.phase.Phase;
import org.openspcoop2.generic_project.exception.ServiceException;
import org.openspcoop2.utils.LoggerWrapperFactory;
import org.openspcoop2.utils.service.context.ContextThreadLocal;
import org.openspcoop2.utils.service.context.IContext;
Expand All @@ -22,8 +21,6 @@
import it.govpay.core.beans.Costanti;
import it.govpay.core.dao.eventi.EventiDAO;
import it.govpay.core.dao.eventi.dto.PutEventoDTO;
import it.govpay.core.exceptions.NotAuthenticatedException;
import it.govpay.core.exceptions.NotAuthorizedException;
import it.govpay.core.utils.EventoContext;
import it.govpay.core.utils.EventoContext.Componente;
import it.govpay.core.utils.GpContext;
Expand All @@ -41,6 +38,8 @@ public GiornaleEventiOutInterceptor() {

@Override
public void handleMessage(Message message) throws Fault {
String url = null;
String httpMethodS = null;
try {
if(this.giornaleEventiConfig.isAbilitaGiornaleEventi()) {
IContext context = ContextThreadLocal.get();
Expand All @@ -50,8 +49,8 @@ public void handleMessage(Message message) throws Fault {
Exchange exchange = message.getExchange();
Message inMessage = exchange.getInMessage();
final LogEvent eventRequest = new DefaultLogEventMapper().map(inMessage);
String url = eventoCtx.getUrl() != null ? eventoCtx.getUrl() : eventRequest.getAddress();
String httpMethodS = eventoCtx.getMethod() != null ? eventoCtx.getMethod() : eventRequest.getHttpMethod();
url = eventoCtx.getUrl() != null ? eventoCtx.getUrl() : eventRequest.getAddress();
httpMethodS = eventoCtx.getMethod() != null ? eventoCtx.getMethod() : eventRequest.getHttpMethod();
Date dataUscita = new Date();

Integer responseCode = 200;
Expand Down Expand Up @@ -94,11 +93,7 @@ public void handleMessage(Message message) throws Fault {
this.eventiDAO.inserisciEvento(putEventoDTO);
}
}
} catch (NotAuthorizedException e) {
this.log.error(e.getMessage(),e);
} catch (NotAuthenticatedException e) {
this.log.error(e.getMessage(),e);
} catch (ServiceException e) {
} catch (Throwable e) {
this.log.error(e.getMessage(),e);
} finally {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ public static synchronized boolean getEseguiGenerazioneAvvisi() {
return eseguiGenerazioneAvvisi;
}

private static boolean eseguiElaborazioneTracciati;
private static boolean eseguiElaborazioneTracciati = true;

public static synchronized void setEseguiElaborazioneTracciati() {
eseguiElaborazioneTracciati = true;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -311,7 +311,7 @@ private void _elaboraTracciatoCSV(TracciatiBD tracciatiBD, Tracciato tracciato,
beanDati.setStepElaborazione(StatoTracciatoType.IN_CARICAMENTO.getValue());
beanDati.setLineaElaborazioneAdd(1); // skip intestazione file csv
beanDati.setLineaElaborazioneDel(0);
long numLines = rawRichiesta != null ? CSVUtils.countLines(rawRichiesta) : 0;
long numLines = rawRichiesta != null ? CSVUtils.countLines2(rawRichiesta) : 0;
log.debug("Numero linee totali compresa intestazione ["+numLines+"]");
beanDati.setNumAddTotali(numLines > 0 ? (numLines -1) : 0);
beanDati.setNumDelTotali(0);
Expand Down
59 changes: 39 additions & 20 deletions jars/core/src/main/java/it/govpay/core/utils/CSVUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,16 +17,16 @@
import org.apache.commons.csv.CSVRecord;

public class CSVUtils {

private static CSVUtils instance;

public static CSVUtils getInstance () {
if(CSVUtils.instance == null)
CSVUtils.instance = new CSVUtils();

return CSVUtils.instance;
}

public static long countLines(byte[] tracciato) throws IOException {
InputStream is = new BufferedInputStream(new ByteArrayInputStream(tracciato));
try {
Expand All @@ -47,26 +47,45 @@ public static long countLines(byte[] tracciato) throws IOException {
is.close();
}
}


public static long countLines2(byte[] tracciato) throws IOException {
try (ByteArrayInputStream in = new ByteArrayInputStream(tracciato);
InputStreamReader isr = new InputStreamReader(in);
BufferedReader br = new BufferedReader(isr);
){
int lines = 0;
while (br.readLine() != null) {
lines++;
}
return lines;
} finally {
}
}

public static List<byte[]> splitCSV(byte[] tracciato, long skip) throws IOException {

ByteArrayInputStream in = new ByteArrayInputStream(tracciato);
InputStreamReader isr = new InputStreamReader(in);
BufferedReader br = new BufferedReader(isr);
// ByteArrayInputStream in = new ByteArrayInputStream(tracciato);
// InputStreamReader isr = new InputStreamReader(in);
// BufferedReader br = new BufferedReader(isr);

List<byte[]> lst = new ArrayList<byte[]>();

while(br.ready()) {
if(skip > 0) {
br.readLine();
skip--;
} else {
lst.add(br.readLine().getBytes());
try (ByteArrayInputStream in = new ByteArrayInputStream(tracciato);
InputStreamReader isr = new InputStreamReader(in);
BufferedReader br = new BufferedReader(isr);
){
while(br.ready()) {
if(skip > 0) {
br.readLine();
skip--;
} else {
lst.add(br.readLine().getBytes());
}
}
return lst;
} finally {
}
return lst;
}

public static CSVRecord getCSVRecord(String csvEntry) {
try {
CSVParser p = CSVParser.parse(csvEntry, CSVFormat.RFC4180);
Expand All @@ -75,22 +94,22 @@ public static CSVRecord getCSVRecord(String csvEntry) {
return null;
}
}

public static boolean isEmpty(CSVRecord record, int position) {
try {
return record.get(position).isEmpty();
} catch (Throwable t) {
return true;
}
}

public static String toJsonValue(CSVRecord record, int position) {
if(isEmpty(record, position))
return "null";
else
return "\"" + record.get(position) + "\"";
}

public static String toCsv(String ...strings) throws IOException {
StringWriter writer = new StringWriter();
CSVPrinter printer = new CSVPrinter(writer, CSVFormat.RFC4180);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,10 @@ public AbstractTask(Logger log, String name) {

public void exec() {
try {
this.log.debug("Execuzione task ["+this.name+"] ...");
this.log.trace("Execuzione task ["+this.name+"] ...");
IContext ctx = this.initBatchContext();
execTask(ctx);
this.log.debug("Execuzione task ["+this.name+"] completata con successo");
this.log.trace("Execuzione task ["+this.name+"] completata con successo");
} catch(Throwable e) {
this.log.error("Execuzione task ["+this.name+"] completata con errore: " + e.getMessage(), e);
} finally {
Expand Down

0 comments on commit eb671dd

Please sign in to comment.