ConfigurazionePdD.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.pdd.core.jmx;

  21. import java.sql.Connection;
  22. import java.util.ArrayList;
  23. import java.util.Iterator;
  24. import java.util.List;

  25. import javax.management.Attribute;
  26. import javax.management.AttributeList;
  27. import javax.management.AttributeNotFoundException;
  28. import javax.management.DynamicMBean;
  29. import javax.management.InvalidAttributeValueException;
  30. import javax.management.JMException;
  31. import javax.management.MBeanAttributeInfo;
  32. import javax.management.MBeanConstructorInfo;
  33. import javax.management.MBeanException;
  34. import javax.management.MBeanInfo;
  35. import javax.management.MBeanOperationInfo;
  36. import javax.management.MBeanParameterInfo;
  37. import javax.management.NotificationBroadcasterSupport;
  38. import javax.management.ReflectionException;

  39. import org.openspcoop2.core.commons.CoreException;
  40. import org.openspcoop2.core.config.MessaggiDiagnostici;
  41. import org.openspcoop2.core.config.OpenspcoopAppender;
  42. import org.openspcoop2.core.config.PortaApplicativa;
  43. import org.openspcoop2.core.config.PortaApplicativaServizioApplicativo;
  44. import org.openspcoop2.core.config.Tracciamento;
  45. import org.openspcoop2.core.config.constants.CostantiConfigurazione;
  46. import org.openspcoop2.core.config.constants.StatoFunzionalita;
  47. import org.openspcoop2.core.id.IDPortaApplicativa;
  48. import org.openspcoop2.core.id.IDPortaDelegata;
  49. import org.openspcoop2.core.id.IDServizioApplicativo;
  50. import org.openspcoop2.core.id.IDSoggetto;
  51. import org.openspcoop2.pdd.config.ConfigurazionePdDManager;
  52. import org.openspcoop2.pdd.config.ConfigurazionePdDReader;
  53. import org.openspcoop2.pdd.config.DBManager;
  54. import org.openspcoop2.pdd.config.Resource;
  55. import org.openspcoop2.pdd.core.GestoreMessaggi;
  56. import org.openspcoop2.pdd.core.cache.GestoreCacheCleaner;
  57. import org.openspcoop2.pdd.core.connettori.ConnettoreCheck;
  58. import org.openspcoop2.pdd.logger.LogLevels;
  59. import org.openspcoop2.pdd.logger.OpenSPCoop2Logger;
  60. import org.openspcoop2.pdd.logger.filetrace.FileTraceConfig;
  61. import org.openspcoop2.pdd.timers.TimerClusterDinamicoThread;
  62. import org.openspcoop2.pdd.timers.TimerConsegnaContenutiApplicativi;
  63. import org.openspcoop2.pdd.timers.TimerConsegnaContenutiApplicativiThread;
  64. import org.openspcoop2.pdd.timers.TimerEventiThread;
  65. import org.openspcoop2.pdd.timers.TimerFileSystemRecoveryThread;
  66. import org.openspcoop2.pdd.timers.TimerGestoreBusteNonRiscontrate;
  67. import org.openspcoop2.pdd.timers.TimerGestoreBusteNonRiscontrateLib;
  68. import org.openspcoop2.pdd.timers.TimerGestoreMessaggi;
  69. import org.openspcoop2.pdd.timers.TimerGestoreMessaggiLib;
  70. import org.openspcoop2.pdd.timers.TimerGestorePuliziaMessaggiAnomali;
  71. import org.openspcoop2.pdd.timers.TimerGestorePuliziaMessaggiAnomaliLib;
  72. import org.openspcoop2.pdd.timers.TimerGestoreRepositoryBuste;
  73. import org.openspcoop2.pdd.timers.TimerGestoreRepositoryBusteLib;
  74. import org.openspcoop2.pdd.timers.TimerMonitoraggioRisorseThread;
  75. import org.openspcoop2.pdd.timers.TimerRepositoryStatefulThread;
  76. import org.openspcoop2.pdd.timers.TimerState;
  77. import org.openspcoop2.pdd.timers.TimerStatisticheLib;
  78. import org.openspcoop2.pdd.timers.TimerStatisticheThread;
  79. import org.openspcoop2.pdd.timers.TimerThresholdThread;
  80. import org.openspcoop2.pdd.timers.pdnd.TimerGestoreCacheChiaviPDND;
  81. import org.openspcoop2.pdd.timers.pdnd.TimerGestoreCacheChiaviPDNDLib;
  82. import org.openspcoop2.pdd.timers.pdnd.TimerGestoreChiaviPDND;
  83. import org.openspcoop2.pdd.timers.pdnd.TimerGestoreChiaviPDNDLib;
  84. import org.openspcoop2.pdd.timers.proxy.TimerGestoreOperazioniRemoteLib;
  85. import org.openspcoop2.pdd.timers.proxy.TimerSvecchiamentoOperazioniRemoteLib;
  86. import org.openspcoop2.protocol.basic.Costanti;
  87. import org.openspcoop2.protocol.registry.CertificateCheck;
  88. import org.openspcoop2.protocol.utils.ErroriProperties;
  89. import org.openspcoop2.utils.resources.Loader;
  90. import org.slf4j.Logger;


  91. /**
  92.  * Implementazione JMX per la gestione della Configurazione di OpenSPCoop
  93.  *  
  94.  * @author Poli Andrea (apoli@link.it)
  95.  * @author $Author$
  96.  * @version $Rev$, $Date$
  97.  */
  98. public class ConfigurazionePdD extends NotificationBroadcasterSupport implements DynamicMBean {

  99.     /** Nomi proprieta' */
  100.     public static final String MSG_DIAGNOSTICI_SEVERITA_LIVELLO = "msgDiagnosticiLivelloSeverita";
  101.     public static final String MSG_DIAGNOSTICI_SEVERITA_LIVELLO_LOG4J = "msgDiagnosticiLivelloSeveritaLog4J";
  102.     public static final String MSG_DIAGNOSTICI_APPENDER = "msgDiagnosticiAppender";
  103.     public static final String TRACCIAMENTO_ABILITATO = "tracciamentoAbilitato";
  104.     public static final String DUMP_BINARIO_PD_ABILITATO = "dumpBinarioPortaDelegataAbilitato";
  105.     public static final String DUMP_BINARIO_PA_ABILITATO = "dumpBinarioPortaApplicativaAbilitato";
  106.     public static final String TRACCIAMENTO_APPENDER = "tracciamentoAppender";
  107.     public static final String LOG4J_DIAGNOSTICA_ABILITATO = "log4jLogFileDiagnosticaAbilitato";
  108.     public static final String LOG4J_OPENSPCOOP_ABILITATO = "log4jLogFileOpenSPCoopAbilitato";
  109.     public static final String LOG4J_INTEGRATION_MANAGER_ABILITATO = "log4jLogFileIntegrationManagerAbilitato";
  110.     public static final String LOG4J_TRACCIAMENTO_ABILITATO = "log4jLogFileTracciamentoAbilitato";
  111.     public static final String LOG4J_DUMP_ABILITATO = "log4jLogFileDumpAbilitato";
  112.     public static final String ERRORI_STATUS_CODE_ABILITATO = "transactionErrorStatusAbilitato";
  113.     public static final String ERRORI_INSTANCE_ID_ABILITATO = "transactionErrorInstanceIdAbilitato";
  114.     public static final String ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_BAD_REQUEST = "transactionErrorForceSpecificTypeInternalBadRequest";
  115.     public static final String ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_BAD_RESPONSE = "transactionErrorForceSpecificTypeBadResponse";
  116.     public static final String ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_RESPONSE_ERROR = "transactionErrorForceSpecificTypeInternalResponseError";
  117.     public static final String ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_ERROR= "transactionErrorForceSpecificTypeInternalError";
  118.     public static final String ERRORI_FORCE_SPECIFIC_DETAILS = "transactionErrorForceSpecificDetails";
  119.     public static final String ERRORI_SOAP_USE_GOVWAY_STATUS_AS_FAULT_CODE = "transactionErrorUseGovWayStatusAsSoapFaultCode";
  120.     public static final String ERRORI_SOAP_GENERATE_HTTP_HEADER_GOVWAY_CODE = "transactionErrorGenerateHttpHeaderGovWayCode";
  121.    
  122.     public static final String TIMER_CONSEGNA_CONTENUTI_APPLICATIVI = "timerConsegnaContenutiApplicativi";
  123.     public static final String TIMER_EVENTI = "timerEventi";
  124.     public static final String TIMER_FILE_SYSTEM_RECOVERY = "timerFileSystemRecovery";
  125.     public static final String TIMER_GESTORE_BUSTE_ONEWAY_NON_RISCONTRATE = "timerGestoreBusteOnewayNonRiscontrate";
  126.     public static final String TIMER_GESTORE_BUSTE_ASINCRONE_NON_RISCONTRATE = "timerGestoreBusteAsincroneNonRiscontrate";
  127.     public static final String TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_ELIMINATI = "timerGestoreMessaggiPuliziaMessaggiEliminati";
  128.     public static final String TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_SCADUTI = "timerGestoreMessaggiPuliziaMessaggiScaduti";
  129.     public static final String TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_NON_GESTITI = "timerGestoreMessaggiPuliziaMessaggiNonGestiti";
  130.     public static final String TIMER_GESTORE_MESSAGGI_PULIZIA_CORRELAZIONE_APPLICATIVA = "timerGestoreMessaggiPuliziaCorrelazioneApplicativa";
  131.     public static final String TIMER_GESTORE_MESSAGGI_VERIFICA_CONNESSIONI_ATTIVE = "timerGestoreMessaggiVerificaConnessioniAttive";
  132.     public static final String TIMER_GESTORE_PULIZIA_MESSAGGI_ANOMALI = "timerGestorePuliziaMessaggiAnomali";
  133.     public static final String TIMER_GESTORE_REPOSITORY_BUSTE = "timerGestoreRepositoryBuste";
  134.     public static final String TIMER_MONITORAGGIO_RISORSE_THREAD = "timerMonitoraggioRisorseThread";
  135.     public static final String TIMER_REPOSITORY_STATEFUL_THREAD = "timerRepositoryStatefulThread";
  136.     public static final String TIMER_STATISTICHE_ORARIE = "timerStatisticheOrarie";
  137.     public static final String TIMER_STATISTICHE_GIORNALIERE = "timerStatisticheGiornaliere";
  138.     public static final String TIMER_STATISTICHE_SETTIMANALI = "timerStatisticheSettimanali";
  139.     public static final String TIMER_STATISTICHE_MENSILI = "timerStatisticheMensili";
  140.     public static final String TIMER_TRACING_PDND_GENERAZIONE = "timerTracingPdndGenerazione";
  141.     public static final String TIMER_TRACING_PDND_PUBBLICAZIONE = "timerTracingPdndPubblicazione";
  142.     public static final String TIMER_GESTORE_CHIAVI_PDND = "timerGestoreChiaviPDND";
  143.     public static final String TIMER_GESTORE_CACHE_CHIAVI_PDND = "timerGestoreCacheChiaviPDND";
  144.     public static final String TIMER_GESTORE_OPERAZIONI_REMOTE = "timerGestoreOperazioniRemote";
  145.     public static final String TIMER_SVECCHIAMENTO_OPERAZIONI_REMOTE = "timerSvecchiamentoOperazioniRemote";
  146.     public static final String TIMER_THRESHOLD_THREAD = "timerThresholdThread";
  147.     public static final String TIMER_CLUSTER_DINAMICO = "timerClusterDinamico";
  148.        
  149.     /** Nomi metodi' */
  150.     public static final String CHECK_CONNETTORE_BY_ID = "checkConnettoreById";
  151.     public static final String CHECK_CONNETTORE_BY_NOME = "checkConnettoreByNome";
  152.     public static final String CHECK_CONNETTORE_TOKEN_POLICY_VALIDATION = "checkConnettoreTokenPolicyValidazione";
  153.     public static final String CHECK_CONNETTORE_TOKEN_POLICY_RETRIEVE = "checkConnettoreTokenPolicyNegoziazione";
  154.     public static final String CHECK_CONNETTORE_ATTRIBUTE_AUTHORITY = "checkConnettoreAttributeAuthority";
  155.     public static final String GET_CERTIFICATI_CONNETTORE_BY_ID = "getCertificatiConnettoreById";
  156.     public static final String GET_CERTIFICATI_CONNETTORE_BY_NOME = "getCertificatiConnettoreByNome";
  157.     public static final String GET_CERTIFICATI_TOKEN_POLICY_VALIDATION = "getCertificatiConnettoreTokenPolicyValidazione";
  158.     public static final String GET_CERTIFICATI_TOKEN_POLICY_RETRIEVE = "getCertificatiConnettoreTokenPolicyNegoziazione";
  159.     public static final String GET_CERTIFICATI_ATTRIBUTE_AUTHORITY = "getCertificatiConnettoreAttributeAuthority";
  160.     public static final String CHECK_CERTIFICATI_CONNETTORE_HTTPS_BY_ID = "checkCertificatiConnettoreHttpsById";
  161.     public static final String CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_ID = "checkCertificatoApplicativoById";
  162.     public static final String CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_NOME = "checkCertificatoApplicativoByNome";
  163.     public static final String CHECK_CERTIFICATO_MODI_SERVIZIO_APPLICATIVO_BY_ID = "checkCertificatoModIApplicativoById";
  164.     public static final String CHECK_CERTIFICATO_MODI_SERVIZIO_APPLICATIVO_BY_NOME = "checkCertificatoModIApplicativoByNome";
  165.     public static final String CHECK_CERTIFICATI_CONFIGURAZIONE_JVM = "checkCertificatiJvm";
  166.     public static final String CHECK_CERTIFICATI_CONNETTORE_HTTPS_TOKEN_POLICY_VALIDAZIONE = "checkCertificatiConnettoreHttpsTokenPolicyValidazione";
  167.     public static final String CHECK_CERTIFICATI_VALIDAZIONE_JWT_TOKEN_POLICY_VALIDAZIONE = "checkCertificatiValidazioneJwtTokenPolicyValidazione";
  168.     public static final String CHECK_CERTIFICATI_FORWARD_TO_JWT_TOKEN_POLICY_VALIDAZIONE = "checkCertificatiForwardToJwtTokenPolicyValidazione";
  169.     public static final String CHECK_CERTIFICATI_CONNETTORE_HTTPS_TOKEN_POLICY_NEGOZIAZIONE = "checkCertificatiConnettoreHttpsTokenPolicyNegoziazione";
  170.     public static final String CHECK_CERTIFICATI_SIGNED_JWT_TOKEN_POLICY_NEGOZIAZIONE = "checkCertificatiSignedJwtTokenPolicyNegoziazione";
  171.     public static final String CHECK_CERTIFICATI_CONNETTORE_HTTPS_ATTRIBUTE_AUTHORITY = "checkCertificatiConnettoreHttpsAttributeAuthority";
  172.     public static final String CHECK_CERTIFICATI_ATTRIBUTE_AUTHORITY_JWT_RICHIESTA = "checkCertificatiAttributeAuthorityJwtRichiesta";
  173.     public static final String CHECK_CERTIFICATI_ATTRIBUTE_AUTHORITY_JWT_RISPOSTA = "checkCertificatiAttributeAuthorityJwtRisposta";
  174.     public static final String CHECK_CERTIFICATI_MESSAGE_SECURITY_EROGAZIONE_BY_ID = "checkCertificatiMessageSecurityErogazioneById";
  175.     public static final String CHECK_CERTIFICATI_MESSAGE_SECURITY_FRUIZIONE_BY_ID = "checkCertificatiMessageSecurityFruizioneById";
  176.     public static final String CHECK_PROXY_CONFIGURAZIONE_JVM = "checkProxyJvm";
  177.     public static final String ABILITA_PORTA_DELEGATA = "enablePortaDelegata";
  178.     public static final String DISABILITA_PORTA_DELEGATA = "disablePortaDelegata";
  179.     public static final String ABILITA_PORTA_APPLICATIVA = "enablePortaApplicativa";
  180.     public static final String DISABILITA_PORTA_APPLICATIVA = "disablePortaApplicativa";
  181.     public static final String ABILITA_CONNETTORE_MULTIPLO = "enableConnettoreMultiplo";
  182.     public static final String DISABILITA_CONNETTORE_MULTIPLO = "disableConnettoreMultiplo";
  183.     public static final String ABILITA_SCHEDULING_CONNETTORE_MULTIPLO = "enableSchedulingConnettoreMultiplo";
  184.     public static final String DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO = "disableSchedulingConnettoreMultiplo";
  185.     public static final String ABILITA_CONNETTORE_MULTIPLO_USERNAME = "enableConnettoreMultiploByUsername";
  186.     public static final String DISABILITA_CONNETTORE_MULTIPLO_USERNAME = "disableConnettoreMultiploByUsername";
  187.     public static final String ABILITA_SCHEDULING_CONNETTORE_MULTIPLO_USERNAME = "enableSchedulingConnettoreMultiploByUsername";
  188.     public static final String DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO_USERNAME = "disableSchedulingConnettoreMultiploByUsername";
  189.     public static final String ABILITA_SCHEDULING_CONNETTORE_MULTIPLO_RUNTIME = "enableSchedulingConnettoreMultiploRuntimeRepository";
  190.     public static final String DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO_RUNTIME = "disableSchedulingConnettoreMultiploRuntimeRepository";
  191.     public static final String RIPULISCI_RIFERIMENTI_CACHE_PREFIX = "ripulisciRiferimentiCache";
  192.     public static final String RIPULISCI_RIFERIMENTI_CACHE_ACCORDO_COOPERAZIONE = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"AccordoCooperazione";
  193.     public static final String RIPULISCI_RIFERIMENTI_CACHE_API = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"Api";
  194.     public static final String RIPULISCI_RIFERIMENTI_CACHE_EROGAZIONE = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"Erogazione";
  195.     public static final String RIPULISCI_RIFERIMENTI_CACHE_FRUIZIONE = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"Fruizione";
  196.     public static final String RIPULISCI_RIFERIMENTI_CACHE_SOGGETTO = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"Soggetto";
  197.     public static final String RIPULISCI_RIFERIMENTI_CACHE_APPLICATIVO = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"Applicativo";
  198.     public static final String RIPULISCI_RIFERIMENTI_CACHE_RUOLO = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"Ruolo";
  199.     public static final String RIPULISCI_RIFERIMENTI_CACHE_SCOPE = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"Scope";
  200.     public static final String RIPULISCI_RIFERIMENTI_CACHE_TOKEN_POLICY_VALIDAZIONE = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"TokenPolicyValidazione";
  201.     public static final String RIPULISCI_RIFERIMENTI_CACHE_TOKEN_POLICY_NEGOZIAZIONE = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"TokenPolicyNegoziazione";
  202.     public static final String RIPULISCI_RIFERIMENTI_CACHE_ATTRIBUTE_AUTHORITY = RIPULISCI_RIFERIMENTI_CACHE_PREFIX+"AttributeAuthority";
  203.    
  204.    
  205.     /** Attributi */
  206.     private boolean cacheAbilitata = false;
  207.     private String msgDiagnosticiLivelloSeverita = "";
  208.     private String msgDiagnosticiLivelloSeveritaLog4J = "";
  209.     private String[] msgDiagnosticiAppender = null;
  210.     private boolean tracciamentoAbilitato = true;
  211.     private boolean dumpBinarioPDAbilitato = false;
  212.     private boolean dumpBinarioPAAbilitato = false;
  213.     private String[] tracciamentoAppender = null;
  214.     private boolean log4jDiagnosticaAbilitato = false;
  215.     private boolean log4jOpenSPCoopAbilitato = false;
  216.     private boolean log4jIntegrationManagerAbilitato = false;
  217.     private boolean log4jTracciamentoAbilitato = false;
  218.     private boolean log4jDumpAbilitato = false;
  219.        
  220.     private static final String PARAMETRO_NON_FORNITO = "parametro richiesto non fornito";
  221.     private static final String FORMATO_NON_VALIDO_NOME_SOGGETTO = "Formato non valido (nome@tipoSoggetto/nomeSoggetto)";
  222.    
  223.     /** getAttribute */
  224.     @Override
  225.     public Object getAttribute(String attributeName) throws AttributeNotFoundException,MBeanException,ReflectionException{
  226.        
  227.         if( (attributeName==null) || (attributeName.equals("")) )
  228.             throw new IllegalArgumentException("Il nome dell'attributo e' nullo o vuoto");
  229.        
  230.         if(attributeName.equals(JMXUtils.CACHE_ATTRIBUTE_ABILITATA))
  231.             return this.cacheAbilitata;
  232.        
  233.         if(attributeName.equals(ConfigurazionePdD.MSG_DIAGNOSTICI_SEVERITA_LIVELLO))
  234.             return this.msgDiagnosticiLivelloSeverita;
  235.        
  236.         if(attributeName.equals(ConfigurazionePdD.MSG_DIAGNOSTICI_SEVERITA_LIVELLO_LOG4J))
  237.             return this.msgDiagnosticiLivelloSeveritaLog4J;
  238.        
  239.         if(attributeName.equals(ConfigurazionePdD.MSG_DIAGNOSTICI_APPENDER))
  240.             return this.msgDiagnosticiAppender;
  241.        
  242.         if(attributeName.equals(ConfigurazionePdD.TRACCIAMENTO_ABILITATO))
  243.             return this.tracciamentoAbilitato;
  244.        
  245.         if(attributeName.equals(ConfigurazionePdD.DUMP_BINARIO_PD_ABILITATO))
  246.             return this.dumpBinarioPDAbilitato;
  247.        
  248.         if(attributeName.equals(ConfigurazionePdD.DUMP_BINARIO_PA_ABILITATO))
  249.             return this.dumpBinarioPAAbilitato;
  250.        
  251.         if(attributeName.equals(ConfigurazionePdD.TRACCIAMENTO_APPENDER))
  252.             return this.tracciamentoAppender;
  253.        
  254.         if(attributeName.equals(ConfigurazionePdD.LOG4J_DIAGNOSTICA_ABILITATO))
  255.             return this.log4jDiagnosticaAbilitato;
  256.        
  257.         if(attributeName.equals(ConfigurazionePdD.LOG4J_OPENSPCOOP_ABILITATO))
  258.             return this.log4jOpenSPCoopAbilitato;
  259.        
  260.         if(attributeName.equals(ConfigurazionePdD.LOG4J_INTEGRATION_MANAGER_ABILITATO))
  261.             return this.log4jIntegrationManagerAbilitato;
  262.        
  263.         if(attributeName.equals(ConfigurazionePdD.LOG4J_TRACCIAMENTO_ABILITATO))
  264.             return this.log4jTracciamentoAbilitato;
  265.        
  266.         if(attributeName.equals(ConfigurazionePdD.LOG4J_DUMP_ABILITATO))
  267.             return this.log4jDumpAbilitato;
  268.        
  269.         if(attributeName.equals(ConfigurazionePdD.ERRORI_STATUS_CODE_ABILITATO))
  270.             return Costanti.isTRANSACTION_ERROR_STATUS_ABILITATO();
  271.        
  272.         if(attributeName.equals(ConfigurazionePdD.ERRORI_INSTANCE_ID_ABILITATO))
  273.             return Costanti.isTRANSACTION_ERROR_INSTANCE_ID_ABILITATO();
  274.        
  275.         if(attributeName.equals(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_BAD_REQUEST))
  276.             return ErroriProperties.isFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_BAD_REQUEST();
  277.        
  278.         if(attributeName.equals(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_BAD_RESPONSE))
  279.             return ErroriProperties.isFORCE_SPECIFIC_ERROR_TYPE_FOR_BAD_RESPONSE();
  280.        
  281.         if(attributeName.equals(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_RESPONSE_ERROR))
  282.             return ErroriProperties.isFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_RESPONSE_ERROR();
  283.                        
  284.         if(attributeName.equals(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_ERROR))
  285.             return ErroriProperties.isFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_ERROR();
  286.        
  287.         if(attributeName.equals(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_DETAILS))
  288.             return Costanti.isTRANSACTION_FORCE_SPECIFIC_ERROR_DETAILS();

  289.         if(attributeName.equals(ConfigurazionePdD.ERRORI_SOAP_USE_GOVWAY_STATUS_AS_FAULT_CODE))
  290.             return Costanti.isTRANSACTION_ERROR_SOAP_USE_GOVWAY_STATUS_AS_FAULT_CODE();
  291.        
  292.         if(attributeName.equals(ConfigurazionePdD.ERRORI_SOAP_GENERATE_HTTP_HEADER_GOVWAY_CODE))
  293.             return Costanti.isTRANSACTION_ERROR_SOAP_GENERATE_HTTP_HEADER_GOVWAY_CODE();
  294.        
  295.         if(attributeName.equals(ConfigurazionePdD.TIMER_CONSEGNA_CONTENUTI_APPLICATIVI))
  296.             return TimerConsegnaContenutiApplicativi.getSTATE().name();
  297.        
  298.         if(attributeName.equals(ConfigurazionePdD.TIMER_EVENTI))
  299.             return TimerEventiThread.getSTATE().name();
  300.        
  301.         if(attributeName.equals(ConfigurazionePdD.TIMER_FILE_SYSTEM_RECOVERY))
  302.             return TimerFileSystemRecoveryThread.getSTATE().name();
  303.        
  304.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_BUSTE_ONEWAY_NON_RISCONTRATE))
  305.             return TimerGestoreBusteNonRiscontrateLib.getSTATE_ONEWAY().name();
  306.        
  307.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_BUSTE_ASINCRONE_NON_RISCONTRATE))
  308.             return TimerGestoreBusteNonRiscontrateLib.getSTATE_ASINCRONI().name();
  309.        
  310.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_ELIMINATI))
  311.             return TimerGestoreMessaggiLib.getSTATE_MESSAGGI_ELIMINATI().name();
  312.        
  313.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_SCADUTI))
  314.             return TimerGestoreMessaggiLib.getSTATE_MESSAGGI_SCADUTI().name();
  315.        
  316.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_NON_GESTITI))
  317.             return TimerGestoreMessaggiLib.getSTATE_MESSAGGI_NON_GESTITI().name();
  318.        
  319.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_CORRELAZIONE_APPLICATIVA))
  320.             return TimerGestoreMessaggiLib.getSTATE_CORRELAZIONE_APPLICATIVA().name();
  321.        
  322.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_VERIFICA_CONNESSIONI_ATTIVE))
  323.             return TimerGestoreMessaggiLib.getSTATE_VERIFICA_CONNESSIONI_ATTIVE().name();
  324.        
  325.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_PULIZIA_MESSAGGI_ANOMALI))
  326.             return TimerGestorePuliziaMessaggiAnomaliLib.getSTATE().name();
  327.        
  328.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_REPOSITORY_BUSTE))
  329.             return TimerGestoreRepositoryBusteLib.getSTATE().name();
  330.        
  331.         if(attributeName.equals(ConfigurazionePdD.TIMER_MONITORAGGIO_RISORSE_THREAD))
  332.             return TimerMonitoraggioRisorseThread.getSTATE().name();
  333.        
  334.         if(attributeName.equals(ConfigurazionePdD.TIMER_REPOSITORY_STATEFUL_THREAD))
  335.             return TimerRepositoryStatefulThread.getSTATE().name();
  336.        
  337.         if(attributeName.equals(ConfigurazionePdD.TIMER_STATISTICHE_ORARIE))
  338.             return TimerStatisticheLib.getSTATE_STATISTICHE_ORARIE().name();
  339.        
  340.         if(attributeName.equals(ConfigurazionePdD.TIMER_STATISTICHE_GIORNALIERE))
  341.             return TimerStatisticheLib.getSTATE_STATISTICHE_GIORNALIERE().name();
  342.        
  343.         if(attributeName.equals(ConfigurazionePdD.TIMER_STATISTICHE_SETTIMANALI))
  344.             return TimerStatisticheLib.getSTATE_STATISTICHE_SETTIMANALI().name();
  345.        
  346.         if(attributeName.equals(ConfigurazionePdD.TIMER_STATISTICHE_MENSILI))
  347.             return TimerStatisticheLib.getSTATE_STATISTICHE_MENSILI().name();
  348.        
  349.         if(attributeName.equals(ConfigurazionePdD.TIMER_TRACING_PDND_GENERAZIONE))
  350.             return TimerStatisticheLib.getSTATE_PDND_TRACCIAMENTO_GENERAZIONE().name();
  351.        
  352.         if(attributeName.equals(ConfigurazionePdD.TIMER_TRACING_PDND_PUBBLICAZIONE))
  353.             return TimerStatisticheLib.getSTATE_PDND_TRACCIAMENTO_PUBBLICAZIONE().name();
  354.        
  355.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_CHIAVI_PDND))
  356.             return TimerGestoreChiaviPDNDLib.getState().name();
  357.        
  358.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_CACHE_CHIAVI_PDND))
  359.             return TimerGestoreCacheChiaviPDNDLib.getState().name();
  360.        
  361.         if(attributeName.equals(ConfigurazionePdD.TIMER_GESTORE_OPERAZIONI_REMOTE))
  362.             return TimerGestoreOperazioniRemoteLib.getState().name();
  363.        
  364.         if(attributeName.equals(ConfigurazionePdD.TIMER_SVECCHIAMENTO_OPERAZIONI_REMOTE))
  365.             return TimerSvecchiamentoOperazioniRemoteLib.getState().name();
  366.        
  367.         if(attributeName.equals(ConfigurazionePdD.TIMER_THRESHOLD_THREAD))
  368.             return TimerThresholdThread.getSTATE().name();
  369.        
  370.         if(attributeName.equals(ConfigurazionePdD.TIMER_CLUSTER_DINAMICO))
  371.             return TimerClusterDinamicoThread.getSTATE().name();
  372.                
  373.         throw new AttributeNotFoundException("Attributo "+attributeName+" non trovato");
  374.     }
  375.    
  376.     /** getAttributes */
  377.     @Override
  378.     public AttributeList getAttributes(String [] attributesNames){
  379.        
  380.         if(attributesNames==null)
  381.             throw new IllegalArgumentException("Array nullo");
  382.        
  383.         AttributeList list = new AttributeList();
  384.         for (int i=0; i<attributesNames.length; i++){
  385.             try{
  386.                 list.add(new Attribute(attributesNames[i],getAttribute(attributesNames[i])));
  387.             }catch(JMException ex){
  388.                 // ignore
  389.             }
  390.         }
  391.         return list;
  392.     }
  393.    
  394.     /** setAttribute */
  395.     @Override
  396.     public void setAttribute(Attribute attribute) throws AttributeNotFoundException, InvalidAttributeValueException, MBeanException, ReflectionException{
  397.        
  398.         if( attribute==null )
  399.             throw new IllegalArgumentException("Il nome dell'attributo e' nullo");
  400.        
  401.         try{
  402.            
  403.             if(attribute.getName().equals(JMXUtils.CACHE_ATTRIBUTE_ABILITATA)){
  404.                 boolean v = (Boolean) attribute.getValue();
  405.                 if(v){
  406.                     // la cache DEVE essere abilitata
  407.                     if(!this.cacheAbilitata){
  408.                         this.abilitaCache();
  409.                     }
  410.                 }
  411.                 else{
  412.                     // la cache DEVE essere disabilitata
  413.                     if(this.cacheAbilitata){
  414.                         this.disabilitaCache();
  415.                     }
  416.                 }
  417.             }
  418.            
  419.             else if(attribute.getName().equals(ConfigurazionePdD.MSG_DIAGNOSTICI_SEVERITA_LIVELLO))
  420.                 this.setMsgDiagnosticiLivelloSeverita( (String) attribute.getValue() );
  421.            
  422.             else if(attribute.getName().equals(ConfigurazionePdD.MSG_DIAGNOSTICI_SEVERITA_LIVELLO_LOG4J))
  423.                 this.setMsgDiagnosticiLivelloSeveritaLog4J( (String) attribute.getValue() );
  424.            
  425.             else if(attribute.getName().equals(ConfigurazionePdD.MSG_DIAGNOSTICI_APPENDER))
  426.                 this.msgDiagnosticiAppender = (String[]) attribute.getValue();
  427.            
  428.             else if(attribute.getName().equals(ConfigurazionePdD.TRACCIAMENTO_ABILITATO))
  429.                 this.setTracciamentoAbilitato((Boolean) attribute.getValue());
  430.            
  431.             else if(attribute.getName().equals(ConfigurazionePdD.DUMP_BINARIO_PD_ABILITATO))
  432.                 this.setDumpBinarioPD((Boolean) attribute.getValue());
  433.            
  434.             else if(attribute.getName().equals(ConfigurazionePdD.DUMP_BINARIO_PA_ABILITATO))
  435.                 this.setDumpBinarioPA((Boolean) attribute.getValue());
  436.            
  437.             else if(attribute.getName().equals(ConfigurazionePdD.TRACCIAMENTO_APPENDER))
  438.                 this.tracciamentoAppender = (String[]) attribute.getValue();
  439.            
  440.             else if(attribute.getName().equals(ConfigurazionePdD.ERRORI_STATUS_CODE_ABILITATO))
  441.                 Costanti.setTRANSACTION_ERROR_STATUS_ABILITATO( (Boolean) attribute.getValue() );
  442.            
  443.             else if(attribute.getName().equals(ConfigurazionePdD.ERRORI_INSTANCE_ID_ABILITATO))
  444.                 Costanti.setTRANSACTION_ERROR_INSTANCE_ID_ABILITATO( (Boolean) attribute.getValue() );
  445.            
  446.             else if(attribute.getName().equals(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_BAD_REQUEST))
  447.                 this.setFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_BAD_REQUEST( (Boolean) attribute.getValue() );
  448.            
  449.             else if(attribute.getName().equals(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_BAD_RESPONSE))
  450.                 this.setFORCE_SPECIFIC_ERROR_TYPE_FOR_BAD_RESPONSE( (Boolean) attribute.getValue() );
  451.            
  452.             else if(attribute.getName().equals(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_RESPONSE_ERROR))
  453.                 this.setFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_RESPONSE_ERROR( (Boolean) attribute.getValue() );
  454.                        
  455.             else if(attribute.getName().equals(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_ERROR))
  456.                 this.setFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_ERROR( (Boolean) attribute.getValue() );

  457.             else if(attribute.getName().equals(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_DETAILS))
  458.                 Costanti.setTRANSACTION_FORCE_SPECIFIC_ERROR_DETAILS( (Boolean) attribute.getValue() );
  459.            
  460.             else if(attribute.getName().equals(ConfigurazionePdD.ERRORI_SOAP_USE_GOVWAY_STATUS_AS_FAULT_CODE))
  461.                 Costanti.setTRANSACTION_ERROR_SOAP_USE_GOVWAY_STATUS_AS_FAULT_CODE( (Boolean) attribute.getValue() );
  462.            
  463.             else if(attribute.getName().equals(ConfigurazionePdD.ERRORI_SOAP_GENERATE_HTTP_HEADER_GOVWAY_CODE))
  464.                 Costanti.setTRANSACTION_ERROR_SOAP_GENERATE_HTTP_HEADER_GOVWAY_CODE( (Boolean) attribute.getValue() );
  465.            
  466.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_CONSEGNA_CONTENUTI_APPLICATIVI))
  467.                 TimerConsegnaContenutiApplicativi.setSTATE( getTimerState(attribute.getValue()) );
  468.            
  469.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_EVENTI))
  470.                 TimerEventiThread.setSTATE( getTimerState(attribute.getValue()) );
  471.            
  472.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_FILE_SYSTEM_RECOVERY))
  473.                 TimerFileSystemRecoveryThread.setSTATE( getTimerState(attribute.getValue()) );
  474.            
  475.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_BUSTE_ONEWAY_NON_RISCONTRATE))
  476.                 TimerGestoreBusteNonRiscontrateLib.setSTATE_ONEWAY( getTimerState(attribute.getValue()) );
  477.            
  478.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_BUSTE_ASINCRONE_NON_RISCONTRATE))
  479.                 TimerGestoreBusteNonRiscontrateLib.setSTATE_ASINCRONI( getTimerState(attribute.getValue()) );
  480.            
  481.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_ELIMINATI))
  482.                 TimerGestoreMessaggiLib.setSTATE_MESSAGGI_ELIMINATI( getTimerState(attribute.getValue()) );
  483.            
  484.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_SCADUTI))
  485.                 TimerGestoreMessaggiLib.setSTATE_MESSAGGI_SCADUTI( getTimerState(attribute.getValue()) );
  486.            
  487.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_NON_GESTITI))
  488.                 TimerGestoreMessaggiLib.setSTATE_MESSAGGI_NON_GESTITI( getTimerState(attribute.getValue()) );
  489.            
  490.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_CORRELAZIONE_APPLICATIVA))
  491.                 TimerGestoreMessaggiLib.setSTATE_CORRELAZIONE_APPLICATIVA( getTimerState(attribute.getValue()) );
  492.            
  493.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_VERIFICA_CONNESSIONI_ATTIVE))
  494.                 TimerGestoreMessaggiLib.setSTATE_VERIFICA_CONNESSIONI_ATTIVE( getTimerState(attribute.getValue()) );
  495.            
  496.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_PULIZIA_MESSAGGI_ANOMALI))
  497.                 TimerGestorePuliziaMessaggiAnomaliLib.setSTATE( getTimerState(attribute.getValue()) );
  498.            
  499.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_REPOSITORY_BUSTE))
  500.                 TimerGestoreRepositoryBusteLib.setSTATE( getTimerState(attribute.getValue()) );
  501.            
  502.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_MONITORAGGIO_RISORSE_THREAD))
  503.                 TimerMonitoraggioRisorseThread.setSTATE( getTimerState(attribute.getValue()) );
  504.            
  505.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_REPOSITORY_STATEFUL_THREAD))
  506.                 TimerRepositoryStatefulThread.setSTATE( getTimerState(attribute.getValue()) );
  507.            
  508.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_STATISTICHE_ORARIE))
  509.                 TimerStatisticheLib.setSTATE_STATISTICHE_ORARIE( getTimerState(attribute.getValue()) );
  510.            
  511.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_STATISTICHE_GIORNALIERE))
  512.                 TimerStatisticheLib.setSTATE_STATISTICHE_GIORNALIERE( getTimerState(attribute.getValue()) );
  513.            
  514.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_STATISTICHE_SETTIMANALI))
  515.                 TimerStatisticheLib.setSTATE_STATISTICHE_SETTIMANALI( getTimerState(attribute.getValue()) );
  516.            
  517.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_STATISTICHE_MENSILI))
  518.                 TimerStatisticheLib.setSTATE_STATISTICHE_MENSILI( getTimerState(attribute.getValue()) );
  519.            
  520.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_TRACING_PDND_GENERAZIONE))
  521.                 TimerStatisticheLib.setSTATE_PDND_TRACCIAMENTO_GENERAZIONE( getTimerState(attribute.getValue()) );
  522.            
  523.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_TRACING_PDND_PUBBLICAZIONE))
  524.                 TimerStatisticheLib.setSTATE_PDND_TRACCIAMENTO_PUBBLICAZIONE( getTimerState(attribute.getValue()) );
  525.            
  526.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_CHIAVI_PDND))
  527.                 TimerGestoreChiaviPDNDLib.setState( getTimerState(attribute.getValue()) );
  528.            
  529.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_CACHE_CHIAVI_PDND))
  530.                 TimerGestoreCacheChiaviPDNDLib.setState( getTimerState(attribute.getValue()) );
  531.            
  532.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_GESTORE_OPERAZIONI_REMOTE))
  533.                 TimerGestoreOperazioniRemoteLib.setState( getTimerState(attribute.getValue()) );
  534.            
  535.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_SVECCHIAMENTO_OPERAZIONI_REMOTE))
  536.                 TimerSvecchiamentoOperazioniRemoteLib.setState( getTimerState(attribute.getValue()) );
  537.            
  538.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_THRESHOLD_THREAD))
  539.                 TimerThresholdThread.setSTATE( getTimerState(attribute.getValue()) );
  540.            
  541.             else if(attribute.getName().equals(ConfigurazionePdD.TIMER_CLUSTER_DINAMICO))
  542.                 TimerClusterDinamicoThread.setSTATE( getTimerState(attribute.getValue()) );
  543.            
  544.             else
  545.                 throw new AttributeNotFoundException("Attributo "+attribute.getName()+" non trovato");
  546.            
  547.         }catch(ClassCastException ce){
  548.             throw new InvalidAttributeValueException("il tipo "+attribute.getValue().getClass()+" dell'attributo "+attribute.getName()+" non e' valido");
  549.         }catch(JMException j){
  550.             throw new MBeanException(j);
  551.         }
  552.        
  553.     }
  554.     private TimerState getTimerState(Object o) throws ClassCastException {
  555.         TimerState state = TimerState.valueOf((String)o);
  556.         if(state==null) {
  557.             throw new ClassCastException("Valore indicato '"+o+"' non valido");
  558.         }
  559.         if(TimerState.OFF.equals(state)) {
  560.             throw new ClassCastException("Valore indicato '"+o+"' non supportato");
  561.         }
  562.         return state;
  563.     }
  564.    
  565.     /** setAttributes */
  566.     @Override
  567.     public AttributeList setAttributes(AttributeList list){
  568.        
  569.         if(list==null)
  570.             throw new IllegalArgumentException("Lista degli attributi e' nulla");
  571.        
  572.         AttributeList ret = new AttributeList();
  573.         Iterator<?> it = ret.iterator();
  574.        
  575.         while(it.hasNext()){
  576.             try{
  577.                 Attribute attribute = (Attribute) it.next();
  578.                 setAttribute(attribute);
  579.                 ret.add(attribute);
  580.             }catch(JMException ex){
  581.                 // ignore
  582.             }
  583.         }
  584.        
  585.         return ret;
  586.        
  587.     }
  588.    
  589.     /** invoke */
  590.     @Override
  591.     public Object invoke(String actionName, Object[]params, String[]signature) throws MBeanException,ReflectionException{
  592.        
  593.         if( (actionName==null) || (actionName.equals("")) )
  594.             throw new IllegalArgumentException("Nessuna operazione definita");
  595.        
  596.         if(actionName.equals(JMXUtils.CACHE_METHOD_NAME_RESET)){
  597.             return this.resetCache();
  598.         }
  599.        
  600.         if(actionName.equals(JMXUtils.CACHE_METHOD_NAME_PREFILL)){
  601.             return this.prefillCache();
  602.         }
  603.        
  604.         if(actionName.equals(JMXUtils.CACHE_METHOD_NAME_PRINT_STATS)){
  605.             return this.printStatCache();
  606.         }
  607.                
  608.         if(actionName.equals(JMXUtils.CACHE_METHOD_NAME_DISABILITA)){
  609.             return this.disabilitaCacheConEsito();
  610.         }
  611.        
  612.         if(actionName.equals(JMXUtils.CACHE_METHOD_NAME_ABILITA)){
  613.             if(params.length != 4)
  614.                 throw new MBeanException(new Exception("["+JMXUtils.CACHE_METHOD_NAME_ABILITA+"] Lunghezza parametri non corretta: "+params.length));
  615.            
  616.             Long param1 = null;
  617.             if(params[0]!=null && !"".equals(params[0])){
  618.                 param1 = (Long)params[0];
  619.                 if(param1<0){
  620.                     param1 = null;
  621.                 }
  622.             }
  623.            
  624.             Boolean param2 = null;
  625.             if(params[1]!=null && !"".equals(params[1])){
  626.                 param2 = (Boolean)params[1];
  627.             }
  628.            
  629.             Long param3 = null;
  630.             if(params[2]!=null && !"".equals(params[2])){
  631.                 param3 = (Long)params[2];
  632.                 if(param3<0){
  633.                     param3 = null;
  634.                 }
  635.             }
  636.            
  637.             Long param4 = null;
  638.             if(params[3]!=null && !"".equals(params[3])){
  639.                 param4 = (Long)params[3];
  640.                 if(param4<0){
  641.                     param4 = null;
  642.                 }
  643.             }
  644.                    
  645.             return this.abilitaCache(param1, param2, param3, param4 );
  646.         }
  647.        
  648.         if(actionName.equals(JMXUtils.CACHE_METHOD_NAME_LIST_KEYS)){
  649.             return this.listKeysCache();
  650.         }
  651.        
  652.         if(actionName.equals(JMXUtils.CACHE_METHOD_NAME_GET_OBJECT)){
  653.            
  654.             if(params.length != 1)
  655.                 throw new MBeanException(new Exception("["+JMXUtils.CACHE_METHOD_NAME_GET_OBJECT+"] Lunghezza parametri non corretta: "+params.length));
  656.            
  657.             String param1 = null;
  658.             if(params[0]!=null && !"".equals(params[0])){
  659.                 param1 = (String)params[0];
  660.             }
  661.            
  662.             return this.getObjectCache(param1);
  663.         }
  664.        
  665.         if(actionName.equals(JMXUtils.CACHE_METHOD_NAME_REMOVE_OBJECT)){
  666.            
  667.             if(params.length != 1)
  668.                 throw new MBeanException(new Exception("["+JMXUtils.CACHE_METHOD_NAME_REMOVE_OBJECT+"] Lunghezza parametri non corretta: "+params.length));
  669.            
  670.             String param1 = null;
  671.             if(params[0]!=null && !"".equals(params[0])){
  672.                 param1 = (String)params[0];
  673.             }
  674.            
  675.             return this.removeObjectCache(param1);
  676.         }
  677.            
  678.         if(actionName.equals(CHECK_CONNETTORE_BY_ID)){
  679.             if(params.length != 1)
  680.                 throw new MBeanException(new Exception("["+CHECK_CONNETTORE_BY_ID+"] Lunghezza parametri non corretta: "+params.length));
  681.            
  682.             Long param1 = null;
  683.             if(params[0]!=null && !"".equals(params[0])){
  684.                 if(params[0] instanceof Long) {
  685.                     param1 = (Long)params[0];
  686.                 }
  687.                 else {
  688.                     param1 = Long.valueOf(params[0].toString());
  689.                 }
  690.                 if(param1<0){
  691.                     param1 = null;
  692.                 }
  693.             }
  694.            
  695.             if(param1==null) {
  696.                 throw new MBeanException(new Exception("["+CHECK_CONNETTORE_BY_ID+"] "+PARAMETRO_NON_FORNITO));
  697.             }
  698.             return this.checkConnettoreById(param1);
  699.         }
  700.        
  701.         if(actionName.equals(CHECK_CONNETTORE_BY_NOME)){
  702.             if(params.length != 1)
  703.                 throw new MBeanException(new Exception("["+CHECK_CONNETTORE_BY_NOME+"] Lunghezza parametri non corretta: "+params.length));
  704.            
  705.             String param1 = null;
  706.             if(params[0]!=null && !"".equals(params[0])){
  707.                 param1 = (String)params[0];
  708.             }
  709.             return this.checkConnettoreByNome(param1);
  710.         }
  711.        
  712.         if(actionName.equals(CHECK_CONNETTORE_TOKEN_POLICY_VALIDATION)){
  713.             if(params.length != 1 && params.length != 2)
  714.                 throw new MBeanException(new Exception("["+CHECK_CONNETTORE_TOKEN_POLICY_VALIDATION+"] Lunghezza parametri non corretta: "+params.length));
  715.            
  716.             String param1 = null;
  717.             if(params[0]!=null && !"".equals(params[0])){
  718.                 param1 = (String)params[0];
  719.             }
  720.             if(params.length==1) {
  721.                 return this.checkConnettoreTokenPolicyValidazione(param1);
  722.             }
  723.             else {
  724.                 String param2 = null;
  725.                 if(params[1]!=null && !"".equals(params[1])){
  726.                     param2 = (String)params[1];
  727.                 }
  728.                 return this.checkConnettoreTokenPolicyValidazione(param1,param2);
  729.             }
  730.         }
  731.        
  732.         if(actionName.equals(CHECK_CONNETTORE_TOKEN_POLICY_RETRIEVE)){
  733.             if(params.length != 1)
  734.                 throw new MBeanException(new Exception("["+CHECK_CONNETTORE_TOKEN_POLICY_RETRIEVE+"] Lunghezza parametri non corretta: "+params.length));
  735.            
  736.             String param1 = null;
  737.             if(params[0]!=null && !"".equals(params[0])){
  738.                 param1 = (String)params[0];
  739.             }
  740.             return this.checkConnettoreTokenPolicyNegoziazione(param1);
  741.         }
  742.        
  743.         if(actionName.equals(CHECK_CONNETTORE_ATTRIBUTE_AUTHORITY)){
  744.             if(params.length != 1)
  745.                 throw new MBeanException(new Exception("["+CHECK_CONNETTORE_ATTRIBUTE_AUTHORITY+"] Lunghezza parametri non corretta: "+params.length));
  746.            
  747.             String param1 = null;
  748.             if(params[0]!=null && !"".equals(params[0])){
  749.                 param1 = (String)params[0];
  750.             }
  751.             return this.checkConnettoreAttributeAuthority(param1);
  752.         }
  753.        
  754.         if(actionName.equals(GET_CERTIFICATI_CONNETTORE_BY_ID)){
  755.             if(params.length != 1)
  756.                 throw new MBeanException(new Exception("["+GET_CERTIFICATI_CONNETTORE_BY_ID+"] Lunghezza parametri non corretta: "+params.length));
  757.            
  758.             Long param1 = null;
  759.             if(params[0]!=null && !"".equals(params[0])){
  760.                 if(params[0] instanceof Long) {
  761.                     param1 = (Long)params[0];
  762.                 }
  763.                 else {
  764.                     param1 = Long.valueOf(params[0].toString());
  765.                 }
  766.                 if(param1<0){
  767.                     param1 = null;
  768.                 }
  769.             }
  770.            
  771.             if(param1==null) {
  772.                 throw new MBeanException(new Exception("["+GET_CERTIFICATI_CONNETTORE_BY_ID+"] "+PARAMETRO_NON_FORNITO));
  773.             }
  774.             return this.getCertificatiConnettoreById(param1);
  775.         }
  776.        
  777.         if(actionName.equals(GET_CERTIFICATI_CONNETTORE_BY_NOME)){
  778.             if(params.length != 1)
  779.                 throw new MBeanException(new Exception("["+GET_CERTIFICATI_CONNETTORE_BY_NOME+"] Lunghezza parametri non corretta: "+params.length));
  780.            
  781.             String param1 = null;
  782.             if(params[0]!=null && !"".equals(params[0])){
  783.                 param1 = (String)params[0];
  784.             }
  785.             return this.getCertificatiConnettoreByNome(param1);
  786.         }
  787.        
  788.         if(actionName.equals(GET_CERTIFICATI_TOKEN_POLICY_VALIDATION)){
  789.             if(params.length != 1 && params.length != 2)
  790.                 throw new MBeanException(new Exception("["+GET_CERTIFICATI_TOKEN_POLICY_VALIDATION+"] Lunghezza parametri non corretta: "+params.length));
  791.            
  792.             String param1 = null;
  793.             if(params[0]!=null && !"".equals(params[0])){
  794.                 param1 = (String)params[0];
  795.             }
  796.            
  797.             if(params.length==1) {
  798.                 return this.getCertificatiConnettoreTokenPolicyValidazione(param1);
  799.             }
  800.             else {
  801.                 String param2 = null;
  802.                 if(params[1]!=null && !"".equals(params[1])){
  803.                     param2 = (String)params[1];
  804.                 }
  805.                 return this.getCertificatiConnettoreTokenPolicyValidazione(param1,param2);
  806.             }
  807.            
  808.         }
  809.        
  810.         if(actionName.equals(GET_CERTIFICATI_TOKEN_POLICY_RETRIEVE)){
  811.             if(params.length != 1)
  812.                 throw new MBeanException(new Exception("["+GET_CERTIFICATI_TOKEN_POLICY_RETRIEVE+"] Lunghezza parametri non corretta: "+params.length));
  813.            
  814.             String param1 = null;
  815.             if(params[0]!=null && !"".equals(params[0])){
  816.                 param1 = (String)params[0];
  817.             }
  818.             return this.getCertificatiConnettoreTokenPolicyNegoziazione(param1);
  819.         }
  820.        
  821.         if(actionName.equals(GET_CERTIFICATI_ATTRIBUTE_AUTHORITY)){
  822.             if(params.length != 1)
  823.                 throw new MBeanException(new Exception("["+GET_CERTIFICATI_ATTRIBUTE_AUTHORITY+"] Lunghezza parametri non corretta: "+params.length));
  824.            
  825.             String param1 = null;
  826.             if(params[0]!=null && !"".equals(params[0])){
  827.                 param1 = (String)params[0];
  828.             }
  829.             return this.getCertificatiConnettoreAttributeAuthority(param1);
  830.         }
  831.        
  832.         if(actionName.equals(CHECK_CERTIFICATI_CONNETTORE_HTTPS_BY_ID)){
  833.             if(params.length != 2)
  834.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_CONNETTORE_HTTPS_BY_ID+"] Lunghezza parametri non corretta: "+params.length));
  835.            
  836.             Long param1 = null;
  837.             if(params[0]!=null && !"".equals(params[0])){
  838.                 if(params[0] instanceof Long) {
  839.                     param1 = (Long)params[0];
  840.                 }
  841.                 else {
  842.                     param1 = Long.valueOf(params[0].toString());
  843.                 }
  844.                 if(param1<0){
  845.                     param1 = null;
  846.                 }
  847.             }
  848.            
  849.             int soglia = -1;
  850.             if(params[1] instanceof Integer) {
  851.                 soglia = (Integer)params[1];
  852.             }
  853.             else {
  854.                 soglia = Integer.valueOf(params[1].toString());
  855.             }
  856.            
  857.             if(param1==null) {
  858.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_CONNETTORE_HTTPS_BY_ID+"] "+PARAMETRO_NON_FORNITO));
  859.             }
  860.             return this.checkCertificatiConnettoreHttpsById(param1, soglia);
  861.         }
  862.        
  863.         if(actionName.equals(CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_ID)){
  864.             if(params.length != 2)
  865.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_ID+"] Lunghezza parametri non corretta: "+params.length));
  866.            
  867.             Long param1 = null;
  868.             if(params[0]!=null && !"".equals(params[0])){
  869.                 if(params[0] instanceof Long) {
  870.                     param1 = (Long)params[0];
  871.                 }
  872.                 else {
  873.                     param1 = Long.valueOf(params[0].toString());
  874.                 }
  875.                 if(param1<0){
  876.                     param1 = null;
  877.                 }
  878.             }
  879.            
  880.             int soglia = -1;
  881.             if(params[1] instanceof Integer) {
  882.                 soglia = (Integer)params[1];
  883.             }
  884.             else {
  885.                 soglia = Integer.valueOf(params[1].toString());
  886.             }
  887.            
  888.             if(param1==null) {
  889.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_ID+"] "+PARAMETRO_NON_FORNITO));
  890.             }
  891.             return this.checkCertificatoApplicativoById(param1, soglia);
  892.         }
  893.         if(actionName.equals(CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_NOME)){
  894.             if(params.length != 2)
  895.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_NOME+"] Lunghezza parametri non corretta: "+params.length));
  896.            
  897.             String param1 = null;
  898.             if(params[0]!=null && !"".equals(params[0])){
  899.                 param1 = (String)params[0];
  900.             }
  901.            
  902.             int soglia = -1;
  903.             if(params[1] instanceof Integer) {
  904.                 soglia = (Integer)params[1];
  905.             }
  906.             else {
  907.                 soglia = Integer.valueOf(params[1].toString());
  908.             }
  909.            
  910.             if(param1==null) {
  911.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_NOME+"] "+PARAMETRO_NON_FORNITO));
  912.             }
  913.             return this.checkCertificatoApplicativoByNome(param1, soglia);
  914.         }
  915.        
  916.         if(actionName.equals(CHECK_CERTIFICATO_MODI_SERVIZIO_APPLICATIVO_BY_ID)){
  917.             if(params.length != 2)
  918.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATO_MODI_SERVIZIO_APPLICATIVO_BY_ID+"] Lunghezza parametri non corretta: "+params.length));
  919.            
  920.             Long param1 = null;
  921.             if(params[0]!=null && !"".equals(params[0])){
  922.                 if(params[0] instanceof Long) {
  923.                     param1 = (Long)params[0];
  924.                 }
  925.                 else {
  926.                     param1 = Long.valueOf(params[0].toString());
  927.                 }
  928.                 if(param1<0){
  929.                     param1 = null;
  930.                 }
  931.             }
  932.            
  933.             int soglia = -1;
  934.             if(params[1] instanceof Integer) {
  935.                 soglia = (Integer)params[1];
  936.             }
  937.             else {
  938.                 soglia = Integer.valueOf(params[1].toString());
  939.             }
  940.            
  941.             if(param1==null) {
  942.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATO_MODI_SERVIZIO_APPLICATIVO_BY_ID+"] "+PARAMETRO_NON_FORNITO));
  943.             }
  944.             return this.checkCertificatoModiApplicativoById(param1, soglia);
  945.         }
  946.         if(actionName.equals(CHECK_CERTIFICATO_MODI_SERVIZIO_APPLICATIVO_BY_NOME)){
  947.             if(params.length != 2)
  948.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATO_MODI_SERVIZIO_APPLICATIVO_BY_NOME+"] Lunghezza parametri non corretta: "+params.length));
  949.            
  950.             String param1 = null;
  951.             if(params[0]!=null && !"".equals(params[0])){
  952.                 param1 = (String)params[0];
  953.             }
  954.            
  955.             int soglia = -1;
  956.             if(params[1] instanceof Integer) {
  957.                 soglia = (Integer)params[1];
  958.             }
  959.             else {
  960.                 soglia = Integer.valueOf(params[1].toString());
  961.             }
  962.            
  963.             if(param1==null) {
  964.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATO_MODI_SERVIZIO_APPLICATIVO_BY_NOME+"] "+PARAMETRO_NON_FORNITO));
  965.             }
  966.             return this.checkCertificatoModiApplicativoByNome(param1, soglia);
  967.         }
  968.        
  969.         if(actionName.equals(CHECK_CERTIFICATI_CONFIGURAZIONE_JVM)){
  970.             if(params.length != 1)
  971.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_CONFIGURAZIONE_JVM+"] Lunghezza parametri non corretta: "+params.length));
  972.            
  973.             int soglia = -1;
  974.             if(params[0] instanceof Integer) {
  975.                 soglia = (Integer)params[0];
  976.             }
  977.             else {
  978.                 soglia = Integer.valueOf(params[0].toString());
  979.             }
  980.            
  981.             return this.checkCertificatiJvm(soglia);
  982.         }
  983.         if(actionName.equals(CHECK_PROXY_CONFIGURAZIONE_JVM)){
  984.             return this.checkProxyJvm();
  985.         }
  986.        
  987.         if(actionName.equals(CHECK_CERTIFICATI_CONNETTORE_HTTPS_TOKEN_POLICY_VALIDAZIONE)){
  988.             if(params.length != 2 && params.length != 3)
  989.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_CONNETTORE_HTTPS_TOKEN_POLICY_VALIDAZIONE+"] Lunghezza parametri non corretta: "+params.length));
  990.            
  991.             String param1 = null;
  992.             if(params[0]!=null && !"".equals(params[0])){
  993.                 param1 = (String)params[0];
  994.             }
  995.            
  996.             String tipo = null;
  997.             if(params.length == 3 &&
  998.                 params[1]!=null && !"".equals(params[1])){
  999.                 tipo = (String)params[1];
  1000.             }
  1001.            
  1002.             int soglia = -1;
  1003.             if(params.length == 2) {
  1004.                 if(params[1] instanceof Integer) {
  1005.                     soglia = (Integer)params[1];
  1006.                 }
  1007.                 else {
  1008.                     soglia = Integer.valueOf(params[1].toString());
  1009.                 }
  1010.             }
  1011.             else {
  1012.                 if(params[2] instanceof Integer) {
  1013.                     soglia = (Integer)params[2];
  1014.                 }
  1015.                 else {
  1016.                     soglia = Integer.valueOf(params[2].toString());
  1017.                 }
  1018.             }
  1019.            
  1020.             if(params.length == 3) {
  1021.                 return this.checkCertificatiConnettoreHttpsTokenPolicyValidazione(param1, tipo, soglia);
  1022.             }
  1023.             else {
  1024.                 return this.checkCertificatiConnettoreHttpsTokenPolicyValidazione(param1, soglia);
  1025.             }
  1026.         }
  1027.         if(actionName.equals(CHECK_CERTIFICATI_VALIDAZIONE_JWT_TOKEN_POLICY_VALIDAZIONE)){
  1028.             if(params.length != 2)
  1029.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_VALIDAZIONE_JWT_TOKEN_POLICY_VALIDAZIONE+"] Lunghezza parametri non corretta: "+params.length));
  1030.            
  1031.             String param1 = null;
  1032.             if(params[0]!=null && !"".equals(params[0])){
  1033.                 param1 = (String)params[0];
  1034.             }
  1035.            
  1036.             int soglia = -1;
  1037.             if(params[1] instanceof Integer) {
  1038.                 soglia = (Integer)params[1];
  1039.             }
  1040.             else {
  1041.                 soglia = Integer.valueOf(params[1].toString());
  1042.             }
  1043.            
  1044.             return this.checkCertificatiValidazioneJwtTokenPolicyValidazione(param1, soglia);
  1045.         }
  1046.         if(actionName.equals(CHECK_CERTIFICATI_FORWARD_TO_JWT_TOKEN_POLICY_VALIDAZIONE)){
  1047.             if(params.length != 2)
  1048.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_FORWARD_TO_JWT_TOKEN_POLICY_VALIDAZIONE+"] Lunghezza parametri non corretta: "+params.length));
  1049.            
  1050.             String param1 = null;
  1051.             if(params[0]!=null && !"".equals(params[0])){
  1052.                 param1 = (String)params[0];
  1053.             }
  1054.            
  1055.             int soglia = -1;
  1056.             if(params[1] instanceof Integer) {
  1057.                 soglia = (Integer)params[1];
  1058.             }
  1059.             else {
  1060.                 soglia = Integer.valueOf(params[1].toString());
  1061.             }
  1062.            
  1063.             return this.checkCertificatiForwardToJwtTokenPolicyValidazione(param1, soglia);
  1064.         }
  1065.        
  1066.         if(actionName.equals(CHECK_CERTIFICATI_CONNETTORE_HTTPS_TOKEN_POLICY_NEGOZIAZIONE)){
  1067.             if(params.length != 2)
  1068.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_CONNETTORE_HTTPS_TOKEN_POLICY_NEGOZIAZIONE+"] Lunghezza parametri non corretta: "+params.length));
  1069.            
  1070.             String param1 = null;
  1071.             if(params[0]!=null && !"".equals(params[0])){
  1072.                 param1 = (String)params[0];
  1073.             }
  1074.            
  1075.             int soglia = -1;
  1076.             if(params[1] instanceof Integer) {
  1077.                 soglia = (Integer)params[1];
  1078.             }
  1079.             else {
  1080.                 soglia = Integer.valueOf(params[1].toString());
  1081.             }
  1082.            
  1083.             return this.checkCertificatiConnettoreHttpsTokenPolicyNegoziazione(param1, soglia);
  1084.         }
  1085.         if(actionName.equals(CHECK_CERTIFICATI_SIGNED_JWT_TOKEN_POLICY_NEGOZIAZIONE)){
  1086.             if(params.length != 2)
  1087.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_SIGNED_JWT_TOKEN_POLICY_NEGOZIAZIONE+"] Lunghezza parametri non corretta: "+params.length));
  1088.            
  1089.             String param1 = null;
  1090.             if(params[0]!=null && !"".equals(params[0])){
  1091.                 param1 = (String)params[0];
  1092.             }
  1093.            
  1094.             int soglia = -1;
  1095.             if(params[1] instanceof Integer) {
  1096.                 soglia = (Integer)params[1];
  1097.             }
  1098.             else {
  1099.                 soglia = Integer.valueOf(params[1].toString());
  1100.             }
  1101.            
  1102.             return this.checkCertificatiSignedJwtTokenPolicyNegoziazione(param1, soglia);
  1103.         }
  1104.        
  1105.         if(actionName.equals(CHECK_CERTIFICATI_CONNETTORE_HTTPS_ATTRIBUTE_AUTHORITY)){
  1106.             if(params.length != 2)
  1107.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_CONNETTORE_HTTPS_ATTRIBUTE_AUTHORITY+"] Lunghezza parametri non corretta: "+params.length));
  1108.            
  1109.             String param1 = null;
  1110.             if(params[0]!=null && !"".equals(params[0])){
  1111.                 param1 = (String)params[0];
  1112.             }
  1113.            
  1114.             int soglia = -1;
  1115.             if(params[1] instanceof Integer) {
  1116.                 soglia = (Integer)params[1];
  1117.             }
  1118.             else {
  1119.                 soglia = Integer.valueOf(params[1].toString());
  1120.             }
  1121.            
  1122.             return this.checkCertificatiConnettoreHttpsAttributeAuthority(param1, soglia);
  1123.         }
  1124.         if(actionName.equals(CHECK_CERTIFICATI_ATTRIBUTE_AUTHORITY_JWT_RICHIESTA)){
  1125.             if(params.length != 2)
  1126.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_ATTRIBUTE_AUTHORITY_JWT_RICHIESTA+"] Lunghezza parametri non corretta: "+params.length));
  1127.            
  1128.             String param1 = null;
  1129.             if(params[0]!=null && !"".equals(params[0])){
  1130.                 param1 = (String)params[0];
  1131.             }
  1132.            
  1133.             int soglia = -1;
  1134.             if(params[1] instanceof Integer) {
  1135.                 soglia = (Integer)params[1];
  1136.             }
  1137.             else {
  1138.                 soglia = Integer.valueOf(params[1].toString());
  1139.             }
  1140.            
  1141.             return this.checkCertificatiAttributeAuthorityJwtRichiesta(param1, soglia);
  1142.         }
  1143.         if(actionName.equals(CHECK_CERTIFICATI_ATTRIBUTE_AUTHORITY_JWT_RISPOSTA)){
  1144.             if(params.length != 2)
  1145.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_ATTRIBUTE_AUTHORITY_JWT_RISPOSTA+"] Lunghezza parametri non corretta: "+params.length));
  1146.            
  1147.             String param1 = null;
  1148.             if(params[0]!=null && !"".equals(params[0])){
  1149.                 param1 = (String)params[0];
  1150.             }
  1151.            
  1152.             int soglia = -1;
  1153.             if(params[1] instanceof Integer) {
  1154.                 soglia = (Integer)params[1];
  1155.             }
  1156.             else {
  1157.                 soglia = Integer.valueOf(params[1].toString());
  1158.             }
  1159.            
  1160.             return this.checkCertificatiAttributeAuthorityJwtRisposta(param1, soglia);
  1161.         }
  1162.        
  1163.         if(actionName.equals(CHECK_CERTIFICATI_MESSAGE_SECURITY_EROGAZIONE_BY_ID)){
  1164.             if(params.length != 2)
  1165.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_MESSAGE_SECURITY_EROGAZIONE_BY_ID+"] Lunghezza parametri non corretta: "+params.length));
  1166.            
  1167.             Long param1 = null;
  1168.             if(params[0]!=null && !"".equals(params[0])){
  1169.                 if(params[0] instanceof Long) {
  1170.                     param1 = (Long)params[0];
  1171.                 }
  1172.                 else {
  1173.                     param1 = Long.valueOf(params[0].toString());
  1174.                 }
  1175.                 if(param1<0){
  1176.                     param1 = null;
  1177.                 }
  1178.             }
  1179.            
  1180.             int soglia = -1;
  1181.             if(params[1] instanceof Integer) {
  1182.                 soglia = (Integer)params[1];
  1183.             }
  1184.             else {
  1185.                 soglia = Integer.valueOf(params[1].toString());
  1186.             }
  1187.            
  1188.             if(param1==null) {
  1189.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_MESSAGE_SECURITY_EROGAZIONE_BY_ID+"] parametro richiesto non fornito"));
  1190.             }
  1191.             return this.checkCertificatiMessageSecurityErogazioneById(param1, soglia);
  1192.         }
  1193.        
  1194.         if(actionName.equals(CHECK_CERTIFICATI_MESSAGE_SECURITY_FRUIZIONE_BY_ID)){
  1195.             if(params.length != 2)
  1196.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_MESSAGE_SECURITY_FRUIZIONE_BY_ID+"] Lunghezza parametri non corretta: "+params.length));
  1197.            
  1198.             Long param1 = null;
  1199.             if(params[0]!=null && !"".equals(params[0])){
  1200.                 if(params[0] instanceof Long) {
  1201.                     param1 = (Long)params[0];
  1202.                 }
  1203.                 else {
  1204.                     param1 = Long.valueOf(params[0].toString());
  1205.                 }
  1206.                 if(param1<0){
  1207.                     param1 = null;
  1208.                 }
  1209.             }
  1210.            
  1211.             int soglia = -1;
  1212.             if(params[1] instanceof Integer) {
  1213.                 soglia = (Integer)params[1];
  1214.             }
  1215.             else {
  1216.                 soglia = Integer.valueOf(params[1].toString());
  1217.             }
  1218.            
  1219.             if(param1==null) {
  1220.                 throw new MBeanException(new Exception("["+CHECK_CERTIFICATI_MESSAGE_SECURITY_FRUIZIONE_BY_ID+"] parametro richiesto non fornito"));
  1221.             }
  1222.             return this.checkCertificatiMessageSecurityFruizioneById(param1, soglia);
  1223.         }
  1224.        
  1225.         if(actionName.equals(ABILITA_PORTA_DELEGATA)){
  1226.             if(params.length != 1)
  1227.                 throw new MBeanException(new Exception("["+ABILITA_PORTA_DELEGATA+"] Lunghezza parametri non corretta: "+params.length));
  1228.            
  1229.             String param1 = null;
  1230.             if(params[0]!=null && !"".equals(params[0])){
  1231.                 param1 = (String)params[0];
  1232.             }
  1233.            
  1234.             return this.updateStatoPortaDelegata(param1, true);
  1235.         }
  1236.        
  1237.         if(actionName.equals(DISABILITA_PORTA_DELEGATA)){
  1238.             if(params.length != 1)
  1239.                 throw new MBeanException(new Exception("["+DISABILITA_PORTA_DELEGATA+"] Lunghezza parametri non corretta: "+params.length));
  1240.            
  1241.             String param1 = null;
  1242.             if(params[0]!=null && !"".equals(params[0])){
  1243.                 param1 = (String)params[0];
  1244.             }
  1245.            
  1246.             return this.updateStatoPortaDelegata(param1, false);
  1247.         }
  1248.        
  1249.         if(actionName.equals(ABILITA_PORTA_APPLICATIVA)){
  1250.             if(params.length != 1)
  1251.                 throw new MBeanException(new Exception("["+ABILITA_PORTA_APPLICATIVA+"] Lunghezza parametri non corretta: "+params.length));
  1252.            
  1253.             String param1 = null;
  1254.             if(params[0]!=null && !"".equals(params[0])){
  1255.                 param1 = (String)params[0];
  1256.             }
  1257.            
  1258.             return this.updateStatoPortaApplicativa(param1, true);
  1259.         }
  1260.        
  1261.         if(actionName.equals(DISABILITA_PORTA_APPLICATIVA)){
  1262.             if(params.length != 1)
  1263.                 throw new MBeanException(new Exception("["+DISABILITA_PORTA_APPLICATIVA+"] Lunghezza parametri non corretta: "+params.length));
  1264.            
  1265.             String param1 = null;
  1266.             if(params[0]!=null && !"".equals(params[0])){
  1267.                 param1 = (String)params[0];
  1268.             }
  1269.            
  1270.             return this.updateStatoPortaApplicativa(param1, false);
  1271.         }
  1272.        
  1273.         if(actionName.equals(ABILITA_CONNETTORE_MULTIPLO)){
  1274.             if(params.length != 2)
  1275.                 throw new MBeanException(new Exception("["+ABILITA_CONNETTORE_MULTIPLO+"] Lunghezza parametri non corretta: "+params.length));
  1276.            
  1277.             String param1 = null;
  1278.             if(params[0]!=null && !"".equals(params[0])){
  1279.                 param1 = (String)params[0];
  1280.             }
  1281.            
  1282.             String param2 = null;
  1283.             if(params[1]!=null && !"".equals(params[1])){
  1284.                 param2 = (String)params[1];
  1285.             }
  1286.            
  1287.             return this.updateStatoConnettoreMultiplo(param1, param2, true);
  1288.         }
  1289.        
  1290.         if(actionName.equals(DISABILITA_CONNETTORE_MULTIPLO)){
  1291.             if(params.length != 2)
  1292.                 throw new MBeanException(new Exception("["+DISABILITA_CONNETTORE_MULTIPLO+"] Lunghezza parametri non corretta: "+params.length));
  1293.            
  1294.             String param1 = null;
  1295.             if(params[0]!=null && !"".equals(params[0])){
  1296.                 param1 = (String)params[0];
  1297.             }
  1298.            
  1299.             String param2 = null;
  1300.             if(params[1]!=null && !"".equals(params[1])){
  1301.                 param2 = (String)params[1];
  1302.             }
  1303.            
  1304.             return this.updateStatoConnettoreMultiplo(param1, param2, false);
  1305.         }
  1306.        
  1307.         if(actionName.equals(ABILITA_CONNETTORE_MULTIPLO_USERNAME)){
  1308.             if(params.length != 3)
  1309.                 throw new MBeanException(new Exception("["+ABILITA_CONNETTORE_MULTIPLO_USERNAME+"] Lunghezza parametri non corretta: "+params.length));
  1310.            
  1311.             String param1 = null;
  1312.             if(params[0]!=null && !"".equals(params[0])){
  1313.                 param1 = (String)params[0];
  1314.             }
  1315.            
  1316.             String param2 = null;
  1317.             if(params[1]!=null && !"".equals(params[1])){
  1318.                 param2 = (String)params[1];
  1319.             }
  1320.            
  1321.             String param3 = null;
  1322.             if(params[2]!=null && !"".equals(params[2])){
  1323.                 param3 = (String)params[2];
  1324.             }
  1325.            
  1326.             return this.updateStatoConnettoreMultiplo(param1, param2, param3, true);
  1327.         }
  1328.        
  1329.         if(actionName.equals(DISABILITA_CONNETTORE_MULTIPLO_USERNAME)){
  1330.             if(params.length != 3)
  1331.                 throw new MBeanException(new Exception("["+DISABILITA_CONNETTORE_MULTIPLO_USERNAME+"] Lunghezza parametri non corretta: "+params.length));
  1332.            
  1333.             String param1 = null;
  1334.             if(params[0]!=null && !"".equals(params[0])){
  1335.                 param1 = (String)params[0];
  1336.             }
  1337.            
  1338.             String param2 = null;
  1339.             if(params[1]!=null && !"".equals(params[1])){
  1340.                 param2 = (String)params[1];
  1341.             }
  1342.            
  1343.             String param3 = null;
  1344.             if(params[2]!=null && !"".equals(params[2])){
  1345.                 param3 = (String)params[2];
  1346.             }
  1347.            
  1348.             return this.updateStatoConnettoreMultiplo(param1, param2, param3, false);
  1349.         }
  1350.        
  1351.         if(actionName.equals(ABILITA_SCHEDULING_CONNETTORE_MULTIPLO)){
  1352.             if(params.length != 2)
  1353.                 throw new MBeanException(new Exception("["+ABILITA_SCHEDULING_CONNETTORE_MULTIPLO+"] Lunghezza parametri non corretta: "+params.length));
  1354.            
  1355.             String param1 = null;
  1356.             if(params[0]!=null && !"".equals(params[0])){
  1357.                 param1 = (String)params[0];
  1358.             }
  1359.            
  1360.             String param2 = null;
  1361.             if(params[1]!=null && !"".equals(params[1])){
  1362.                 param2 = (String)params[1];
  1363.             }
  1364.            
  1365.             return this.updateSchedulingConnettoreMultiplo(param1, param2, true);
  1366.         }
  1367.        
  1368.         if(actionName.equals(DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO)){
  1369.             if(params.length != 2)
  1370.                 throw new MBeanException(new Exception("["+DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO+"] Lunghezza parametri non corretta: "+params.length));
  1371.            
  1372.             String param1 = null;
  1373.             if(params[0]!=null && !"".equals(params[0])){
  1374.                 param1 = (String)params[0];
  1375.             }
  1376.            
  1377.             String param2 = null;
  1378.             if(params[1]!=null && !"".equals(params[1])){
  1379.                 param2 = (String)params[1];
  1380.             }
  1381.            
  1382.             return this.updateSchedulingConnettoreMultiplo(param1, param2, false);
  1383.         }
  1384.        
  1385.         if(actionName.equals(ABILITA_SCHEDULING_CONNETTORE_MULTIPLO_USERNAME)){
  1386.             if(params.length != 3)
  1387.                 throw new MBeanException(new Exception("["+ABILITA_SCHEDULING_CONNETTORE_MULTIPLO_USERNAME+"] Lunghezza parametri non corretta: "+params.length));
  1388.            
  1389.             String param1 = null;
  1390.             if(params[0]!=null && !"".equals(params[0])){
  1391.                 param1 = (String)params[0];
  1392.             }
  1393.            
  1394.             String param2 = null;
  1395.             if(params[1]!=null && !"".equals(params[1])){
  1396.                 param2 = (String)params[1];
  1397.             }
  1398.            
  1399.             String param3 = null;
  1400.             if(params[2]!=null && !"".equals(params[2])){
  1401.                 param3 = (String)params[2];
  1402.             }
  1403.            
  1404.             return this.updateSchedulingConnettoreMultiplo(param1, param2, param3, true);
  1405.         }
  1406.        
  1407.         if(actionName.equals(DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO_USERNAME)){
  1408.             if(params.length != 3)
  1409.                 throw new MBeanException(new Exception("["+DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO_USERNAME+"] Lunghezza parametri non corretta: "+params.length));
  1410.            
  1411.             String param1 = null;
  1412.             if(params[0]!=null && !"".equals(params[0])){
  1413.                 param1 = (String)params[0];
  1414.             }
  1415.            
  1416.             String param2 = null;
  1417.             if(params[1]!=null && !"".equals(params[1])){
  1418.                 param2 = (String)params[1];
  1419.             }
  1420.            
  1421.             String param3 = null;
  1422.             if(params[2]!=null && !"".equals(params[2])){
  1423.                 param3 = (String)params[2];
  1424.             }
  1425.            
  1426.             return this.updateSchedulingConnettoreMultiplo(param1, param2, param3, false);
  1427.         }
  1428.        
  1429.         if(actionName.equals(ABILITA_SCHEDULING_CONNETTORE_MULTIPLO_RUNTIME)){
  1430.             if(params.length != 2)
  1431.                 throw new MBeanException(new Exception("["+ABILITA_SCHEDULING_CONNETTORE_MULTIPLO_RUNTIME+"] Lunghezza parametri non corretta: "+params.length));
  1432.            
  1433.             String param1 = null;
  1434.             if(params[0]!=null && !"".equals(params[0])){
  1435.                 param1 = (String)params[0];
  1436.             }
  1437.            
  1438.             String param2 = null;
  1439.             if(params[1]!=null && !"".equals(params[1])){
  1440.                 param2 = (String)params[1];
  1441.             }
  1442.            
  1443.             return this.updateSchedulingConnettoreMultiploMessaggiPresiInCarico(param1, param2, true);
  1444.         }
  1445.        
  1446.         if(actionName.equals(DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO_RUNTIME)){
  1447.             if(params.length != 2)
  1448.                 throw new MBeanException(new Exception("["+DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO_RUNTIME+"] Lunghezza parametri non corretta: "+params.length));
  1449.            
  1450.             String param1 = null;
  1451.             if(params[0]!=null && !"".equals(params[0])){
  1452.                 param1 = (String)params[0];
  1453.             }
  1454.            
  1455.             String param2 = null;
  1456.             if(params[1]!=null && !"".equals(params[1])){
  1457.                 param2 = (String)params[1];
  1458.             }
  1459.            
  1460.             return this.updateSchedulingConnettoreMultiploMessaggiPresiInCarico(param1, param2, false);
  1461.         }
  1462.        
  1463.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_ACCORDO_COOPERAZIONE)){
  1464.             if(params.length != 1)
  1465.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_ACCORDO_COOPERAZIONE+"] Lunghezza parametri non corretta: "+params.length));
  1466.            
  1467.             Long param1 = null;
  1468.             if(params[0]!=null && !"".equals(params[0])){
  1469.                 if(params[0] instanceof Long) {
  1470.                     param1 = (Long)params[0];
  1471.                 }
  1472.                 else {
  1473.                     param1 = Long.valueOf(params[0].toString());
  1474.                 }
  1475.                 if(param1<0){
  1476.                     param1 = null;
  1477.                 }
  1478.             }
  1479.            
  1480.             if(param1==null) {
  1481.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_ACCORDO_COOPERAZIONE+"] "+PARAMETRO_NON_FORNITO));
  1482.             }
  1483.             return this.ripulisciRiferimentiCacheAccordoCooperazione(param1);
  1484.         }
  1485.        
  1486.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_API)){
  1487.             if(params.length != 1)
  1488.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_API+"] Lunghezza parametri non corretta: "+params.length));
  1489.            
  1490.             Long param1 = null;
  1491.             if(params[0]!=null && !"".equals(params[0])){
  1492.                 if(params[0] instanceof Long) {
  1493.                     param1 = (Long)params[0];
  1494.                 }
  1495.                 else {
  1496.                     param1 = Long.valueOf(params[0].toString());
  1497.                 }
  1498.                 if(param1<0){
  1499.                     param1 = null;
  1500.                 }
  1501.             }
  1502.            
  1503.             if(param1==null) {
  1504.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_API+"] "+PARAMETRO_NON_FORNITO));
  1505.             }
  1506.             return this.ripulisciRiferimentiCacheApi(param1);
  1507.         }
  1508.        
  1509.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_EROGAZIONE)){
  1510.             if(params.length != 1)
  1511.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_EROGAZIONE+"] Lunghezza parametri non corretta: "+params.length));
  1512.            
  1513.             Long param1 = null;
  1514.             if(params[0]!=null && !"".equals(params[0])){
  1515.                 if(params[0] instanceof Long) {
  1516.                     param1 = (Long)params[0];
  1517.                 }
  1518.                 else {
  1519.                     param1 = Long.valueOf(params[0].toString());
  1520.                 }
  1521.                 if(param1<0){
  1522.                     param1 = null;
  1523.                 }
  1524.             }
  1525.            
  1526.             if(param1==null) {
  1527.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_EROGAZIONE+"] "+PARAMETRO_NON_FORNITO));
  1528.             }
  1529.             return this.ripulisciRiferimentiCacheErogazione(param1);
  1530.         }
  1531.        
  1532.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_FRUIZIONE)){
  1533.             if(params.length != 1)
  1534.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_FRUIZIONE+"] Lunghezza parametri non corretta: "+params.length));
  1535.            
  1536.             Long param1 = null;
  1537.             if(params[0]!=null && !"".equals(params[0])){
  1538.                 if(params[0] instanceof Long) {
  1539.                     param1 = (Long)params[0];
  1540.                 }
  1541.                 else {
  1542.                     param1 = Long.valueOf(params[0].toString());
  1543.                 }
  1544.                 if(param1<0){
  1545.                     param1 = null;
  1546.                 }
  1547.             }
  1548.            
  1549.             if(param1==null) {
  1550.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_FRUIZIONE+"] "+PARAMETRO_NON_FORNITO));
  1551.             }
  1552.             return this.ripulisciRiferimentiCacheFruizione(param1);
  1553.         }
  1554.        
  1555.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_SOGGETTO)){
  1556.             if(params.length != 1)
  1557.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_SOGGETTO+"] Lunghezza parametri non corretta: "+params.length));
  1558.            
  1559.             Long param1 = null;
  1560.             if(params[0]!=null && !"".equals(params[0])){
  1561.                 if(params[0] instanceof Long) {
  1562.                     param1 = (Long)params[0];
  1563.                 }
  1564.                 else {
  1565.                     param1 = Long.valueOf(params[0].toString());
  1566.                 }
  1567.                 if(param1<0){
  1568.                     param1 = null;
  1569.                 }
  1570.             }
  1571.            
  1572.             if(param1==null) {
  1573.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_SOGGETTO+"] "+PARAMETRO_NON_FORNITO));
  1574.             }
  1575.             return this.ripulisciRiferimentiCacheSoggetto(param1);
  1576.         }
  1577.        
  1578.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_APPLICATIVO)){
  1579.             if(params.length != 1)
  1580.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_APPLICATIVO+"] Lunghezza parametri non corretta: "+params.length));
  1581.            
  1582.             Long param1 = null;
  1583.             if(params[0]!=null && !"".equals(params[0])){
  1584.                 if(params[0] instanceof Long) {
  1585.                     param1 = (Long)params[0];
  1586.                 }
  1587.                 else {
  1588.                     param1 = Long.valueOf(params[0].toString());
  1589.                 }
  1590.                 if(param1<0){
  1591.                     param1 = null;
  1592.                 }
  1593.             }
  1594.            
  1595.             if(param1==null) {
  1596.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_APPLICATIVO+"] "+PARAMETRO_NON_FORNITO));
  1597.             }
  1598.             return this.ripulisciRiferimentiCacheApplicativo(param1);
  1599.         }
  1600.        
  1601.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_RUOLO)){
  1602.             if(params.length != 1)
  1603.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_RUOLO+"] Lunghezza parametri non corretta: "+params.length));
  1604.            
  1605.             Long param1 = null;
  1606.             if(params[0]!=null && !"".equals(params[0])){
  1607.                 if(params[0] instanceof Long) {
  1608.                     param1 = (Long)params[0];
  1609.                 }
  1610.                 else {
  1611.                     param1 = Long.valueOf(params[0].toString());
  1612.                 }
  1613.                 if(param1<0){
  1614.                     param1 = null;
  1615.                 }
  1616.             }
  1617.            
  1618.             if(param1==null) {
  1619.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_RUOLO+"] "+PARAMETRO_NON_FORNITO));
  1620.             }
  1621.             return this.ripulisciRiferimentiCacheRuolo(param1);
  1622.         }
  1623.        
  1624.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_SCOPE)){
  1625.             if(params.length != 1)
  1626.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_SCOPE+"] Lunghezza parametri non corretta: "+params.length));
  1627.            
  1628.             Long param1 = null;
  1629.             if(params[0]!=null && !"".equals(params[0])){
  1630.                 if(params[0] instanceof Long) {
  1631.                     param1 = (Long)params[0];
  1632.                 }
  1633.                 else {
  1634.                     param1 = Long.valueOf(params[0].toString());
  1635.                 }
  1636.                 if(param1<0){
  1637.                     param1 = null;
  1638.                 }
  1639.             }
  1640.            
  1641.             if(param1==null) {
  1642.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_SCOPE+"] "+PARAMETRO_NON_FORNITO));
  1643.             }
  1644.             return this.ripulisciRiferimentiCacheScope(param1);
  1645.         }
  1646.        
  1647.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_TOKEN_POLICY_VALIDAZIONE)){
  1648.             if(params.length != 1)
  1649.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_TOKEN_POLICY_VALIDAZIONE+"] Lunghezza parametri non corretta: "+params.length));
  1650.            
  1651.             Long param1 = null;
  1652.             if(params[0]!=null && !"".equals(params[0])){
  1653.                 if(params[0] instanceof Long) {
  1654.                     param1 = (Long)params[0];
  1655.                 }
  1656.                 else {
  1657.                     param1 = Long.valueOf(params[0].toString());
  1658.                 }
  1659.                 if(param1<0){
  1660.                     param1 = null;
  1661.                 }
  1662.             }
  1663.            
  1664.             if(param1==null) {
  1665.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_TOKEN_POLICY_VALIDAZIONE+"] "+PARAMETRO_NON_FORNITO));
  1666.             }
  1667.             return this.ripulisciRiferimentiCacheTokenPolicyValidazione(param1);
  1668.         }
  1669.        
  1670.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_TOKEN_POLICY_NEGOZIAZIONE)){
  1671.             if(params.length != 1)
  1672.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_TOKEN_POLICY_NEGOZIAZIONE+"] Lunghezza parametri non corretta: "+params.length));
  1673.            
  1674.             Long param1 = null;
  1675.             if(params[0]!=null && !"".equals(params[0])){
  1676.                 if(params[0] instanceof Long) {
  1677.                     param1 = (Long)params[0];
  1678.                 }
  1679.                 else {
  1680.                     param1 = Long.valueOf(params[0].toString());
  1681.                 }
  1682.                 if(param1<0){
  1683.                     param1 = null;
  1684.                 }
  1685.             }
  1686.            
  1687.             if(param1==null) {
  1688.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_TOKEN_POLICY_NEGOZIAZIONE+"] "+PARAMETRO_NON_FORNITO));
  1689.             }
  1690.             return this.ripulisciRiferimentiCacheTokenPolicyNegoziazione(param1);
  1691.         }
  1692.        
  1693.         if(actionName.equals(RIPULISCI_RIFERIMENTI_CACHE_ATTRIBUTE_AUTHORITY)){
  1694.             if(params.length != 1)
  1695.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_ATTRIBUTE_AUTHORITY+"] Lunghezza parametri non corretta: "+params.length));
  1696.            
  1697.             Long param1 = null;
  1698.             if(params[0]!=null && !"".equals(params[0])){
  1699.                 if(params[0] instanceof Long) {
  1700.                     param1 = (Long)params[0];
  1701.                 }
  1702.                 else {
  1703.                     param1 = Long.valueOf(params[0].toString());
  1704.                 }
  1705.                 if(param1<0){
  1706.                     param1 = null;
  1707.                 }
  1708.             }
  1709.            
  1710.             if(param1==null) {
  1711.                 throw new MBeanException(new Exception("["+RIPULISCI_RIFERIMENTI_CACHE_ATTRIBUTE_AUTHORITY+"] "+PARAMETRO_NON_FORNITO));
  1712.             }
  1713.             return this.ripulisciRiferimentiCacheAttributeAuthority(param1);
  1714.         }

  1715.         throw new UnsupportedOperationException("Operazione "+actionName+" sconosciuta");
  1716.     }
  1717.    
  1718.     /* MBean info */
  1719.     @Override
  1720.     public MBeanInfo getMBeanInfo(){
  1721.                
  1722.         // Descrizione della classe nel MBean
  1723.         String className = this.getClass().getName();
  1724.         String description = "Risorsa per la configurazione ("+this.openspcoopProperties.getVersione()+")";

  1725.         // MetaData per l'attributo abilitaCache
  1726.         MBeanAttributeInfo cacheAbilitataVAR = JMXUtils.MBEAN_ATTRIBUTE_INFO_CACHE_ABILITATA;

  1727.         // MetaData per l'attributo livelloMsgDiagnostici
  1728.         MBeanAttributeInfo livelloMsgDiagnosticiVAR
  1729.             = new MBeanAttributeInfo(ConfigurazionePdD.MSG_DIAGNOSTICI_SEVERITA_LIVELLO,String.class.getName(),
  1730.                         "Livello dei messaggi diagnostici emessi\n[off,fatal,errorProtocol,errorIntegration,infoProtocol,infoIntegration,debugLow,debugMedium,debugHigh,all]",
  1731.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1732.        
  1733.         // MetaData per l'attributo livelloMsgDiagnosticiHumanReadable
  1734.         MBeanAttributeInfo livelloMsgDiagnosticiLog4JVAR
  1735.             = new MBeanAttributeInfo(ConfigurazionePdD.MSG_DIAGNOSTICI_SEVERITA_LIVELLO_LOG4J,String.class.getName(),
  1736.                         "Livello dei messaggi diagnostici human readable emessi\n[off,fatal,errorProtocol,errorIntegration,infoProtocol,infoIntegration,debugLow,debugMedium,debugHigh,all]",
  1737.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1738.        
  1739.         // MetaData per l'attributo msgDiagnosticiAppender
  1740.         MBeanAttributeInfo msgDiagnosticiAppenderVAR
  1741.             = new MBeanAttributeInfo(ConfigurazionePdD.MSG_DIAGNOSTICI_APPENDER,String[].class.getName(),
  1742.                         "Appender personalizzati per la registrazione dei messaggi diagnostici emessi",
  1743.                             JMXUtils.JMX_ATTRIBUTE_READABLE,!JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1744.                            
  1745.         // MetaData per l'attributo tracciamentoAbilitato
  1746.         MBeanAttributeInfo tracciamentoAbilitatoVAR
  1747.             = new MBeanAttributeInfo(ConfigurazionePdD.TRACCIAMENTO_ABILITATO,boolean.class.getName(),
  1748.                         "Indicazione se e' abilito il tracciamento delle buste emesse/ricevute",
  1749.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1750.        
  1751.         // MetaData per l'attributo dumpBinarioPDAbilitato
  1752.         MBeanAttributeInfo dumpBinarioPDAbilitatoVAR
  1753.             = new MBeanAttributeInfo(ConfigurazionePdD.DUMP_BINARIO_PD_ABILITATO,boolean.class.getName(),
  1754.                         "Indicazione se e' abilito la registrazione dei dati binari transitati sulla Porta Delegata",
  1755.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1756.        
  1757.         // MetaData per l'attributo dumpBinarioPAAbilitato
  1758.         MBeanAttributeInfo dumpBinarioPAAbilitatoVAR
  1759.             = new MBeanAttributeInfo(ConfigurazionePdD.DUMP_BINARIO_PA_ABILITATO,boolean.class.getName(),
  1760.                         "Indicazione se e' abilito la registrazione dei dati binari transitati sulla Porta Applicativa",
  1761.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1762.        
  1763.         // MetaData per l'attributo tracciamentoAppender
  1764.         MBeanAttributeInfo tracciamentoAppenderVAR
  1765.             = new MBeanAttributeInfo(ConfigurazionePdD.TRACCIAMENTO_APPENDER,String[].class.getName(),
  1766.                         "Appender personalizzati per la registrazione delle buste emesse/ricevute",
  1767.                             JMXUtils.JMX_ATTRIBUTE_READABLE,!JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1768.        
  1769.         // MetaData per l'attributo log4jDiagnosticaAbilitato
  1770.         MBeanAttributeInfo log4jDiagnosticaAbilitatoVAR
  1771.             = new MBeanAttributeInfo(ConfigurazionePdD.LOG4J_DIAGNOSTICA_ABILITATO,boolean.class.getName(),
  1772.                         "Indicazione se è abilitato il logging su file govway_diagnostici.log",
  1773.                             JMXUtils.JMX_ATTRIBUTE_READABLE,!JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1774.        
  1775.         // MetaData per l'attributo log4jOpenSPCoopAbilitato
  1776.         MBeanAttributeInfo log4jOpenSPCoopAbilitatoVAR
  1777.             = new MBeanAttributeInfo(ConfigurazionePdD.LOG4J_OPENSPCOOP_ABILITATO,boolean.class.getName(),
  1778.                         "Indicazione se è abilitato il logging su file openspcoop2.log",
  1779.                             JMXUtils.JMX_ATTRIBUTE_READABLE,!JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1780.        
  1781.         // MetaData per l'attributo log4jIntegrationManagerAbilitato
  1782.         MBeanAttributeInfo log4jIntegrationManagerAbilitatoVAR
  1783.             = new MBeanAttributeInfo(ConfigurazionePdD.LOG4J_INTEGRATION_MANAGER_ABILITATO,boolean.class.getName(),
  1784.                         "Indicazione se è abilitato il logging su file openspcoop2_integrationManager.log",
  1785.                             JMXUtils.JMX_ATTRIBUTE_READABLE,!JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1786.        
  1787.         // MetaData per l'attributo log4jTracciamentoAbilitato
  1788.         MBeanAttributeInfo log4jTracciamentoAbilitatoVAR
  1789.             = new MBeanAttributeInfo(ConfigurazionePdD.LOG4J_DIAGNOSTICA_ABILITATO,boolean.class.getName(),
  1790.                         "Indicazione se è abilitato il logging su file govway_tracciamento.log",
  1791.                             JMXUtils.JMX_ATTRIBUTE_READABLE,!JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1792.        
  1793.         // MetaData per l'attributo log4jDumpAbilitato
  1794.         MBeanAttributeInfo log4jDumpAbilitatoVAR
  1795.             = new MBeanAttributeInfo(ConfigurazionePdD.LOG4J_DUMP_ABILITATO,boolean.class.getName(),
  1796.                         "Indicazione se è abilitato il logging su file openspcoop2_dump.log",
  1797.                             JMXUtils.JMX_ATTRIBUTE_READABLE,!JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1798.        
  1799.         // MetaData per l'attributo erroriStatusCodeAbilitatoVAR
  1800.         MBeanAttributeInfo erroriStatusCodeAbilitatoVAR
  1801.             = new MBeanAttributeInfo(ConfigurazionePdD.ERRORI_STATUS_CODE_ABILITATO,boolean.class.getName(),
  1802.                         "Indicazione se è abilitato la generazione dello status code negli errori generati dal Gateway",
  1803.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1804.        
  1805.         // MetaData per l'attributo erroriInstanceIdAbilitatoVAR
  1806.         MBeanAttributeInfo erroriInstanceIdAbilitatoVAR
  1807.             = new MBeanAttributeInfo(ConfigurazionePdD.ERRORI_INSTANCE_ID_ABILITATO,boolean.class.getName(),
  1808.                         "Indicazione se è abilitato la generazione dell'identificativo dell'API invocata (instance) negli errori generati dal Gateway",
  1809.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);

  1810.         // MetaData per l'attributo erroriForceSpecificErrorTypeInternalBadRequestVAR
  1811.         MBeanAttributeInfo erroriForceSpecificErrorTypeInternalBadRequestVAR
  1812.             = new MBeanAttributeInfo(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_BAD_REQUEST,boolean.class.getName(),
  1813.                         "Indicazione se è abilitato la generazione di uno specifico tipo di errore per la gestione fallita di una richiesta, dovuta ad una errata configurazione del Gateway",
  1814.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1815.        
  1816.         // MetaData per l'attributo erroriForceSpecificErrorTypeBadResponseVAR
  1817.         MBeanAttributeInfo erroriForceSpecificErrorTypeBadResponseVAR
  1818.             = new MBeanAttributeInfo(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_BAD_RESPONSE,boolean.class.getName(),
  1819.                         "Indicazione se è abilitato la generazione di uno specifico tipo di errore per la gestione fallita di una risposta, dovuta alla risposta ritornata dal backend",
  1820.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1821.        
  1822.         // MetaData per l'attributo erroriForceSpecificErrorTypeInternalResponseErrorVAR
  1823.         MBeanAttributeInfo erroriForceSpecificErrorTypeInternalResponseErrorVAR
  1824.             = new MBeanAttributeInfo(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_RESPONSE_ERROR,boolean.class.getName(),
  1825.                         "Indicazione se è abilitato la generazione di uno specifico tipo di errore per la gestione fallita di una risposta, dovuta ad una errata configurazione del Gateway",
  1826.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1827.            
  1828.         // MetaData per l'attributo erroriForceSpecificErrorTypeInternalErrorVAR
  1829.         MBeanAttributeInfo erroriForceSpecificErrorTypeInternalErrorVAR
  1830.             = new MBeanAttributeInfo(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_ERROR,boolean.class.getName(),
  1831.                         "Indicazione se è abilitato la generazione di uno specifico tipo di errore per la gestione fallita di una richiesta, dovuta ad un malfunzionamento del Gateway",
  1832.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);

  1833.         // MetaData per l'attributo erroriForceSpecificDetailsVAR
  1834.         MBeanAttributeInfo erroriForceSpecificDetailsVAR
  1835.             = new MBeanAttributeInfo(ConfigurazionePdD.ERRORI_FORCE_SPECIFIC_DETAILS,boolean.class.getName(),
  1836.                         "Indicazione se è abilitato la generazione di un dettaglio specifico negli errori generati dal Gateway",
  1837.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1838.        
  1839.         // MetaData per l'attributo erroriSoapUseGovWayStatusAsFaultCodeVAR
  1840.         MBeanAttributeInfo erroriSoapUseGovWayStatusAsFaultCodeVAR
  1841.             = new MBeanAttributeInfo(ConfigurazionePdD.ERRORI_SOAP_USE_GOVWAY_STATUS_AS_FAULT_CODE,boolean.class.getName(),
  1842.                         "Indicazione se è abilitato la generazione di un codice di errore di dettaglio GovWay come FaultCode negli errori SOAP generati dal Gateway",
  1843.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1844.        
  1845.         // MetaData per l'attributo erroriSoapGenerateHttpHeaderGovWayCodeVAR
  1846.         MBeanAttributeInfo erroriSoapGenerateHttpHeaderGovWayCodeVAR
  1847.             = new MBeanAttributeInfo(ConfigurazionePdD.ERRORI_SOAP_GENERATE_HTTP_HEADER_GOVWAY_CODE,boolean.class.getName(),
  1848.                         "Indicazione se è abilitato la generazione del codice http di errore in un header http negli errori SOAP generati dal Gateway",
  1849.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1850.        
  1851.         // MetaData per l'attributo timerConsegnaContenutiApplicativiVAR
  1852.         MBeanAttributeInfo timerConsegnaContenutiApplicativiVAR
  1853.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_CONSEGNA_CONTENUTI_APPLICATIVI,String.class.getName(),
  1854.                         "Indicazione se è abilitato il timer '"+TimerConsegnaContenutiApplicativiThread.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1855.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);

  1856.         // MetaData per l'attributo timerEventiVAR
  1857.         MBeanAttributeInfo timerEventiVAR
  1858.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_EVENTI,String.class.getName(),
  1859.                         "Indicazione se è abilitato il timer '"+TimerEventiThread.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1860.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);

  1861.         // MetaData per l'attributo timerFileSystemRecoveryVAR
  1862.         MBeanAttributeInfo timerFileSystemRecoveryVAR
  1863.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_FILE_SYSTEM_RECOVERY,String.class.getName(),
  1864.                         "Indicazione se è abilitato il timer '"+TimerFileSystemRecoveryThread.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1865.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1866.        
  1867.         // MetaData per l'attributo timerGestoreBusteOnewayNonRiscontrateVAR
  1868.         MBeanAttributeInfo timerGestoreBusteOnewayNonRiscontrateVAR
  1869.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_BUSTE_ONEWAY_NON_RISCONTRATE,String.class.getName(),
  1870.                         "Indicazione se è abilitato il timer '"+TimerGestoreBusteNonRiscontrate.ID_MODULO+"' (oneway) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1871.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1872.        
  1873.         // MetaData per l'attributo timerGestoreBusteAsincroneNonRiscontrateVAR
  1874.         MBeanAttributeInfo timerGestoreBusteAsincroneNonRiscontrateVAR
  1875.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_BUSTE_ASINCRONE_NON_RISCONTRATE,String.class.getName(),
  1876.                         "Indicazione se è abilitato il timer '"+TimerGestoreBusteNonRiscontrate.ID_MODULO+"' (asincroni) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1877.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1878.        
  1879.         // MetaData per l'attributo timerGestoreMessaggiPuliziaMessaggiEliminatiVAR
  1880.         MBeanAttributeInfo timerGestoreMessaggiPuliziaMessaggiEliminatiVAR
  1881.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_ELIMINATI,String.class.getName(),
  1882.                         "Indicazione se è abilitato il timer '"+TimerGestoreMessaggi.ID_MODULO+"' (eliminazione logica) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1883.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1884.        
  1885.         // MetaData per l'attributo timerGestoreMessaggiPuliziaMessaggiScadutiVAR
  1886.         MBeanAttributeInfo timerGestoreMessaggiPuliziaMessaggiScadutiVAR
  1887.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_SCADUTI,String.class.getName(),
  1888.                         "Indicazione se è abilitato il timer '"+TimerGestoreMessaggi.ID_MODULO+"' (scaduti) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1889.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1890.        
  1891.         // MetaData per l'attributo timerGestoreMessaggiPuliziaMessaggiNonGestitiVAR
  1892.         MBeanAttributeInfo timerGestoreMessaggiPuliziaMessaggiNonGestitiVAR
  1893.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_MESSAGGI_NON_GESTITI,String.class.getName(),
  1894.                         "Indicazione se è abilitato il timer '"+TimerGestoreMessaggi.ID_MODULO+"' (non gestiti) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1895.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1896.        
  1897.         // MetaData per l'attributo timerGestoreMessaggiPuliziaCorrelazioneApplicativaVAR
  1898.         MBeanAttributeInfo timerGestoreMessaggiPuliziaCorrelazioneApplicativaVAR
  1899.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_PULIZIA_CORRELAZIONE_APPLICATIVA,String.class.getName(),
  1900.                         "Indicazione se è abilitato il timer '"+TimerGestoreMessaggi.ID_MODULO+"' (correlazione applicativa) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1901.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1902.        
  1903.         // MetaData per l'attributo timerGestoreMessaggiVerificaConnessioniAttiveVAR
  1904.         MBeanAttributeInfo timerGestoreMessaggiVerificaConnessioniAttiveVAR
  1905.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_MESSAGGI_VERIFICA_CONNESSIONI_ATTIVE,String.class.getName(),
  1906.                         "Indicazione se è abilitato il timer '"+TimerGestoreMessaggi.ID_MODULO+"' (verifica connessioni attive) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1907.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1908.        
  1909.         // MetaData per l'attributo timerGestorePuliziaMessaggiAnomaliVAR
  1910.         MBeanAttributeInfo timerGestorePuliziaMessaggiAnomaliVAR
  1911.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_PULIZIA_MESSAGGI_ANOMALI,String.class.getName(),
  1912.                         "Indicazione se è abilitato il timer '"+TimerGestorePuliziaMessaggiAnomali.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1913.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1914.        
  1915.         // MetaData per l'attributo timerGestoreRepositoryBusteVAR
  1916.         MBeanAttributeInfo timerGestoreRepositoryBusteVAR
  1917.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_REPOSITORY_BUSTE,String.class.getName(),
  1918.                         "Indicazione se è abilitato il timer '"+TimerGestoreRepositoryBuste.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1919.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1920.        
  1921.         // MetaData per l'attributo timerMonitoraggioRisorseThreadVAR
  1922.         MBeanAttributeInfo timerMonitoraggioRisorseThreadVAR
  1923.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_MONITORAGGIO_RISORSE_THREAD,String.class.getName(),
  1924.                         "Indicazione se è abilitato il timer '"+TimerMonitoraggioRisorseThread.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1925.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1926.        
  1927.         // MetaData per l'attributo timerRepositoryStatefulThreadVAR
  1928.         MBeanAttributeInfo timerRepositoryStatefulThreadVAR
  1929.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_REPOSITORY_STATEFUL_THREAD,String.class.getName(),
  1930.                         "Indicazione se è abilitato il timer '"+TimerRepositoryStatefulThread.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1931.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1932.        
  1933.         // MetaData per l'attributo timerStatisticheOrarieVAR
  1934.         MBeanAttributeInfo timerStatisticheOrarieVAR
  1935.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_STATISTICHE_ORARIE,String.class.getName(),
  1936.                         "Indicazione se è abilitato il timer '"+TimerStatisticheThread.ID_MODULO+"' (orarie) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1937.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1938.        
  1939.         // MetaData per l'attributo timerStatisticheGiornaliereVAR
  1940.         MBeanAttributeInfo timerStatisticheGiornaliereVAR
  1941.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_STATISTICHE_GIORNALIERE,String.class.getName(),
  1942.                         "Indicazione se è abilitato il timer '"+TimerStatisticheThread.ID_MODULO+"' (giornaliere) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1943.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1944.        
  1945.         // MetaData per l'attributo timerStatisticheSettimanaliVAR
  1946.         MBeanAttributeInfo timerStatisticheSettimanaliVAR
  1947.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_STATISTICHE_SETTIMANALI,String.class.getName(),
  1948.                         "Indicazione se è abilitato il timer '"+TimerStatisticheThread.ID_MODULO+"' (settimanali) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1949.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1950.        
  1951.         // MetaData per l'attributo timerStatisticheMensiliVAR
  1952.         MBeanAttributeInfo timerStatisticheMensiliVAR
  1953.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_STATISTICHE_MENSILI,String.class.getName(),
  1954.                         "Indicazione se è abilitato il timer '"+TimerStatisticheThread.ID_MODULO+"' (mensili) ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1955.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1956.        
  1957.         // MetaData per l'attributo timerGestoreChiaviVAR
  1958.         MBeanAttributeInfo timerGestoreChiaviVAR
  1959.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_CHIAVI_PDND,String.class.getName(),
  1960.                         "Indicazione se è abilitato il timer '"+TimerGestoreChiaviPDND.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1961.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1962.        
  1963.         // MetaData per l'attributo timerGestoreCacheChiaviVAR
  1964.         MBeanAttributeInfo timerGestoreCacheChiaviVAR
  1965.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_GESTORE_CACHE_CHIAVI_PDND,String.class.getName(),
  1966.                         "Indicazione se è abilitato il timer '"+TimerGestoreCacheChiaviPDND.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1967.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);

  1968.         // MetaData per l'attributo timerThresholdThreadVAR
  1969.         MBeanAttributeInfo timerThresholdThreadVAR
  1970.             = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_THRESHOLD_THREAD,String.class.getName(),
  1971.                         "Indicazione se è abilitato il timer '"+TimerThresholdThread.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1972.                             JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);
  1973.        
  1974.         // MetaData per l'attributo timerClusterDinamicoVAR
  1975.         MBeanAttributeInfo timerClusterDinamicoVAR
  1976.         = new MBeanAttributeInfo(ConfigurazionePdD.TIMER_CLUSTER_DINAMICO,String.class.getName(),
  1977.                 "Indicazione se è abilitato il timer '"+TimerClusterDinamicoThread.ID_MODULO+"' ("+TimerState.ENABLED.name()+"/"+TimerState.DISABLED.name()+")",
  1978.                 JMXUtils.JMX_ATTRIBUTE_READABLE,JMXUtils.JMX_ATTRIBUTE_WRITABLE,!JMXUtils.JMX_ATTRIBUTE_IS_GETTER);

  1979.         // MetaData per l'operazione resetCache
  1980.         MBeanOperationInfo resetCacheOP = JMXUtils.MBEAN_OPERATION_RESET_CACHE;
  1981.                
  1982.         // MetaData per l'operazione prefillCache
  1983.         MBeanOperationInfo prefillCacheOP = JMXUtils.MBEAN_OPERATION_PREFILL_CACHE;
  1984.        
  1985.         // MetaData per l'operazione printStatCache
  1986.         MBeanOperationInfo printStatCacheOP = JMXUtils.MBEAN_OPERATION_PRINT_STATS_CACHE;
  1987.        
  1988.         // MetaData per l'operazione disabilitaCache
  1989.         MBeanOperationInfo disabilitaCacheOP = JMXUtils.MBEAN_OPERATION_DISABILITA_CACHE;
  1990.        
  1991.         // MetaData per l'operazione abilitaCache con parametri
  1992.         MBeanOperationInfo abilitaCacheParametriOP = JMXUtils.MBEAN_OPERATION_ABILITA_CACHE_CON_PARAMETRI;
  1993.        
  1994.         // MetaData per l'operazione listKeysCache
  1995.         MBeanOperationInfo listKeysCacheOP = JMXUtils.MBEAN_OPERATION_LIST_KEYS_CACHE;

  1996.         // MetaData per l'operazione getObjectCache
  1997.         MBeanOperationInfo getObjectCacheOP = JMXUtils.MBEAN_OPERATION_GET_OBJECT_CACHE;
  1998.        
  1999.         // MetaData per l'operazione removeObjectCache
  2000.         MBeanOperationInfo removeObjectCacheOP = JMXUtils.MBEAN_OPERATION_REMOVE_OBJECT_CACHE;
  2001.                
  2002.         // MetaData per l'operazione checkConettoreById
  2003.         MBeanOperationInfo checkConnettoreById
  2004.         = new MBeanOperationInfo(CHECK_CONNETTORE_BY_ID,"Verifica la raggiungibilità del connettore con id fornito come parametro",
  2005.             new MBeanParameterInfo[]{
  2006.                 new MBeanParameterInfo("idConnettore",long.class.getName(),"Identificativo del connettore"),
  2007.             },
  2008.             String.class.getName(),
  2009.             MBeanOperationInfo.ACTION);
  2010.        
  2011.         // MetaData per l'operazione checkConettoreByNome
  2012.         MBeanOperationInfo checkConnettoreByNome
  2013.         = new MBeanOperationInfo(CHECK_CONNETTORE_BY_NOME,"Verifica la raggiungibilità del connettore con nome fornito come parametro",
  2014.             new MBeanParameterInfo[]{
  2015.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del connettore"),
  2016.             },
  2017.             String.class.getName(),
  2018.             MBeanOperationInfo.ACTION);
  2019.        
  2020.         // MetaData per l'operazione checkConnettoreTokenPolicyValidazione
  2021.         MBeanOperationInfo checkConnettoreTokenPolicyValidazione
  2022.         = new MBeanOperationInfo(CHECK_CONNETTORE_BY_NOME,"Verifica la raggiungibilità dei connettori definiti nella Token Policy di validazione con nome fornito come parametro",
  2023.             new MBeanParameterInfo[]{
  2024.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Validazione"),
  2025.             },
  2026.             String.class.getName(),
  2027.             MBeanOperationInfo.ACTION);
  2028.         MBeanOperationInfo checkConnettoreTokenPolicyValidazione_2
  2029.         = new MBeanOperationInfo(CHECK_CONNETTORE_BY_NOME,"Verifica la raggiungibilità dei connettori definiti nella Token Policy di validazione con nome fornito come parametro",
  2030.             new MBeanParameterInfo[]{
  2031.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Validazione"),
  2032.                 new MBeanParameterInfo("tipoConnettore",String.class.getName(),"Tipo del connettore da verificare ["+ConnettoreCheck.POLICY_TIPO_ENDPOINT_DYNAMIC_DISCOVERY+","+ConnettoreCheck.POLICY_TIPO_ENDPOINT_VALIDAZIONE_JWT+","+ConnettoreCheck.POLICY_TIPO_ENDPOINT_INTROSPECTION+","+ConnettoreCheck.POLICY_TIPO_ENDPOINT_USERINFO+"]"),
  2033.             },
  2034.             String.class.getName(),
  2035.             MBeanOperationInfo.ACTION);
  2036.        
  2037.         // MetaData per l'operazione checkConnettoreTokenPolicyNegoziazione
  2038.         MBeanOperationInfo checkConnettoreTokenPolicyNegoziazione
  2039.         = new MBeanOperationInfo(CHECK_CONNETTORE_BY_NOME,"Verifica la raggiungibilità del connettore definito nella Token Policy di negoziazione con nome fornito come parametro",
  2040.             new MBeanParameterInfo[]{
  2041.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Negoziazione"),
  2042.             },
  2043.             String.class.getName(),
  2044.             MBeanOperationInfo.ACTION);
  2045.        
  2046.         // MetaData per l'operazione checkConnettoreAttributeAuthority
  2047.         MBeanOperationInfo checkConnettoreAttributeAuthority
  2048.         = new MBeanOperationInfo(CHECK_CONNETTORE_BY_NOME,"Verifica la raggiungibilità del connettore definito nell'AttributeAuthority con nome fornito come parametro",
  2049.             new MBeanParameterInfo[]{
  2050.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome dell'AttributeAuthority"),
  2051.             },
  2052.             String.class.getName(),
  2053.             MBeanOperationInfo.ACTION);

  2054.         // MetaData per l'operazione getCertificatiConnettoreById
  2055.         MBeanOperationInfo getCertificatiConnettoreById
  2056.         = new MBeanOperationInfo(GET_CERTIFICATI_CONNETTORE_BY_ID,"Recupera i certificati server del connettore con id fornito come parametro",
  2057.             new MBeanParameterInfo[]{
  2058.                 new MBeanParameterInfo("idConnettore",long.class.getName(),"Identificativo del connettore"),
  2059.             },
  2060.             String.class.getName(),
  2061.             MBeanOperationInfo.ACTION);
  2062.        
  2063.         // MetaData per l'operazione getCertificatiConnettoreByNome
  2064.         MBeanOperationInfo getCertificatiConnettoreByNome
  2065.         = new MBeanOperationInfo(GET_CERTIFICATI_CONNETTORE_BY_NOME,"Recupera i certificati server del connettore con nome fornito come parametro",
  2066.             new MBeanParameterInfo[]{
  2067.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del connettore"),
  2068.             },
  2069.             String.class.getName(),
  2070.             MBeanOperationInfo.ACTION);
  2071.        
  2072.         // MetaData per l'operazione getCertificatiConnettoreTokenPolicyValidazione
  2073.         MBeanOperationInfo getCertificatiConnettoreTokenPolicyValidazione
  2074.         = new MBeanOperationInfo(GET_CERTIFICATI_TOKEN_POLICY_VALIDATION,"Recupera i certificati server dell'endpoit definito nella token policy di validazione con nome fornito come parametro",
  2075.             new MBeanParameterInfo[]{
  2076.                     new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Validazione"),
  2077.             },
  2078.             String.class.getName(),
  2079.             MBeanOperationInfo.ACTION);
  2080.        
  2081.         // MetaData per l'operazione getCertificatiConnettoreTokenPolicyValidazione_2
  2082.         MBeanOperationInfo getCertificatiConnettoreTokenPolicyValidazione_2
  2083.         = new MBeanOperationInfo(GET_CERTIFICATI_TOKEN_POLICY_VALIDATION,"Recupera i certificati server dell'endpoit definito nella token policy di validazione con nome fornito come parametro",
  2084.             new MBeanParameterInfo[]{
  2085.                     new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Validazione"),
  2086.                     new MBeanParameterInfo("tipoConnettore",String.class.getName(),"Tipo del connettore da verificare ["+ConnettoreCheck.POLICY_TIPO_ENDPOINT_DYNAMIC_DISCOVERY+","+ConnettoreCheck.POLICY_TIPO_ENDPOINT_VALIDAZIONE_JWT+","+ConnettoreCheck.POLICY_TIPO_ENDPOINT_INTROSPECTION+","+ConnettoreCheck.POLICY_TIPO_ENDPOINT_USERINFO+"]"),
  2087.             },
  2088.             String.class.getName(),
  2089.             MBeanOperationInfo.ACTION);
  2090.        
  2091.         // MetaData per l'operazione getCertificatiConnettoreTokenPolicyNegoziazione
  2092.         MBeanOperationInfo getCertificatiConnettoreTokenPolicyNegoziazione
  2093.         = new MBeanOperationInfo(GET_CERTIFICATI_TOKEN_POLICY_VALIDATION,"Recupera i certificati server dell'endpoit definito nella token policy di negoziazione con nome fornito come parametro",
  2094.             new MBeanParameterInfo[]{
  2095.                     new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Negoziazione"),
  2096.             },
  2097.             String.class.getName(),
  2098.             MBeanOperationInfo.ACTION);
  2099.        
  2100.         // MetaData per l'operazione getCertificatiConnettoreAttributeAuthority
  2101.         MBeanOperationInfo getCertificatiConnettoreAttributeAuthority
  2102.         = new MBeanOperationInfo(GET_CERTIFICATI_TOKEN_POLICY_VALIDATION,"Recupera i certificati server dell'endpoit definito nell'AttributeAuthority con nome fornito come parametro",
  2103.             new MBeanParameterInfo[]{
  2104.                     new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome dell'AttributeAuthority"),
  2105.             },
  2106.             String.class.getName(),
  2107.             MBeanOperationInfo.ACTION);
  2108.            
  2109.         // MetaData per l'operazione checkCertificatiConnettoreHttpsById
  2110.         MBeanOperationInfo checkCertificatiConnettoreHttpsById
  2111.         = new MBeanOperationInfo(CHECK_CERTIFICATI_CONNETTORE_HTTPS_BY_ID,"Verifica i certificati presenti nei keystore e truststore del connettore https che possiede l'id fornito come parametro",
  2112.             new MBeanParameterInfo[]{
  2113.                 new MBeanParameterInfo("idConnettore",long.class.getName(),"Identificativo del connettore"),
  2114.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2115.             },
  2116.             String.class.getName(),
  2117.             MBeanOperationInfo.ACTION);
  2118.        
  2119.         // MetaData per l'operazione checkCertificatoApplicativoById
  2120.         MBeanOperationInfo checkCertificatoApplicativoById
  2121.         = new MBeanOperationInfo(CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_ID,"Verifica i certificati client associati all'applicativo che possiede l'id fornito come parametro",
  2122.             new MBeanParameterInfo[]{
  2123.                 new MBeanParameterInfo("idApplicativo",long.class.getName(),"Identificativo dell'applicativo"),
  2124.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2125.             },
  2126.             String.class.getName(),
  2127.             MBeanOperationInfo.ACTION);
  2128.        
  2129.         // MetaData per l'operazione checkCertificatoApplicativoByNome
  2130.         MBeanOperationInfo checkCertificatoApplicativoByNome
  2131.         = new MBeanOperationInfo(CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_NOME,"Verifica i certificati client associati all'applicativo che possiede l'id fornito come parametro (formato: nomeApplicativo@tipoSoggetto/nomeSoggetto)",
  2132.             new MBeanParameterInfo[]{
  2133.                 new MBeanParameterInfo("idApplicativo",String.class.getName(),"Identificativo dell'applicativo"),
  2134.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2135.             },
  2136.             String.class.getName(),
  2137.             MBeanOperationInfo.ACTION);
  2138.        
  2139.         // MetaData per l'operazione checkCertificatoModIApplicativoById
  2140.         MBeanOperationInfo checkCertificatoModIApplicativoById
  2141.         = new MBeanOperationInfo(CHECK_CERTIFICATO_MODI_SERVIZIO_APPLICATIVO_BY_ID,"Verifica il keystore ModI associato all'applicativo che possiede l'id fornito come parametro",
  2142.             new MBeanParameterInfo[]{
  2143.                 new MBeanParameterInfo("idApplicativo",long.class.getName(),"Identificativo dell'applicativo"),
  2144.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2145.             },
  2146.             String.class.getName(),
  2147.             MBeanOperationInfo.ACTION);
  2148.        
  2149.         // MetaData per l'operazione checkCertificatoModIApplicativoByNome
  2150.         MBeanOperationInfo checkCertificatoModIApplicativoByNome
  2151.         = new MBeanOperationInfo(CHECK_CERTIFICATO_SERVIZIO_APPLICATIVO_BY_NOME,"Verifica il keystore ModI associato all'applicativo che possiede l'id fornito come parametro (formato: nomeApplicativo@tipoSoggetto/nomeSoggetto)",
  2152.             new MBeanParameterInfo[]{
  2153.                 new MBeanParameterInfo("idApplicativo",String.class.getName(),"Identificativo dell'applicativo"),
  2154.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2155.             },
  2156.             String.class.getName(),
  2157.             MBeanOperationInfo.ACTION);
  2158.        
  2159.         // MetaData per l'operazione checkCertificatiJvm
  2160.         MBeanOperationInfo checkCertificatiJvm
  2161.         = new MBeanOperationInfo(CHECK_CERTIFICATI_CONFIGURAZIONE_JVM,"Verifica il keystore e truststore associato alla jvm",
  2162.             new MBeanParameterInfo[]{
  2163.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2164.             },
  2165.             String.class.getName(),
  2166.             MBeanOperationInfo.ACTION);
  2167.        
  2168.         // MetaData per l'operazione checkProxyJvm
  2169.         MBeanOperationInfo checkProxyJvm
  2170.         = new MBeanOperationInfo(CHECK_PROXY_CONFIGURAZIONE_JVM,"Verifica l'eventuale proxy associato alla jvm",
  2171.             null,
  2172.             String.class.getName(),
  2173.             MBeanOperationInfo.ACTION);
  2174.        
  2175.         // MetaData per l'operazione checkCertificatiConnettoreHttpsTokenPolicyValidazione
  2176.         MBeanOperationInfo checkCertificatiConnettoreHttpsTokenPolicyValidazione
  2177.         = new MBeanOperationInfo(CHECK_CERTIFICATI_CONNETTORE_HTTPS_TOKEN_POLICY_VALIDAZIONE,"Verifica i certificati del connettore https definito nella Token Policy di validazione con nome fornito come parametro",
  2178.             new MBeanParameterInfo[]{
  2179.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Validazione"),
  2180.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2181.             },
  2182.             String.class.getName(),
  2183.             MBeanOperationInfo.ACTION);
  2184.         MBeanOperationInfo checkCertificatiConnettoreHttpsTokenPolicyValidazione_2
  2185.         = new MBeanOperationInfo(CHECK_CERTIFICATI_CONNETTORE_HTTPS_TOKEN_POLICY_VALIDAZIONE,"Verifica i certificati del connettore https definito nella Token Policy di validazione con nome fornito come parametro",
  2186.             new MBeanParameterInfo[]{
  2187.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Validazione"),
  2188.                 new MBeanParameterInfo("tipoConnettore",String.class.getName(),"Tipo del connettore da verificare ["+ConnettoreCheck.POLICY_TIPO_ENDPOINT_DYNAMIC_DISCOVERY+","+ConnettoreCheck.POLICY_TIPO_ENDPOINT_VALIDAZIONE_JWT+","+ConnettoreCheck.POLICY_TIPO_ENDPOINT_INTROSPECTION+","+ConnettoreCheck.POLICY_TIPO_ENDPOINT_USERINFO+"]"),
  2189.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2190.             },
  2191.             String.class.getName(),
  2192.             MBeanOperationInfo.ACTION);
  2193.        
  2194.         // MetaData per l'operazione checkCertificatiValidazioneJwtTokenPolicyValidazione
  2195.         MBeanOperationInfo checkCertificatiValidazioneJwtTokenPolicyValidazione
  2196.         = new MBeanOperationInfo(CHECK_CERTIFICATI_VALIDAZIONE_JWT_TOKEN_POLICY_VALIDAZIONE,"Verifica i certificati utilizzati per la validazione JWT del Token definito nella Token Policy di validazione con nome fornito come parametro",
  2197.             new MBeanParameterInfo[]{
  2198.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Validazione"),
  2199.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2200.             },
  2201.             String.class.getName(),
  2202.             MBeanOperationInfo.ACTION);
  2203.        
  2204.         // MetaData per l'operazione checkCertificatiForwardToJwtTokenPolicyValidazione
  2205.         MBeanOperationInfo checkCertificatiForwardToJwtTokenPolicyValidazione
  2206.         = new MBeanOperationInfo(CHECK_CERTIFICATI_FORWARD_TO_JWT_TOKEN_POLICY_VALIDAZIONE,"Verifica i certificati utilizzati per firmare il JWT contenente le informazioni del Token definito nella Token Policy di validazione con nome fornito come parametro",
  2207.             new MBeanParameterInfo[]{
  2208.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Validazione"),
  2209.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2210.             },
  2211.             String.class.getName(),
  2212.             MBeanOperationInfo.ACTION);
  2213.        
  2214.        
  2215.         // MetaData per l'operazione checkCertificatiConnettoreHttpsTokenPolicyNegoziazione
  2216.         MBeanOperationInfo checkCertificatiConnettoreHttpsTokenPolicyNegoziazione
  2217.         = new MBeanOperationInfo(CHECK_CERTIFICATI_CONNETTORE_HTTPS_TOKEN_POLICY_NEGOZIAZIONE,"Verifica i certificati del connettore https definito nella Token Policy di negoziazione con nome fornito come parametro",
  2218.             new MBeanParameterInfo[]{
  2219.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Negoziazione"),
  2220.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2221.             },
  2222.             String.class.getName(),
  2223.             MBeanOperationInfo.ACTION);
  2224.        
  2225.         // MetaData per l'operazione checkCertificatiSignedJwtTokenPolicyNegoziazione
  2226.         MBeanOperationInfo checkCertificatiSignedJwtTokenPolicyNegoziazione
  2227.         = new MBeanOperationInfo(CHECK_CERTIFICATI_SIGNED_JWT_TOKEN_POLICY_NEGOZIAZIONE,"Verifica i certificati utilizzati per firmare l'asserzione JWT definita nella Token Policy di negoziazione con nome fornito come parametro",
  2228.             new MBeanParameterInfo[]{
  2229.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome della Token Policy di Negoziazione"),
  2230.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2231.             },
  2232.             String.class.getName(),
  2233.             MBeanOperationInfo.ACTION);
  2234.        
  2235.         // MetaData per l'operazione checkCertificatiConnettoreHttpsAttributeAuthority
  2236.         MBeanOperationInfo checkCertificatiConnettoreHttpsAttributeAuthority
  2237.         = new MBeanOperationInfo(CHECK_CERTIFICATI_CONNETTORE_HTTPS_ATTRIBUTE_AUTHORITY,"Verifica i certificati del connettore https definito nell'AttributeAuthority con nome fornito come parametro",
  2238.             new MBeanParameterInfo[]{
  2239.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome dell'AttributeAuthority"),
  2240.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2241.             },
  2242.             String.class.getName(),
  2243.             MBeanOperationInfo.ACTION);
  2244.        
  2245.         // MetaData per l'operazione checkCertificatiAttributeAuthorityJwtRichiesta
  2246.         MBeanOperationInfo checkCertificatiAttributeAuthorityJwtRichiesta
  2247.         = new MBeanOperationInfo(CHECK_CERTIFICATI_ATTRIBUTE_AUTHORITY_JWT_RICHIESTA,"Verifica i certificati utilizzati per firmare il JWT della richiesta definito nell'AttributeAuthority con nome fornito come parametro",
  2248.             new MBeanParameterInfo[]{
  2249.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome dell'AttributeAuthority"),
  2250.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2251.             },
  2252.             String.class.getName(),
  2253.             MBeanOperationInfo.ACTION);
  2254.        
  2255.         // MetaData per l'operazione checkCertificatiAttributeAuthorityJwtRisposta
  2256.         MBeanOperationInfo checkCertificatiAttributeAuthorityJwtRisposta
  2257.         = new MBeanOperationInfo(CHECK_CERTIFICATI_ATTRIBUTE_AUTHORITY_JWT_RISPOSTA,"Verifica i certificati utilizzati per firmare il JWT della richiesta definito nell'AttributeAuthority con nome fornito come parametro",
  2258.             new MBeanParameterInfo[]{
  2259.                 new MBeanParameterInfo("nomePolicy",String.class.getName(),"Nome dell'AttributeAuthority"),
  2260.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2261.             },
  2262.             String.class.getName(),
  2263.             MBeanOperationInfo.ACTION);
  2264.        
  2265.         // MetaData per l'operazione checkCertificatiModIErogazioneById
  2266.         MBeanOperationInfo checkCertificatiModIErogazioneById
  2267.         = new MBeanOperationInfo(CHECK_CERTIFICATI_MESSAGE_SECURITY_EROGAZIONE_BY_ID,"Verifica i certificati presenti nei keystore e truststore della configurazione di MessageSecurity dell'erogazione che possiede l'id fornito come parametro",
  2268.             new MBeanParameterInfo[]{
  2269.                 new MBeanParameterInfo("idErogazione",long.class.getName(),"Identificativo dell'erogazione"),
  2270.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2271.             },
  2272.             String.class.getName(),
  2273.             MBeanOperationInfo.ACTION);
  2274.        
  2275.         // MetaData per l'operazione checkCertificatiModIFruizioneById
  2276.         MBeanOperationInfo checkCertificatiModIFruizioneById
  2277.         = new MBeanOperationInfo(CHECK_CERTIFICATI_MESSAGE_SECURITY_FRUIZIONE_BY_ID,"Verifica i certificati presenti nei keystore e truststore della configurazione di MessageSecurity della fruizione che possiede l'id fornito come parametro",
  2278.             new MBeanParameterInfo[]{
  2279.                 new MBeanParameterInfo("idFruizione",long.class.getName(),"Identificativo della fruizione"),
  2280.                 new MBeanParameterInfo("warningThreshold",int.class.getName(),"Soglia di warning (giorni)"),
  2281.             },
  2282.             String.class.getName(),
  2283.             MBeanOperationInfo.ACTION);
  2284.                
  2285.         // MetaData per l'operazione enablePortaDelegata
  2286.         MBeanOperationInfo enablePortaDelegata
  2287.         = new MBeanOperationInfo(ABILITA_PORTA_DELEGATA,"Abilita lo stato della porta con nome fornito come parametro",
  2288.             new MBeanParameterInfo[]{
  2289.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2290.             },
  2291.             String.class.getName(),
  2292.             MBeanOperationInfo.ACTION);
  2293.        
  2294.         // MetaData per l'operazione disablePortaDelegata
  2295.         MBeanOperationInfo disablePortaDelegata
  2296.         = new MBeanOperationInfo(DISABILITA_PORTA_DELEGATA,"Disabilita lo stato della porta con nome fornito come parametro",
  2297.             new MBeanParameterInfo[]{
  2298.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2299.             },
  2300.             String.class.getName(),
  2301.             MBeanOperationInfo.ACTION);
  2302.        
  2303.         // MetaData per l'operazione enablePortaApplicativa
  2304.         MBeanOperationInfo enablePortaApplicativa
  2305.         = new MBeanOperationInfo(ABILITA_PORTA_APPLICATIVA,"Abilita lo stato della porta con nome fornito come parametro",
  2306.             new MBeanParameterInfo[]{
  2307.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2308.             },
  2309.             String.class.getName(),
  2310.             MBeanOperationInfo.ACTION);
  2311.        
  2312.         // MetaData per l'operazione disablePortaApplicativa
  2313.         MBeanOperationInfo disablePortaApplicativa
  2314.         = new MBeanOperationInfo(DISABILITA_PORTA_APPLICATIVA,"Disabilita lo stato della porta con nome fornito come parametro",
  2315.             new MBeanParameterInfo[]{
  2316.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2317.             },
  2318.             String.class.getName(),
  2319.             MBeanOperationInfo.ACTION);
  2320.        
  2321.         // MetaData per l'operazione enableConnettoreMultiplo
  2322.         MBeanOperationInfo enableConnettoreMultiplo
  2323.         = new MBeanOperationInfo(ABILITA_CONNETTORE_MULTIPLO,"Abilita lo stato del connettore della porta identificato dai parametri",
  2324.             new MBeanParameterInfo[]{
  2325.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2326.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del Connettore"),
  2327.             },
  2328.             String.class.getName(),
  2329.             MBeanOperationInfo.ACTION);
  2330.        
  2331.         // MetaData per l'operazione disableConnettoreMultiplo
  2332.         MBeanOperationInfo disableConnettoreMultiplo
  2333.         = new MBeanOperationInfo(DISABILITA_CONNETTORE_MULTIPLO,"Disabilita lo stato del connettore della porta identificato dai parametri",
  2334.             new MBeanParameterInfo[]{
  2335.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2336.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del Connettore"),
  2337.             },
  2338.             String.class.getName(),
  2339.             MBeanOperationInfo.ACTION);
  2340.        
  2341.         // MetaData per l'operazione enableConnettoreMultiploByUsername
  2342.         MBeanOperationInfo enableConnettoreMultiploByUsername
  2343.         = new MBeanOperationInfo(ABILITA_CONNETTORE_MULTIPLO_USERNAME,"Abilita lo stato del connettore della porta identificato dai parametri",
  2344.             new MBeanParameterInfo[]{
  2345.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2346.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del Connettore"),
  2347.                 new MBeanParameterInfo("username",String.class.getName(),"Utente che effettua la richiesta")
  2348.             },
  2349.             String.class.getName(),
  2350.             MBeanOperationInfo.ACTION);
  2351.                
  2352.         // MetaData per l'operazione disableConnettoreMultiploByUsername
  2353.         MBeanOperationInfo disableConnettoreMultiploByUsername
  2354.         = new MBeanOperationInfo(DISABILITA_CONNETTORE_MULTIPLO_USERNAME,"Disabilita lo stato del connettore della porta identificato dai parametri",
  2355.             new MBeanParameterInfo[]{
  2356.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2357.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del Connettore"),
  2358.                 new MBeanParameterInfo("username",String.class.getName(),"Utente che effettua la richiesta")
  2359.             },
  2360.             String.class.getName(),
  2361.             MBeanOperationInfo.ACTION);
  2362.        
  2363.         // MetaData per l'operazione enableSchedulingConnettoreMultiplo
  2364.         MBeanOperationInfo enableSchedulingConnettoreMultiplo
  2365.         = new MBeanOperationInfo(ABILITA_SCHEDULING_CONNETTORE_MULTIPLO,"Abilita lo scheduling del connettore della porta identificato dai parametri",
  2366.             new MBeanParameterInfo[]{
  2367.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2368.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del Connettore"),
  2369.             },
  2370.             String.class.getName(),
  2371.             MBeanOperationInfo.ACTION);
  2372.        
  2373.         // MetaData per l'operazione disableSchedulingConnettoreMultiplo
  2374.         MBeanOperationInfo disableSchedulingConnettoreMultiplo
  2375.         = new MBeanOperationInfo(DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO,"Disabilita lo scheduling del connettore della porta identificato dai parametri",
  2376.             new MBeanParameterInfo[]{
  2377.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2378.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del Connettore"),
  2379.             },
  2380.             String.class.getName(),
  2381.             MBeanOperationInfo.ACTION);
  2382.        
  2383.         // MetaData per l'operazione enableSchedulingConnettoreMultiploByUsername
  2384.         MBeanOperationInfo enableSchedulingConnettoreMultiploByUsername
  2385.         = new MBeanOperationInfo(ABILITA_SCHEDULING_CONNETTORE_MULTIPLO_USERNAME,"Abilita lo scheduling del connettore della porta identificato dai parametri",
  2386.             new MBeanParameterInfo[]{
  2387.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2388.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del Connettore"),
  2389.                 new MBeanParameterInfo("username",String.class.getName(),"Utente che effettua la richiesta")
  2390.             },
  2391.             String.class.getName(),
  2392.             MBeanOperationInfo.ACTION);
  2393.        
  2394.         // MetaData per l'operazione disableSchedulingConnettoreMultiploByUsername
  2395.         MBeanOperationInfo disableSchedulingConnettoreMultiploByUsername
  2396.         = new MBeanOperationInfo(DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO_USERNAME,"Disabilita lo scheduling del connettore della porta identificato dai parametri",
  2397.             new MBeanParameterInfo[]{
  2398.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2399.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del Connettore"),
  2400.                 new MBeanParameterInfo("username",String.class.getName(),"Utente che effettua la richiesta")
  2401.             },
  2402.             String.class.getName(),
  2403.             MBeanOperationInfo.ACTION);
  2404.        
  2405.         // MetaData per l'operazione enableSchedulingConnettoreMultiploRuntimeRepository
  2406.         MBeanOperationInfo enableSchedulingConnettoreMultiploRuntimeRepository
  2407.         = new MBeanOperationInfo(ABILITA_SCHEDULING_CONNETTORE_MULTIPLO_RUNTIME,"Abilita lo scheduling del connettore della porta identificato dai parametri nel RuntimeRepository",
  2408.             new MBeanParameterInfo[]{
  2409.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2410.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del Connettore"),
  2411.             },
  2412.             String.class.getName(),
  2413.             MBeanOperationInfo.ACTION);
  2414.        
  2415.         // MetaData per l'operazione disableSchedulingConnettoreMultiploRuntimeRepository
  2416.         MBeanOperationInfo disableSchedulingConnettoreMultiploRuntimeRepository
  2417.         = new MBeanOperationInfo(DISABILITA_SCHEDULING_CONNETTORE_MULTIPLO_RUNTIME,"Disabilita lo scheduling del connettore della porta identificato dai parametri nel RuntimeRepository",
  2418.             new MBeanParameterInfo[]{
  2419.                 new MBeanParameterInfo("nomePorta",String.class.getName(),"Nome della Porta"),
  2420.                 new MBeanParameterInfo("nomeConnettore",String.class.getName(),"Nome del Connettore"),
  2421.             },
  2422.             String.class.getName(),
  2423.             MBeanOperationInfo.ACTION);
  2424.        
  2425.         // MetaData per l'operazione ripulisciRiferimentiCacheAccordoCooperazione
  2426.         MBeanOperationInfo ripulisciRiferimentiCacheAccordoCooperazione
  2427.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_ACCORDO_COOPERAZIONE,"Ripulisce i riferimenti in cache dell'accordo di cooperazione identificato dal parametro id",
  2428.             new MBeanParameterInfo[]{
  2429.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo dell'accordo"),
  2430.             },
  2431.             String.class.getName(),
  2432.             MBeanOperationInfo.ACTION);
  2433.        
  2434.         // MetaData per l'operazione ripulisciRiferimentiCacheApi
  2435.         MBeanOperationInfo ripulisciRiferimentiCacheApi
  2436.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_API,"Ripulisce i riferimenti in cache dell'accordo identificato dal parametro id",
  2437.             new MBeanParameterInfo[]{
  2438.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo dell'accordo"),
  2439.             },
  2440.             String.class.getName(),
  2441.             MBeanOperationInfo.ACTION);
  2442.        
  2443.         // MetaData per l'operazione ripulisciRiferimentiCacheErogazione
  2444.         MBeanOperationInfo ripulisciRiferimentiCacheErogazione
  2445.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_EROGAZIONE,"Ripulisce i riferimenti in cache dell'erogazione identificata dal parametro id",
  2446.             new MBeanParameterInfo[]{
  2447.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo dell'erogazione"),
  2448.             },
  2449.             String.class.getName(),
  2450.             MBeanOperationInfo.ACTION);
  2451.        
  2452.         // MetaData per l'operazione ripulisciRiferimentiCacheFruizione
  2453.         MBeanOperationInfo ripulisciRiferimentiCacheFruizione
  2454.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_FRUIZIONE,"Ripulisce i riferimenti in cache della fruizione identificata dal parametro id",
  2455.             new MBeanParameterInfo[]{
  2456.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo della fruizione"),
  2457.             },
  2458.             String.class.getName(),
  2459.             MBeanOperationInfo.ACTION);
  2460.        
  2461.         // MetaData per l'operazione ripulisciRiferimentiCacheSoggetto
  2462.         MBeanOperationInfo ripulisciRiferimentiCacheSoggetto
  2463.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_SOGGETTO,"Ripulisce i riferimenti in cache del soggetto identificato dal parametro id",
  2464.             new MBeanParameterInfo[]{
  2465.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo del soggetto"),
  2466.             },
  2467.             String.class.getName(),
  2468.             MBeanOperationInfo.ACTION);
  2469.        
  2470.         // MetaData per l'operazione ripulisciRiferimentiCacheApplicativo
  2471.         MBeanOperationInfo ripulisciRiferimentiCacheApplicativo
  2472.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_APPLICATIVO,"Ripulisce i riferimenti in cache dell'applicativo identificato dal parametro id",
  2473.             new MBeanParameterInfo[]{
  2474.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo dell'applicativo"),
  2475.             },
  2476.             String.class.getName(),
  2477.             MBeanOperationInfo.ACTION);
  2478.        
  2479.         // MetaData per l'operazione ripulisciRiferimentiCacheRuolo
  2480.         MBeanOperationInfo ripulisciRiferimentiCacheRuolo
  2481.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_RUOLO,"Ripulisce i riferimenti in cache del ruolo identificato dal parametro id",
  2482.             new MBeanParameterInfo[]{
  2483.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo del ruolo"),
  2484.             },
  2485.             String.class.getName(),
  2486.             MBeanOperationInfo.ACTION);
  2487.        
  2488.         // MetaData per l'operazione ripulisciRiferimentiCacheScope
  2489.         MBeanOperationInfo ripulisciRiferimentiCacheScope
  2490.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_SCOPE,"Ripulisce i riferimenti in cache dello scope identificato dal parametro id",
  2491.             new MBeanParameterInfo[]{
  2492.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo dello scope"),
  2493.             },
  2494.             String.class.getName(),
  2495.             MBeanOperationInfo.ACTION);
  2496.        
  2497.         // MetaData per l'operazione ripulisciRiferimentiCacheTokenPolicyValidazione
  2498.         MBeanOperationInfo ripulisciRiferimentiCacheTokenPolicyValidazione
  2499.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_TOKEN_POLICY_VALIDAZIONE,"Ripulisce i riferimenti in cache della token policy identificata dal parametro id",
  2500.             new MBeanParameterInfo[]{
  2501.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo della policy"),
  2502.             },
  2503.             String.class.getName(),
  2504.             MBeanOperationInfo.ACTION);
  2505.        
  2506.         // MetaData per l'operazione ripulisciRiferimentiCacheTokenPolicyNegoziazione
  2507.         MBeanOperationInfo ripulisciRiferimentiCacheTokenPolicyNegoziazione
  2508.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_TOKEN_POLICY_NEGOZIAZIONE,"Ripulisce i riferimenti in cache della token policy identificata dal parametro id",
  2509.             new MBeanParameterInfo[]{
  2510.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo della policy"),
  2511.             },
  2512.             String.class.getName(),
  2513.             MBeanOperationInfo.ACTION);
  2514.        
  2515.         // MetaData per l'operazione ripulisciRiferimentiCacheAttributeAuthority
  2516.         MBeanOperationInfo ripulisciRiferimentiCacheAttributeAuthority
  2517.         = new MBeanOperationInfo(RIPULISCI_RIFERIMENTI_CACHE_ATTRIBUTE_AUTHORITY,"Ripulisce i riferimenti in cache dell'Attribute Authority identificata dal parametro id",
  2518.             new MBeanParameterInfo[]{
  2519.                 new MBeanParameterInfo("id",long.class.getName(),"Identificativo dell'Authority"),
  2520.             },
  2521.             String.class.getName(),
  2522.             MBeanOperationInfo.ACTION);

  2523.         // Mbean costruttore
  2524.         MBeanConstructorInfo defaultConstructor = new MBeanConstructorInfo("Default Constructor","Crea e inizializza una nuova istanza del MBean",null);

  2525.         // Lista attributi
  2526.         MBeanAttributeInfo[] attributes = new MBeanAttributeInfo[]{cacheAbilitataVAR,livelloMsgDiagnosticiVAR,
  2527.                 livelloMsgDiagnosticiLog4JVAR,msgDiagnosticiAppenderVAR,tracciamentoAbilitatoVAR,
  2528.                 dumpBinarioPDAbilitatoVAR,dumpBinarioPAAbilitatoVAR,
  2529.                 tracciamentoAppenderVAR,
  2530.                 log4jDiagnosticaAbilitatoVAR, log4jOpenSPCoopAbilitatoVAR, log4jIntegrationManagerAbilitatoVAR,
  2531.                 log4jTracciamentoAbilitatoVAR, log4jDumpAbilitatoVAR,
  2532.                 erroriStatusCodeAbilitatoVAR, erroriInstanceIdAbilitatoVAR,
  2533.                 erroriForceSpecificErrorTypeInternalBadRequestVAR,
  2534.                 erroriForceSpecificErrorTypeBadResponseVAR, erroriForceSpecificErrorTypeInternalResponseErrorVAR,
  2535.                 erroriForceSpecificErrorTypeInternalErrorVAR,
  2536.                 erroriForceSpecificDetailsVAR,
  2537.                 erroriSoapUseGovWayStatusAsFaultCodeVAR, erroriSoapGenerateHttpHeaderGovWayCodeVAR,
  2538.                 timerConsegnaContenutiApplicativiVAR,
  2539.                 timerStatisticheOrarieVAR,timerStatisticheGiornaliereVAR,timerStatisticheSettimanaliVAR,timerStatisticheMensiliVAR,
  2540.                 timerEventiVAR, timerFileSystemRecoveryVAR,
  2541.                 timerGestoreBusteOnewayNonRiscontrateVAR, timerGestoreBusteAsincroneNonRiscontrateVAR,
  2542.                 timerGestoreMessaggiPuliziaMessaggiEliminatiVAR, timerGestoreMessaggiPuliziaMessaggiScadutiVAR, timerGestoreMessaggiPuliziaMessaggiNonGestitiVAR,
  2543.                 timerGestoreMessaggiPuliziaCorrelazioneApplicativaVAR, timerGestoreMessaggiVerificaConnessioniAttiveVAR,
  2544.                 timerGestorePuliziaMessaggiAnomaliVAR, timerGestoreRepositoryBusteVAR,
  2545.                 timerMonitoraggioRisorseThreadVAR, timerThresholdThreadVAR,
  2546.                 timerClusterDinamicoVAR,
  2547.                 timerRepositoryStatefulThreadVAR,
  2548.                 timerGestoreChiaviVAR, timerGestoreCacheChiaviVAR};
  2549.        
  2550.         // Lista Costruttori
  2551.         MBeanConstructorInfo[] constructors = new MBeanConstructorInfo[]{defaultConstructor};
  2552.        
  2553.         // Lista operazioni
  2554.         List<MBeanOperationInfo> listOperation = new ArrayList<>();
  2555.         listOperation.add(resetCacheOP);
  2556.         if(this.openspcoopProperties.isConfigurazioneCache_ConfigPrefill()){
  2557.             listOperation.add(prefillCacheOP);
  2558.         }
  2559.         listOperation.add(printStatCacheOP);
  2560.         listOperation.add(disabilitaCacheOP);
  2561.         listOperation.add(abilitaCacheParametriOP);
  2562.         listOperation.add(listKeysCacheOP);
  2563.         listOperation.add(getObjectCacheOP);
  2564.         listOperation.add(removeObjectCacheOP);
  2565.         listOperation.add(checkConnettoreById);
  2566.         listOperation.add(checkConnettoreByNome);
  2567.         listOperation.add(checkConnettoreTokenPolicyValidazione);
  2568.         listOperation.add(checkConnettoreTokenPolicyValidazione_2);
  2569.         listOperation.add(checkConnettoreTokenPolicyNegoziazione);
  2570.         listOperation.add(checkConnettoreAttributeAuthority);
  2571.         listOperation.add(getCertificatiConnettoreById);
  2572.         listOperation.add(getCertificatiConnettoreByNome);
  2573.         listOperation.add(getCertificatiConnettoreTokenPolicyValidazione);
  2574.         listOperation.add(getCertificatiConnettoreTokenPolicyValidazione_2);
  2575.         listOperation.add(getCertificatiConnettoreTokenPolicyNegoziazione);
  2576.         listOperation.add(getCertificatiConnettoreAttributeAuthority);
  2577.         listOperation.add(checkCertificatiConnettoreHttpsById);
  2578.         listOperation.add(checkCertificatoApplicativoById);
  2579.         listOperation.add(checkCertificatoApplicativoByNome);
  2580.         listOperation.add(checkCertificatoModIApplicativoById);
  2581.         listOperation.add(checkCertificatoModIApplicativoByNome);
  2582.         listOperation.add(checkCertificatiJvm);
  2583.         listOperation.add(checkProxyJvm);
  2584.         listOperation.add(checkCertificatiConnettoreHttpsTokenPolicyValidazione);
  2585.         listOperation.add(checkCertificatiConnettoreHttpsTokenPolicyValidazione_2);
  2586.         listOperation.add(checkCertificatiValidazioneJwtTokenPolicyValidazione);
  2587.         listOperation.add(checkCertificatiForwardToJwtTokenPolicyValidazione);
  2588.         listOperation.add(checkCertificatiConnettoreHttpsTokenPolicyNegoziazione);
  2589.         listOperation.add(checkCertificatiSignedJwtTokenPolicyNegoziazione);
  2590.         listOperation.add(checkCertificatiConnettoreHttpsAttributeAuthority);
  2591.         listOperation.add(checkCertificatiAttributeAuthorityJwtRichiesta);
  2592.         listOperation.add(checkCertificatiAttributeAuthorityJwtRisposta);
  2593.         listOperation.add(checkCertificatiModIErogazioneById);
  2594.         listOperation.add(checkCertificatiModIFruizioneById);
  2595.         listOperation.add(enablePortaDelegata);
  2596.         listOperation.add(disablePortaDelegata);
  2597.         listOperation.add(enablePortaApplicativa);
  2598.         listOperation.add(disablePortaApplicativa);
  2599.         listOperation.add(enableConnettoreMultiplo);
  2600.         listOperation.add(disableConnettoreMultiplo);
  2601.         listOperation.add(enableConnettoreMultiploByUsername);
  2602.         listOperation.add(disableConnettoreMultiploByUsername);
  2603.         listOperation.add(enableSchedulingConnettoreMultiplo);
  2604.         listOperation.add(disableSchedulingConnettoreMultiplo);
  2605.         listOperation.add(enableSchedulingConnettoreMultiploByUsername);
  2606.         listOperation.add(disableSchedulingConnettoreMultiploByUsername);
  2607.         listOperation.add(enableSchedulingConnettoreMultiploRuntimeRepository);
  2608.         listOperation.add(disableSchedulingConnettoreMultiploRuntimeRepository);
  2609.         listOperation.add(ripulisciRiferimentiCacheAccordoCooperazione);
  2610.         listOperation.add(ripulisciRiferimentiCacheApi);
  2611.         listOperation.add(ripulisciRiferimentiCacheErogazione);
  2612.         listOperation.add(ripulisciRiferimentiCacheFruizione);
  2613.         listOperation.add(ripulisciRiferimentiCacheSoggetto);
  2614.         listOperation.add(ripulisciRiferimentiCacheApplicativo);
  2615.         listOperation.add(ripulisciRiferimentiCacheRuolo);
  2616.         listOperation.add(ripulisciRiferimentiCacheScope);
  2617.         listOperation.add(ripulisciRiferimentiCacheTokenPolicyValidazione);
  2618.         listOperation.add(ripulisciRiferimentiCacheTokenPolicyNegoziazione);
  2619.         listOperation.add(ripulisciRiferimentiCacheAttributeAuthority);
  2620.         MBeanOperationInfo[] operations = listOperation.toArray(new MBeanOperationInfo[1]);
  2621.        
  2622.         return new MBeanInfo(className,description,attributes,constructors,operations,null);
  2623.     }
  2624.    
  2625.     /* Variabili per la gestione JMX */
  2626.     private Logger log;
  2627.     private Logger logConnettori;
  2628.     org.openspcoop2.pdd.config.ConfigurazionePdDManager configReader = null;
  2629.     org.openspcoop2.pdd.config.OpenSPCoop2Properties openspcoopProperties = null;
  2630.    
  2631.     private void logError(String msg, Exception e) {
  2632.         this.log.error(msg, e);
  2633.     }
  2634.    
  2635.     /* Costruttore */
  2636.     public ConfigurazionePdD(){
  2637.         this.log = OpenSPCoop2Logger.getLoggerOpenSPCoopCore();
  2638.         this.logConnettori = OpenSPCoop2Logger.getLoggerOpenSPCoopConnettori();
  2639.         this.configReader = org.openspcoop2.pdd.config.ConfigurazionePdDManager.getInstance();
  2640.         this.openspcoopProperties = org.openspcoop2.pdd.config.OpenSPCoop2Properties.getInstance();
  2641.                
  2642.         // Configurazione
  2643.         try{
  2644.             this.cacheAbilitata = ConfigurazionePdDReader.isCacheAbilitata();
  2645.         }catch(Exception e){
  2646.             this.log.error("Errore durante l'identificazione dello stato della cache");
  2647.         }
  2648.                
  2649.         // Messaggi diagnostici
  2650.         this.msgDiagnosticiLivelloSeverita = LogLevels.toOpenSPCoop2(this.configReader.getSeveritaMessaggiDiagnostici(),true);
  2651.         this.msgDiagnosticiLivelloSeveritaLog4J = LogLevels.toOpenSPCoop2(this.configReader.getSeveritaLog4JMessaggiDiagnostici(),true);
  2652.         this.log4jDiagnosticaAbilitato = OpenSPCoop2Logger.loggerMsgDiagnosticoAbilitato;
  2653.         this.log4jOpenSPCoopAbilitato = OpenSPCoop2Logger.loggerMsgDiagnosticoReadableAbilitato;
  2654.         this.log4jIntegrationManagerAbilitato = OpenSPCoop2Logger.loggerIntegrationManagerAbilitato;
  2655.        
  2656.         MessaggiDiagnostici msg = this.configReader.getOpenSPCoopAppenderMessaggiDiagnostici();
  2657.         if(msg!=null && msg.sizeOpenspcoopAppenderList()>0){
  2658.             this.msgDiagnosticiAppender = new String[msg.sizeOpenspcoopAppenderList()];
  2659.             for(int i=0; i<msg.sizeOpenspcoopAppenderList(); i++){
  2660.                 OpenspcoopAppender appender = msg.getOpenspcoopAppender(i);
  2661.                 this.msgDiagnosticiAppender[i] = ("Appender di tipo "+appender.getTipo()+", properties size:"+appender.sizePropertyList());
  2662.                 for(int j=0; j<appender.sizePropertyList(); j++){
  2663.                     this.msgDiagnosticiAppender[i] = this.msgDiagnosticiAppender[i] + "\n[nome="+
  2664.                         appender.getProperty(j).getNome() +" valore="+appender.getProperty(j).getValore()+"]";
  2665.                 }
  2666.             }
  2667.         }
  2668.                
  2669.         // Tracciamento
  2670.         this.tracciamentoAbilitato = this.configReader.tracciamentoBuste();
  2671.         this.dumpBinarioPDAbilitato = this.configReader.dumpBinarioPD();
  2672.         this.dumpBinarioPAAbilitato = this.configReader.dumpBinarioPA();
  2673.         this.log4jTracciamentoAbilitato = OpenSPCoop2Logger.loggerTracciamentoAbilitato;
  2674.         this.log4jDumpAbilitato = OpenSPCoop2Logger.loggerDumpAbilitato;
  2675.        
  2676.         Tracciamento tracciamento = this.configReader.getOpenSPCoopAppenderTracciamento();
  2677.         if(tracciamento!=null && tracciamento.sizeOpenspcoopAppenderList()>0){
  2678.             this.tracciamentoAppender = new String[tracciamento.sizeOpenspcoopAppenderList()];
  2679.             for(int i=0; i<tracciamento.sizeOpenspcoopAppenderList(); i++){
  2680.                 OpenspcoopAppender appender = tracciamento.getOpenspcoopAppender(i);
  2681.                 this.tracciamentoAppender[i]="Appender di tipo "+appender.getTipo()+", properties size:"+appender.sizePropertyList();
  2682.                 for(int j=0; j<appender.sizePropertyList(); j++){
  2683.                     this.tracciamentoAppender[i] = this.tracciamentoAppender[i] + "\n[nome="+
  2684.                         appender.getProperty(j).getNome() +" valore="+appender.getProperty(j).getValore()+"]";
  2685.                 }
  2686.             }
  2687.         }

  2688.     }
  2689.    
  2690.     public boolean isCacheAbilitata() {
  2691.         return this.cacheAbilitata;
  2692.     }
  2693.    
  2694.     /* Metodi di management JMX */
  2695.     public String resetCache(){
  2696.         try{
  2697.             if(!this.cacheAbilitata)
  2698.                 throw new CoreException("Cache non abilitata");
  2699.             org.openspcoop2.pdd.config.ConfigurazionePdDReader.resetCache();
  2700.             FileTraceConfig.resetFileTraceAssociatePorte();
  2701.             return JMXUtils.MSG_RESET_CACHE_EFFETTUATO_SUCCESSO;
  2702.         }catch(Exception e){
  2703.             this.logError(JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage(),e);
  2704.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2705.         }
  2706.     }
  2707.    
  2708.     public String prefillCache(){
  2709.         try{
  2710.             if(!this.cacheAbilitata)
  2711.                 throw new CoreException("Cache non abilitata");
  2712.             org.openspcoop2.pdd.config.ConfigurazionePdDReader.prefillCache(this.openspcoopProperties.getCryptConfigAutenticazioneApplicativi());
  2713.             return JMXUtils.MSG_PREFILL_CACHE_EFFETTUATO_SUCCESSO;
  2714.         }catch(Exception e){
  2715.             this.logError(JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage(),e);
  2716.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2717.         }
  2718.     }
  2719.    
  2720.     public String printStatCache(){
  2721.         try{
  2722.             if(!this.cacheAbilitata)
  2723.                 throw new CoreException("Cache non abilitata");
  2724.             return org.openspcoop2.pdd.config.ConfigurazionePdDReader.printStatsCache("\n");
  2725.         }catch(Exception e){
  2726.             this.logError(JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage(),e);
  2727.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2728.         }
  2729.     }
  2730.    
  2731.     public void abilitaCache(){
  2732.         try{
  2733.             org.openspcoop2.pdd.config.ConfigurazionePdDReader.abilitaCache();
  2734.             this.cacheAbilitata = true;
  2735.         }catch(Exception e){
  2736.             this.logError(e.getMessage(),e);
  2737.         }
  2738.     }

  2739.     public String abilitaCache(Long dimensioneCache,Boolean algoritmoCacheLRU,Long itemIdleTime,Long itemLifeSecond){
  2740.         try{
  2741.             org.openspcoop2.pdd.config.ConfigurazionePdDReader.abilitaCache(dimensioneCache,algoritmoCacheLRU,itemIdleTime,itemLifeSecond,
  2742.                     this.openspcoopProperties.getCryptConfigAutenticazioneApplicativi());
  2743.             this.cacheAbilitata = true;
  2744.             return JMXUtils.MSG_ABILITAZIONE_CACHE_EFFETTUATA;
  2745.         }catch(Exception e){
  2746.             this.logError(e.getMessage(),e);
  2747.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2748.         }
  2749.     }
  2750.    
  2751.     public void disabilitaCache() throws JMException{
  2752.         try{
  2753.             org.openspcoop2.pdd.config.ConfigurazionePdDReader.disabilitaCache();
  2754.             this.cacheAbilitata = false;
  2755.         }catch(Exception e){
  2756.             this.logError(e.getMessage(),e);
  2757.             throw new JMException(e.getMessage());
  2758.         }
  2759.     }
  2760.     public String disabilitaCacheConEsito() {
  2761.         try{
  2762.             disabilitaCache();
  2763.             return JMXUtils.MSG_DISABILITAZIONE_CACHE_EFFETTUATA;
  2764.         }catch(Exception e){
  2765.             this.logError(e.getMessage(),e);
  2766.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2767.         }
  2768.     }
  2769.    
  2770.     public String listKeysCache(){
  2771.         try{
  2772.             if(!this.cacheAbilitata)
  2773.                 throw new CoreException("Cache non abilitata");
  2774.             return org.openspcoop2.pdd.config.ConfigurazionePdDReader.listKeysCache("\n");
  2775.         }catch(Exception e){
  2776.             this.logError(JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage(),e);
  2777.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2778.         }
  2779.     }
  2780.    
  2781.     public String getObjectCache(String key){
  2782.         try{
  2783.             if(!this.cacheAbilitata)
  2784.                 throw new CoreException("Cache non abilitata");
  2785.             return org.openspcoop2.pdd.config.ConfigurazionePdDReader.getObjectCache(key);
  2786.         }catch(Exception e){
  2787.             this.logError(JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage(),e);
  2788.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2789.         }
  2790.     }
  2791.    
  2792.     public String removeObjectCache(String key){
  2793.         try{
  2794.             if(!this.cacheAbilitata)
  2795.                 throw new CoreException("Cache non abilitata");
  2796.             org.openspcoop2.pdd.config.ConfigurazionePdDReader.removeObjectCache(key);
  2797.             return JMXUtils.MSG_RIMOZIONE_CACHE_EFFETTUATA;
  2798.         }catch(Exception e){
  2799.             this.logError(JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage(),e);
  2800.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2801.         }
  2802.     }
  2803.    
  2804.     public void setMsgDiagnosticiLivelloSeverita(String livelloMsgDiagnostici)throws JMException{
  2805.         if(!"off".equals(livelloMsgDiagnostici) &&
  2806.                 !"fatal".equals(livelloMsgDiagnostici) &&
  2807.                 !"errorProtocol".equals(livelloMsgDiagnostici) &&
  2808.                 !"errorIntegration".equals(livelloMsgDiagnostici) &&
  2809.                 !"infoProtocol".equals(livelloMsgDiagnostici) &&
  2810.                 !"infoIntegration".equals(livelloMsgDiagnostici) &&
  2811.                 !"debugLow".equals(livelloMsgDiagnostici) &&
  2812.                 !"debugMedium".equals(livelloMsgDiagnostici) &&
  2813.                 !"debugHigh".equals(livelloMsgDiagnostici) &&
  2814.                 !"all".equals(livelloMsgDiagnostici)){
  2815.             throw new JMException("Livello "+livelloMsgDiagnostici+" non conosciuto");
  2816.         }
  2817.         this.msgDiagnosticiLivelloSeverita = livelloMsgDiagnostici;
  2818.         ConfigurazionePdDReader.livelloMessaggiDiagnosticiJMX = LogLevels.toLog4J(this.msgDiagnosticiLivelloSeverita);
  2819.         ConfigurazionePdDReader.severitaMessaggiDiagnosticiJMX = LogLevels.toOpenSPCoop2(this.msgDiagnosticiLivelloSeverita);
  2820.     }
  2821.    
  2822.     public void setMsgDiagnosticiLivelloSeveritaLog4J(String livelloMsgDiagnosticiLog4j)throws JMException{
  2823.         if(!"off".equals(livelloMsgDiagnosticiLog4j) &&
  2824.                 !"fatal".equals(livelloMsgDiagnosticiLog4j) &&
  2825.                 !"errorProtocol".equals(livelloMsgDiagnosticiLog4j) &&
  2826.                 !"errorIntegration".equals(livelloMsgDiagnosticiLog4j) &&
  2827.                 !"infoProtocol".equals(livelloMsgDiagnosticiLog4j) &&
  2828.                 !"infoIntegration".equals(livelloMsgDiagnosticiLog4j) &&
  2829.                 !"debugLow".equals(livelloMsgDiagnosticiLog4j) &&
  2830.                 !"debugMedium".equals(livelloMsgDiagnosticiLog4j) &&
  2831.                 !"debugHigh".equals(livelloMsgDiagnosticiLog4j) &&
  2832.                 !"all".equals(livelloMsgDiagnosticiLog4j)){
  2833.             throw new JMException("Livello "+livelloMsgDiagnosticiLog4j+" non conosciuto");
  2834.         }
  2835.         this.msgDiagnosticiLivelloSeveritaLog4J = livelloMsgDiagnosticiLog4j;
  2836.         ConfigurazionePdDReader.livelloLog4JMessaggiDiagnosticiJMX = LogLevels.toLog4J(this.msgDiagnosticiLivelloSeveritaLog4J);
  2837.         ConfigurazionePdDReader.severitaLog4JMessaggiDiagnosticiJMX = LogLevels.toOpenSPCoop2(this.msgDiagnosticiLivelloSeveritaLog4J);
  2838.     }
  2839.    
  2840.     public void setTracciamentoAbilitato(boolean v){
  2841.         this.tracciamentoAbilitato = v;
  2842.         ConfigurazionePdDReader.tracciamentoBusteJMX = v;
  2843.     }
  2844.    
  2845.     public void setDumpBinarioPD(boolean v){
  2846.         this.dumpBinarioPDAbilitato = v;
  2847.         ConfigurazionePdDReader.dumpBinarioPDJMX = v;
  2848.     }
  2849.    
  2850.     public void setDumpBinarioPA(boolean v){
  2851.         this.dumpBinarioPAAbilitato = v;
  2852.         ConfigurazionePdDReader.dumpBinarioPAJMX = v;
  2853.     }
  2854.    
  2855.     public void setFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_BAD_REQUEST(boolean value) {
  2856.         try{
  2857.             ErroriProperties.setFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_BAD_REQUEST(
  2858.                     value,
  2859.                     this.openspcoopProperties.getRootDirectory(), this.log, Loader.getInstance());
  2860.         }catch(Exception e){
  2861.             this.logError(e.getMessage(),e);
  2862.         }
  2863.     }
  2864.    
  2865.     public void setFORCE_SPECIFIC_ERROR_TYPE_FOR_BAD_RESPONSE(boolean value) {
  2866.         try{
  2867.             ErroriProperties.setFORCE_SPECIFIC_ERROR_TYPE_FOR_BAD_RESPONSE(
  2868.                     value,
  2869.                     this.openspcoopProperties.getRootDirectory(), this.log, Loader.getInstance());
  2870.         }catch(Exception e){
  2871.             this.logError(e.getMessage(),e);
  2872.         }
  2873.     }
  2874.    
  2875.     public void setFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_RESPONSE_ERROR(boolean value) {
  2876.         try{
  2877.             ErroriProperties.setFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_RESPONSE_ERROR(
  2878.                     value,
  2879.                     this.openspcoopProperties.getRootDirectory(), this.log, Loader.getInstance());
  2880.         }catch(Exception e){
  2881.             this.logError(e.getMessage(),e);
  2882.         }
  2883.     }
  2884.        
  2885.     public void setFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_ERROR(boolean value) {
  2886.         try{
  2887.             ErroriProperties.setFORCE_SPECIFIC_ERROR_TYPE_FOR_INTERNAL_ERROR(
  2888.                     value,
  2889.                     this.openspcoopProperties.getRootDirectory(), this.log, Loader.getInstance());
  2890.         }catch(Exception e){
  2891.             this.logError(e.getMessage(),e);
  2892.         }
  2893.     }

  2894.     public String checkConnettoreById(long idConnettore) {
  2895.         try{
  2896.             ConnettoreCheck.check(idConnettore, false, this.logConnettori);
  2897.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  2898.         }catch(Exception e){
  2899.             this.logError(e.getMessage(),e);
  2900.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2901.         }
  2902.     }
  2903.    
  2904.     public String checkConnettoreByNome(String nomeConnettore) {
  2905.         try{
  2906.             ConnettoreCheck.check(nomeConnettore, false, this.logConnettori);
  2907.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  2908.         }catch(Exception e){
  2909.             this.logError(e.getMessage(),e);
  2910.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2911.         }
  2912.     }
  2913.    
  2914.     public String checkConnettoreTokenPolicyValidazione(String nomePolicy) {
  2915.         try{
  2916.             ConnettoreCheck.checkTokenPolicyValidazione(nomePolicy, this.logConnettori);
  2917.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  2918.         }catch(Exception e){
  2919.             this.logError(e.getMessage(),e);
  2920.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2921.         }
  2922.     }
  2923.     public String checkConnettoreTokenPolicyValidazione(String nomePolicy, String tipoConnettore) {
  2924.         try{
  2925.             ConnettoreCheck.checkTokenPolicyValidazione(nomePolicy, tipoConnettore, this.logConnettori);
  2926.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  2927.         }catch(Exception e){
  2928.             this.logError(e.getMessage(),e);
  2929.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2930.         }
  2931.     }
  2932.    
  2933.     public String checkConnettoreTokenPolicyNegoziazione(String nomePolicy) {
  2934.         try{
  2935.             ConnettoreCheck.checkTokenPolicyNegoziazione(nomePolicy, this.logConnettori);
  2936.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  2937.         }catch(Exception e){
  2938.             this.logError(e.getMessage(),e);
  2939.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2940.         }
  2941.     }
  2942.    
  2943.     public String checkConnettoreAttributeAuthority(String nomePolicy) {
  2944.         try{
  2945.             ConnettoreCheck.checkAttributeAuthority(nomePolicy, this.logConnettori);
  2946.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  2947.         }catch(Exception e){
  2948.             this.logError(e.getMessage(),e);
  2949.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2950.         }
  2951.     }
  2952.    
  2953.     public String getCertificatiConnettoreById(long idConnettore) {
  2954.         try{
  2955.             return ConnettoreCheck.getCertificati(idConnettore, true);
  2956.         }catch(Exception e){
  2957.             this.logError(e.getMessage(),e);
  2958.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2959.         }
  2960.     }
  2961.    
  2962.     public String getCertificatiConnettoreByNome(String nomeConnettore) {
  2963.         try{
  2964.             return ConnettoreCheck.getCertificati(nomeConnettore, true);
  2965.         }catch(Exception e){
  2966.             this.logError(e.getMessage(),e);
  2967.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2968.         }
  2969.     }
  2970.    
  2971.     public String getCertificatiConnettoreTokenPolicyValidazione(String nomePolicy) {
  2972.         try{
  2973.             return ConnettoreCheck.getCertificatiTokenPolicyValidazione(nomePolicy, this.logConnettori);
  2974.         }catch(Exception e){
  2975.             this.logError(e.getMessage(),e);
  2976.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2977.         }
  2978.     }
  2979.     public String getCertificatiConnettoreTokenPolicyValidazione(String nomePolicy, String tipoConnettore) {
  2980.         try{
  2981.             return ConnettoreCheck.getCertificatiTokenPolicyValidazione(nomePolicy, tipoConnettore, this.logConnettori);
  2982.         }catch(Exception e){
  2983.             this.logError(e.getMessage(),e);
  2984.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2985.         }
  2986.     }
  2987.    
  2988.     public String getCertificatiConnettoreTokenPolicyNegoziazione(String nomePolicy) {
  2989.         try{
  2990.             return ConnettoreCheck.getCertificatiTokenPolicyNegoziazione(nomePolicy, this.logConnettori);
  2991.         }catch(Exception e){
  2992.             this.logError(e.getMessage(),e);
  2993.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  2994.         }
  2995.     }
  2996.    
  2997.     public String getCertificatiConnettoreAttributeAuthority(String nomePolicy) {
  2998.         try{
  2999.             return ConnettoreCheck.getCertificatiAttributeAuthority(nomePolicy, this.logConnettori);
  3000.         }catch(Exception e){
  3001.             this.logError(e.getMessage(),e);
  3002.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3003.         }
  3004.     }
  3005.    
  3006.     public String checkCertificatiConnettoreHttpsById(long idConnettore, int sogliaWarningGiorni) {
  3007.         try{
  3008.             boolean addCertificateDetails = true;
  3009.             String separator = ": ";
  3010.             String newLine = "\n";
  3011.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiConnettoreHttpsByIdWithoutCache(idConnettore, sogliaWarningGiorni,
  3012.                     addCertificateDetails, separator, newLine);
  3013.             return statoCheck.toString(newLine);
  3014.         }catch(Exception e){
  3015.             this.logError(e.getMessage(),e);
  3016.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3017.         }
  3018.     }
  3019.    
  3020.     public String checkCertificatoApplicativoById(long idApplicativo, int sogliaWarningGiorni) {
  3021.         try{
  3022.             boolean addCertificateDetails = true;
  3023.             String separator = ": ";
  3024.             String newLine = "\n";
  3025.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatoApplicativoWithoutCache(idApplicativo, sogliaWarningGiorni,
  3026.                     addCertificateDetails, separator, newLine);
  3027.             return statoCheck.toString(newLine);
  3028.         }catch(Exception e){
  3029.             this.logError(e.getMessage(),e);
  3030.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3031.         }
  3032.     }
  3033.    
  3034.     public String checkCertificatoApplicativoByNome(String idApplicativo, int sogliaWarningGiorni) {
  3035.         try{
  3036.             if(!idApplicativo.contains("@") || !idApplicativo.contains("/")) {
  3037.                 throw new CoreException(FORMATO_NON_VALIDO_NOME_SOGGETTO);
  3038.             }
  3039.             String [] tmp = idApplicativo.split("@");
  3040.             if(tmp==null || tmp.length!=2 || tmp[0]==null || tmp[1]==null) {
  3041.                 throw new CoreException(FORMATO_NON_VALIDO_NOME_SOGGETTO);
  3042.             }
  3043.             else {
  3044.                 String nome = tmp[0];
  3045.                 if(!tmp[1].contains("/")) {
  3046.                     throw new CoreException(FORMATO_NON_VALIDO_NOME_SOGGETTO);
  3047.                 }
  3048.                 else {
  3049.                     String [] tmp2 = tmp[1].split("/");
  3050.                     if(tmp2==null || tmp2.length!=2 || tmp2[0]==null || tmp2[1]==null) {
  3051.                         throw new CoreException(FORMATO_NON_VALIDO_NOME_SOGGETTO);
  3052.                     }
  3053.                     else {
  3054.                         String tipoSoggetto = tmp2[0];
  3055.                         String nomeSoggetto = tmp2[1];
  3056.                         IDServizioApplicativo idSA = new IDServizioApplicativo();
  3057.                         idSA.setNome(nome);
  3058.                         idSA.setIdSoggettoProprietario(new IDSoggetto(tipoSoggetto, nomeSoggetto));
  3059.                        
  3060.                         boolean addCertificateDetails = true;
  3061.                         String separator = ": ";
  3062.                         String newLine = "\n";
  3063.                         CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatoApplicativoWithoutCache(idSA, sogliaWarningGiorni,
  3064.                                 addCertificateDetails, separator, newLine);
  3065.                         return statoCheck.toString(newLine);
  3066.                     }
  3067.                 }
  3068.             }
  3069.         }catch(Exception e){
  3070.             this.logError(e.getMessage(),e);
  3071.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3072.         }
  3073.     }
  3074.    
  3075.     public String checkCertificatoModiApplicativoById(long idApplicativo, int sogliaWarningGiorni) {
  3076.         try{
  3077.             boolean addCertificateDetails = true;
  3078.             String separator = ": ";
  3079.             String newLine = "\n";
  3080.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatoModiApplicativoWithoutCache(idApplicativo, sogliaWarningGiorni,
  3081.                     addCertificateDetails, separator, newLine);
  3082.             return statoCheck.toString(newLine);
  3083.         }catch(Exception e){
  3084.             this.logError(e.getMessage(),e);
  3085.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3086.         }
  3087.     }
  3088.    
  3089.     public String checkCertificatoModiApplicativoByNome(String idApplicativo, int sogliaWarningGiorni) {
  3090.         try{
  3091.             if(!idApplicativo.contains("@") || !idApplicativo.contains("/")) {
  3092.                 throw new CoreException(FORMATO_NON_VALIDO_NOME_SOGGETTO);
  3093.             }
  3094.             String [] tmp = idApplicativo.split("@");
  3095.             if(tmp==null || tmp.length!=2 || tmp[0]==null || tmp[1]==null) {
  3096.                 throw new CoreException(FORMATO_NON_VALIDO_NOME_SOGGETTO);
  3097.             }
  3098.             else {
  3099.                 String nome = tmp[0];
  3100.                 if(!tmp[1].contains("/")) {
  3101.                     throw new CoreException(FORMATO_NON_VALIDO_NOME_SOGGETTO);
  3102.                 }
  3103.                 else {
  3104.                     String [] tmp2 = tmp[1].split("/");
  3105.                     if(tmp2==null || tmp2.length!=2 || tmp2[0]==null || tmp2[1]==null) {
  3106.                         throw new CoreException(FORMATO_NON_VALIDO_NOME_SOGGETTO);
  3107.                     }
  3108.                     else {
  3109.                         String tipoSoggetto = tmp2[0];
  3110.                         String nomeSoggetto = tmp2[1];
  3111.                         IDServizioApplicativo idSA = new IDServizioApplicativo();
  3112.                         idSA.setNome(nome);
  3113.                         idSA.setIdSoggettoProprietario(new IDSoggetto(tipoSoggetto, nomeSoggetto));
  3114.                        
  3115.                         boolean addCertificateDetails = true;
  3116.                         String separator = ": ";
  3117.                         String newLine = "\n";
  3118.                         CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatoModiApplicativoWithoutCache(idSA, sogliaWarningGiorni,
  3119.                                 addCertificateDetails, separator, newLine);
  3120.                         return statoCheck.toString(newLine);
  3121.                     }
  3122.                 }
  3123.             }
  3124.         }catch(Exception e){
  3125.             this.logError(e.getMessage(),e);
  3126.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3127.         }
  3128.     }
  3129.    
  3130.     public String checkCertificatiJvm(int sogliaWarningGiorni) {
  3131.         try{
  3132.             boolean addCertificateDetails = true;
  3133.             String separator = ": ";
  3134.             String newLine = "\n";
  3135.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiJvm(sogliaWarningGiorni,
  3136.                     addCertificateDetails, separator, newLine);
  3137.             return statoCheck.toString(newLine);
  3138.         }catch(Exception e){
  3139.             this.logError(e.getMessage(),e);
  3140.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3141.         }
  3142.     }
  3143.    
  3144.     public String checkProxyJvm() {
  3145.         try{
  3146.             ConnettoreCheck.checkProxyJvm(this.logConnettori);
  3147.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3148.         }catch(Exception e){
  3149.             this.logError(e.getMessage(),e);
  3150.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3151.         }
  3152.     }
  3153.    
  3154.     public String checkCertificatiConnettoreHttpsTokenPolicyValidazione(String nomePolicy, int sogliaWarningGiorni) {
  3155.         try{
  3156.             boolean addCertificateDetails = true;
  3157.             String separator = ": ";
  3158.             String newLine = "\n";
  3159.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiConnettoreHttpsTokenPolicyValidazione(nomePolicy, sogliaWarningGiorni,
  3160.                     addCertificateDetails, separator, newLine);
  3161.             return statoCheck.toString(newLine);
  3162.         }catch(Exception e){
  3163.             this.logError(e.getMessage(),e);
  3164.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3165.         }
  3166.     }
  3167.     public String checkCertificatiConnettoreHttpsTokenPolicyValidazione(String nomePolicy, String tipo, int sogliaWarningGiorni) {
  3168.         try{
  3169.             boolean addCertificateDetails = true;
  3170.             String separator = ": ";
  3171.             String newLine = "\n";
  3172.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiConnettoreHttpsTokenPolicyValidazione(nomePolicy, tipo, sogliaWarningGiorni,
  3173.                     addCertificateDetails, separator, newLine);
  3174.             return statoCheck.toString(newLine);
  3175.         }catch(Exception e){
  3176.             this.logError(e.getMessage(),e);
  3177.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3178.         }
  3179.     }

  3180.     public String checkCertificatiValidazioneJwtTokenPolicyValidazione(String nomePolicy, int sogliaWarningGiorni) {
  3181.         try{
  3182.             boolean addCertificateDetails = true;
  3183.             String separator = ": ";
  3184.             String newLine = "\n";
  3185.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiValidazioneJwtTokenPolicyValidazione(nomePolicy, sogliaWarningGiorni,
  3186.                     addCertificateDetails, separator, newLine);
  3187.             return statoCheck.toString(newLine);
  3188.         }catch(Exception e){
  3189.             this.logError(e.getMessage(),e);
  3190.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3191.         }
  3192.     }
  3193.    
  3194.     public String checkCertificatiForwardToJwtTokenPolicyValidazione(String nomePolicy, int sogliaWarningGiorni) {
  3195.         try{
  3196.             boolean addCertificateDetails = true;
  3197.             String separator = ": ";
  3198.             String newLine = "\n";
  3199.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiForwardToJwtTokenPolicyValidazione(nomePolicy, sogliaWarningGiorni,
  3200.                     addCertificateDetails, separator, newLine);
  3201.             return statoCheck.toString(newLine);
  3202.         }catch(Exception e){
  3203.             this.logError(e.getMessage(),e);
  3204.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3205.         }
  3206.     }
  3207.    
  3208.     public String checkCertificatiConnettoreHttpsTokenPolicyNegoziazione(String nomePolicy, int sogliaWarningGiorni) {
  3209.         try{
  3210.             boolean addCertificateDetails = true;
  3211.             String separator = ": ";
  3212.             String newLine = "\n";
  3213.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiConnettoreHttpsTokenPolicyNegoziazione(nomePolicy, sogliaWarningGiorni,
  3214.                     addCertificateDetails, separator, newLine);
  3215.             return statoCheck.toString(newLine);
  3216.         }catch(Exception e){
  3217.             this.logError(e.getMessage(),e);
  3218.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3219.         }
  3220.     }
  3221.    
  3222.     public String checkCertificatiSignedJwtTokenPolicyNegoziazione(String nomePolicy, int sogliaWarningGiorni) {
  3223.         try{
  3224.             boolean addCertificateDetails = true;
  3225.             String separator = ": ";
  3226.             String newLine = "\n";
  3227.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiSignedJwtTokenPolicyNegoziazione(nomePolicy, sogliaWarningGiorni,
  3228.                     addCertificateDetails, separator, newLine);
  3229.             return statoCheck.toString(newLine);
  3230.         }catch(Exception e){
  3231.             this.logError(e.getMessage(),e);
  3232.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3233.         }
  3234.     }
  3235.    
  3236.     public String checkCertificatiConnettoreHttpsAttributeAuthority(String nomePolicy, int sogliaWarningGiorni) {
  3237.         try{
  3238.             boolean addCertificateDetails = true;
  3239.             String separator = ": ";
  3240.             String newLine = "\n";
  3241.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiConnettoreHttpsAttributeAuthority(nomePolicy, sogliaWarningGiorni,
  3242.                     addCertificateDetails, separator, newLine);
  3243.             return statoCheck.toString(newLine);
  3244.         }catch(Exception e){
  3245.             this.logError(e.getMessage(),e);
  3246.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3247.         }
  3248.     }
  3249.    
  3250.     public String checkCertificatiAttributeAuthorityJwtRichiesta(String nomePolicy, int sogliaWarningGiorni) {
  3251.         try{
  3252.             boolean addCertificateDetails = true;
  3253.             String separator = ": ";
  3254.             String newLine = "\n";
  3255.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiAttributeAuthorityJwtRichiesta(nomePolicy, sogliaWarningGiorni,
  3256.                     addCertificateDetails, separator, newLine);
  3257.             return statoCheck.toString(newLine);
  3258.         }catch(Exception e){
  3259.             this.logError(e.getMessage(),e);
  3260.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3261.         }
  3262.     }
  3263.    
  3264.    
  3265.     public String checkCertificatiAttributeAuthorityJwtRisposta(String nomePolicy, int sogliaWarningGiorni) {
  3266.         try{
  3267.             boolean addCertificateDetails = true;
  3268.             String separator = ": ";
  3269.             String newLine = "\n";
  3270.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiAttributeAuthorityJwtRisposta(nomePolicy, sogliaWarningGiorni,
  3271.                     addCertificateDetails, separator, newLine);
  3272.             return statoCheck.toString(newLine);
  3273.         }catch(Exception e){
  3274.             this.logError(e.getMessage(),e);
  3275.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3276.         }
  3277.     }
  3278.    
  3279.     public String checkCertificatiMessageSecurityErogazioneById(long idErogazione, int sogliaWarningGiorni) {
  3280.         try{
  3281.             boolean addCertificateDetails = true;
  3282.             String separator = ": ";
  3283.             String newLine = "\n";
  3284.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiMessageSecurityErogazioneById(idErogazione, sogliaWarningGiorni,
  3285.                     addCertificateDetails, separator, newLine);
  3286.             return statoCheck.toString(newLine);
  3287.         }catch(Exception e){
  3288.             this.log.error(e.getMessage(),e);
  3289.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3290.         }
  3291.     }
  3292.    
  3293.     public String checkCertificatiMessageSecurityFruizioneById(long idFruizione, int sogliaWarningGiorni) {
  3294.         try{
  3295.             boolean addCertificateDetails = true;
  3296.             String separator = ": ";
  3297.             String newLine = "\n";
  3298.             CertificateCheck statoCheck = ConfigurazionePdDManager.getInstance().checkCertificatiMessageSecurityFruizioneById(idFruizione, sogliaWarningGiorni,
  3299.                     addCertificateDetails, separator, newLine);
  3300.             return statoCheck.toString(newLine);
  3301.         }catch(Exception e){
  3302.             this.log.error(e.getMessage(),e);
  3303.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3304.         }
  3305.     }
  3306.    
  3307.     public String updateStatoPortaDelegata(String nomePorta, boolean enable) {
  3308.         try{
  3309.             IDPortaDelegata idPD = new IDPortaDelegata();
  3310.             idPD.setNome(nomePorta);
  3311.             this.configReader.updateStatoPortaDelegata(idPD, enable ? StatoFunzionalita.ABILITATO : StatoFunzionalita.DISABILITATO);
  3312.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3313.         }catch(Exception e){
  3314.             this.logError(e.getMessage(),e);
  3315.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3316.         }
  3317.     }
  3318.    
  3319.     public String updateStatoPortaApplicativa(String nomePorta, boolean enable) {
  3320.         try{
  3321.             IDPortaApplicativa idPA = new IDPortaApplicativa();
  3322.             idPA.setNome(nomePorta);
  3323.             this.configReader.updateStatoPortaApplicativa(idPA, enable ? StatoFunzionalita.ABILITATO : StatoFunzionalita.DISABILITATO);
  3324.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3325.         }catch(Exception e){
  3326.             this.logError(e.getMessage(),e);
  3327.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3328.         }
  3329.     }
  3330.    
  3331.     public String updateStatoConnettoreMultiplo(String nomePorta, String nomeConnettore, boolean enable) {
  3332.         return updateStatoConnettoreMultiplo(nomePorta, nomeConnettore, null, enable);
  3333.     }
  3334.     public String updateStatoConnettoreMultiplo(String nomePorta, String nomeConnettore, String username, boolean enable) {
  3335.         try{
  3336.             IDPortaApplicativa idPA = new IDPortaApplicativa();
  3337.             idPA.setNome(nomePorta);
  3338.             String nomeServizioApplicativo = null;
  3339.             if(username!=null) {
  3340.                 nomeServizioApplicativo = this.configReader.updateStatoConnettoreMultiplo(idPA, nomeConnettore, username, enable ? StatoFunzionalita.ABILITATO : StatoFunzionalita.DISABILITATO);
  3341.             }
  3342.             else {
  3343.                 nomeServizioApplicativo = this.configReader.updateStatoConnettoreMultiplo(idPA, nomeConnettore, enable ? StatoFunzionalita.ABILITATO : StatoFunzionalita.DISABILITATO);
  3344.             }
  3345.             if(nomeServizioApplicativo==null) {
  3346.                 throw new CoreException("Connettore '"+nomeConnettore+"' non trovato nella porta '"+nomePorta+"'");
  3347.             }
  3348.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3349.         }catch(Exception e){
  3350.             this.logError(e.getMessage(),e);
  3351.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3352.         }
  3353.     }
  3354.    
  3355.     public String updateSchedulingConnettoreMultiplo(String nomePorta, String nomeConnettore, boolean enable) {
  3356.         return updateSchedulingConnettoreMultiplo(nomePorta, nomeConnettore, null, enable);
  3357.     }
  3358.     public String updateSchedulingConnettoreMultiplo(String nomePorta, String nomeConnettore, String username, boolean enable) {
  3359.         try{
  3360.             IDPortaApplicativa idPA = new IDPortaApplicativa();
  3361.             idPA.setNome(nomePorta);
  3362.             String nomeServizioApplicativo = null;
  3363.             if(username!=null) {
  3364.                 nomeServizioApplicativo = this.configReader.updateSchedulingConnettoreMultiplo(idPA, nomeConnettore, username, enable ? StatoFunzionalita.ABILITATO : StatoFunzionalita.DISABILITATO);
  3365.             }
  3366.             else {
  3367.                 nomeServizioApplicativo = this.configReader.updateSchedulingConnettoreMultiplo(idPA, nomeConnettore, enable ? StatoFunzionalita.ABILITATO : StatoFunzionalita.DISABILITATO);
  3368.             }
  3369.             if(nomeServizioApplicativo==null) {
  3370.                 throw new CoreException("Connettore '"+nomeConnettore+"' non trovato nella porta '"+nomePorta+"'");
  3371.             }
  3372.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3373.         }catch(Exception e){
  3374.             this.logError(e.getMessage(),e);
  3375.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3376.         }
  3377.     }
  3378.    
  3379.     public String updateSchedulingConnettoreMultiploMessaggiPresiInCarico(String nomePorta, String nomeConnettore, boolean enable) {
  3380.         try{
  3381.             IDPortaApplicativa idPA = new IDPortaApplicativa();
  3382.             idPA.setNome(nomePorta);
  3383.             PortaApplicativa pa = this.configReader.getPortaApplicativa(idPA, null); // prendo volutamente quello in cache
  3384.             String nomeServizioApplicativo = null;
  3385.             if(pa.sizeServizioApplicativoList()>0) {
  3386.                 for (PortaApplicativaServizioApplicativo paSA : pa.getServizioApplicativoList()) {
  3387.                     String nomePaSA = paSA.getDatiConnettore()!= null ? paSA.getDatiConnettore().getNome() : CostantiConfigurazione.NOME_CONNETTORE_DEFAULT;
  3388.                     if(nomeConnettore.equals(nomePaSA)) {
  3389.                         nomeServizioApplicativo = paSA.getNome();
  3390.                         break;
  3391.                     }
  3392.                 }
  3393.             }
  3394.             if(nomeServizioApplicativo==null) {
  3395.                 throw new CoreException("Connettore '"+nomeConnettore+"' non trovato nella porta '"+nomePorta+"'");
  3396.             }
  3397.            
  3398.             DBManager dbManager = DBManager.getInstance();
  3399.             Resource resource = null;
  3400.             IDSoggetto dominio = this.openspcoopProperties.getIdentitaPortaDefaultWithoutProtocol();
  3401.             String modulo = this.getClass().getName()+".schedulingConnettoreMultiplo";
  3402.             try {
  3403.                 resource = dbManager.getResource(dominio, modulo, null);
  3404.                 Connection c = (Connection) resource.getResource();
  3405.                 boolean debug = this.openspcoopProperties.isTimerConsegnaContenutiApplicativiSchedulingDebug();
  3406.                 boolean checkEliminazioneLogica = this.openspcoopProperties.isTimerConsegnaContenutiApplicativiSchedulingCheckEliminazioneLogica();
  3407.                 int row = -1;
  3408.                 String op = "";
  3409.                 if(enable) {
  3410.                     op = "abilitato";
  3411.                     row = GestoreMessaggi.abilitaSchedulingMessaggiDaRiconsegnareIntoBox(nomeServizioApplicativo, checkEliminazioneLogica,
  3412.                             OpenSPCoop2Logger.getLoggerOpenSPCoopConsegnaContenutiSql(debug), c,  debug);
  3413.                 }else {
  3414.                     op = "disabilitato";
  3415.                     row = GestoreMessaggi.disabilitaSchedulingMessaggiDaRiconsegnareIntoBox(nomeServizioApplicativo, checkEliminazioneLogica,
  3416.                             OpenSPCoop2Logger.getLoggerOpenSPCoopConsegnaContenutiSql(debug), c,  debug);
  3417.                 }
  3418.                 if(row>=0) {
  3419.                     return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO_PREFIX+op+" scheduling in "+row+" messagg"+(row==1 ? "io" : "i");
  3420.                 }
  3421.             }finally {
  3422.                 try{
  3423.                     dbManager.releaseResource(dominio, modulo, resource);
  3424.                 }catch(Exception eClose){
  3425.                     // close
  3426.                 }
  3427.             }
  3428.            
  3429.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3430.         }catch(Exception e){
  3431.             this.logError(e.getMessage(),e);
  3432.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3433.         }
  3434.     }
  3435.    
  3436.     public String ripulisciRiferimentiCacheAccordoCooperazione(long id) {
  3437.         try{
  3438.             GestoreCacheCleaner.removeAccordoCooperazione(id);
  3439.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3440.         }catch(Exception e){
  3441.             this.logError(e.getMessage(),e);
  3442.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3443.         }
  3444.     }
  3445.    
  3446.     public String ripulisciRiferimentiCacheApi(long id) {
  3447.         try{
  3448.             GestoreCacheCleaner.removeAccordoServizioParteComune(id);
  3449.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3450.         }catch(Exception e){
  3451.             this.logError(e.getMessage(),e);
  3452.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3453.         }
  3454.     }
  3455.    
  3456.     public String ripulisciRiferimentiCacheErogazione(long id) {
  3457.         try{
  3458.             GestoreCacheCleaner.removeErogazione(id);
  3459.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3460.         }catch(Exception e){
  3461.             this.logError(e.getMessage(),e);
  3462.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3463.         }
  3464.     }
  3465.    
  3466.     public String ripulisciRiferimentiCacheFruizione(long id) {
  3467.         try{
  3468.             GestoreCacheCleaner.removeFruizione(id);
  3469.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3470.         }catch(Exception e){
  3471.             this.logError(e.getMessage(),e);
  3472.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3473.         }
  3474.     }
  3475.    
  3476.     public String ripulisciRiferimentiCacheSoggetto(long id) {
  3477.         try{
  3478.             GestoreCacheCleaner.removeSoggetto(id);
  3479.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3480.         }catch(Exception e){
  3481.             this.logError(e.getMessage(),e);
  3482.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3483.         }
  3484.     }
  3485.    
  3486.     public String ripulisciRiferimentiCacheApplicativo(long id) {
  3487.         try{
  3488.             GestoreCacheCleaner.removeApplicativo(id);
  3489.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3490.         }catch(Exception e){
  3491.             this.logError(e.getMessage(),e);
  3492.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3493.         }
  3494.     }
  3495.    
  3496.     public String ripulisciRiferimentiCacheRuolo(long id) {
  3497.         try{
  3498.             GestoreCacheCleaner.removeRuolo(id);
  3499.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3500.         }catch(Exception e){
  3501.             this.logError(e.getMessage(),e);
  3502.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3503.         }
  3504.     }
  3505.    
  3506.     public String ripulisciRiferimentiCacheScope(long id) {
  3507.         try{
  3508.             GestoreCacheCleaner.removeScope(id);
  3509.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3510.         }catch(Exception e){
  3511.             this.logError(e.getMessage(),e);
  3512.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3513.         }
  3514.     }
  3515.    
  3516.     public String ripulisciRiferimentiCacheTokenPolicyValidazione(long id) {
  3517.         try{
  3518.             GestoreCacheCleaner.removeGenericProperties(id);
  3519.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3520.         }catch(Exception e){
  3521.             this.logError(e.getMessage(),e);
  3522.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3523.         }
  3524.     }
  3525.    
  3526.     public String ripulisciRiferimentiCacheTokenPolicyNegoziazione(long id) {
  3527.         try{
  3528.             GestoreCacheCleaner.removeGenericProperties(id);
  3529.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3530.         }catch(Exception e){
  3531.             this.logError(e.getMessage(),e);
  3532.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3533.         }
  3534.     }
  3535.    
  3536.     public String ripulisciRiferimentiCacheAttributeAuthority(long id) {
  3537.         try{
  3538.             GestoreCacheCleaner.removeGenericProperties(id);
  3539.             return JMXUtils.MSG_OPERAZIONE_EFFETTUATA_SUCCESSO;
  3540.         }catch(Exception e){
  3541.             this.logError(e.getMessage(),e);
  3542.             return JMXUtils.MSG_OPERAZIONE_NON_EFFETTUATA+e.getMessage();
  3543.         }
  3544.     }

  3545. }