TrasparenteProtocolManager.java

  1. /*
  2.  * GovWay - A customizable API Gateway
  3.  * https://govway.org
  4.  *
  5.  * Copyright (c) 2005-2025 Link.it srl (https://link.it).
  6.  *
  7.  * This program is free software: you can redistribute it and/or modify
  8.  * it under the terms of the GNU General Public License version 3, as published by
  9.  * the Free Software Foundation.
  10.  *
  11.  * This program is distributed in the hope that it will be useful,
  12.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14.  * GNU General Public License for more details.
  15.  *
  16.  * You should have received a copy of the GNU General Public License
  17.  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  18.  *
  19.  */


  20. package org.openspcoop2.protocol.trasparente.config;

  21. import org.slf4j.Logger;
  22. import org.openspcoop2.protocol.basic.config.BasicManager;
  23. import org.openspcoop2.protocol.sdk.IProtocolFactory;
  24. import org.openspcoop2.protocol.sdk.ProtocolException;
  25. import org.openspcoop2.protocol.sdk.constants.FaultIntegrationGenericInfoMode;
  26. import org.openspcoop2.utils.BooleanNullable;

  27. /**
  28.  * Classe che implementa, in base al protocollo Trasparente, l'interfaccia {@link org.openspcoop2.protocol.sdk.config.IProtocolManager}
  29.  *
  30.  * @author Poli Andrea (apoli@link.it)
  31.  * @author Nardi Lorenzo (nardi@link.it)
  32.  * @author $Author$
  33.  * @version $Rev$, $Date$
  34.  */
  35. public class TrasparenteProtocolManager extends BasicManager {
  36.    
  37.     protected TrasparenteProperties trasparenteProperties = null;
  38.     protected Logger logger = null;
  39.     public TrasparenteProtocolManager(IProtocolFactory<?> protocolFactory) throws ProtocolException{
  40.         super(protocolFactory);
  41.         this.logger = this.getProtocolFactory().getLogger();
  42.         this.trasparenteProperties = TrasparenteProperties.getInstance();
  43.     }
  44.    
  45.    
  46.    
  47.     /* *********** VALIDAZIONE/GENERAZIONE BUSTE ******************* */
  48.    
  49.     @Override
  50.     public boolean isGenerazioneListaEccezioniErroreProcessamento(){
  51.         return true; // l'eccezione viene utilizzata per produrre un errore applicativo e/o per impostare un codice nel soap fault
  52.     }
  53.    
  54.    
  55.    
  56.     /* *********** Fault della Porta (Protocollo, Porta Applicativa) ******************* */
  57.    
  58.     @Override
  59.     public boolean isGenerazioneDetailsFaultProtocollo_EccezioneValidazione(){
  60.         return this.trasparenteProperties.isGenerazioneDetailsSOAPFaultProtocolValidazione();
  61.     }
  62.    
  63.     @Override
  64.     public boolean isGenerazioneDetailsFaultProtocollo_EccezioneProcessamento(){
  65.         return this.trasparenteProperties.isGenerazioneDetailsSOAPFaultProtocolProcessamento();
  66.     }
  67.        
  68.     @Override
  69.     public boolean isGenerazioneDetailsFaultProtocolloConStackTrace(){
  70.         return this.trasparenteProperties.isGenerazioneDetailsSOAPFaultProtocolWithStackTrace();
  71.     }
  72.    
  73.     @Override
  74.     public boolean isGenerazioneDetailsFaultProtocolloConInformazioniGeneriche(){
  75.         return this.trasparenteProperties.isGenerazioneDetailsSOAPFaultProtocolConInformazioniGeneriche();
  76.     }
  77.    
  78.    
  79.    
  80.     /* *********** Fault della Porta (Integrazione, Porta Delegata) ******************* */
  81.    
  82.     @Override
  83.     public boolean isGenerazioneDetailsFaultIntegratione_erroreServer(){
  84.         return this.trasparenteProperties.isGenerazioneDetailsSOAPFaultIntegrationServerError();
  85.     }
  86.    
  87.     @Override
  88.     public boolean isGenerazioneDetailsFaultIntegratione_erroreClient(){
  89.         return this.trasparenteProperties.isGenerazioneDetailsSOAPFaultIntegrationClientError();
  90.     }
  91.    
  92.     @Override
  93.     public boolean isGenerazioneDetailsFaultIntegrationeConStackTrace(){
  94.         return this.trasparenteProperties.isGenerazioneDetailsSOAPFaultIntegrationWithStackTrace();
  95.     }
  96.    
  97.     @Override
  98.     public FaultIntegrationGenericInfoMode getModalitaGenerazioneInformazioniGeneriche_DetailsFaultIntegrazione(){
  99.         Boolean value = this.trasparenteProperties.isGenerazioneDetailsSOAPFaultIntegrazionConInformazioniGeneriche();
  100.         if(value==null){
  101.             return FaultIntegrationGenericInfoMode.SERVIZIO_APPLICATIVO;
  102.         }
  103.         else if(value){
  104.             return FaultIntegrationGenericInfoMode.ABILITATO;
  105.         }else{
  106.             return FaultIntegrationGenericInfoMode.DISABILITATO;
  107.         }
  108.     }
  109.    
  110.    
  111.    
  112.     /* *********** SOAP Fault della Porta (Generati dagli attori esterni) ******************* */
  113.    
  114.     @Override
  115.     public BooleanNullable isAggiungiDetailErroreApplicativo_FaultApplicativo() {
  116.         return this.trasparenteProperties.isAggiungiDetailErroreApplicativo_SoapFaultApplicativo();
  117.     }

  118.     @Override
  119.     public BooleanNullable isAggiungiDetailErroreApplicativo_FaultPdD() {
  120.         return this.trasparenteProperties.isAggiungiDetailErroreApplicativo_SoapFaultPdD();
  121.     }
  122.    
  123. }