CostantiConnettori.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.core.constants;

  21. import java.util.ArrayList;
  22. import java.util.List;

  23. import org.openspcoop2.utils.transport.http.SSLUtilities;

  24. /**
  25.  * CostantiConnettori
  26.  *
  27.  * @author Andrea Poli (apoli@link.it)
  28.  * @author $Author$
  29.  * @version $Rev$, $Date$
  30.  */
  31. public class CostantiConnettori {
  32.    
  33.     private CostantiConnettori() {}
  34.    
  35.    
  36.     /** COMMONS PROPERTIES */
  37.    
  38.     public static final String CONNETTORE_LOCATION = "location";
  39.     public static final String CONNETTORE_DEBUG = "debug";
  40.     public static final String CONNETTORE_USERNAME = "user";
  41.     public static final String CONNETTORE_PASSWORD = "password";
  42.     public static final String CONNETTORE_BEARER_TOKEN = "bearerToken";
  43.     public static final String CONNETTORE_CONNECTION_TIMEOUT = "connectionTimeout";
  44.     public static final String CONNETTORE_CONNECTION_TIMEOUT_GLOBALE = "connectionTimeoutGlobale";
  45.     public static final String CONNETTORE_READ_CONNECTION_TIMEOUT = "readConnectionTimeout";
  46.     public static final String CONNETTORE_READ_CONNECTION_TIMEOUT_GLOBALE = "readConnectionTimeoutGlobale";
  47.     public static final String CONNETTORE_TEMPO_MEDIO_RISPOSTA = "avgResponseTime";
  48.     public static final String CONNETTORE_TOKEN_POLICY = "tokenPolicy";
  49.    
  50.    
  51.     /** EXTENDED PROPERTIES */
  52.    
  53.     public static final String CONNETTORE_EXTENDED_PREFIX = "-#ext#-";
  54.    
  55.    
  56.     /** HTTP PROPERTIES */
  57.    
  58.     public static final String CONNETTORE_HTTP_PROXY_TYPE = "proxyType";
  59.     public static final String CONNETTORE_HTTP_PROXY_HOSTNAME = "proxyHostname";
  60.     public static final String CONNETTORE_HTTP_PROXY_PORT = "proxyPort";
  61.     public static final String CONNETTORE_HTTP_PROXY_USERNAME = "proxyUsername";
  62.     public static final String CONNETTORE_HTTP_PROXY_PASSWORD = "proxyPassword";

  63.     public static final String CONNETTORE_HTTP_PROXY_TYPE_VALUE_HTTP = TipiConnettore.HTTP.getNome();
  64.     public static final String CONNETTORE_HTTP_PROXY_TYPE_VALUE_HTTPS = TipiConnettore.HTTPS.getNome();
  65.    
  66.     public static final String CONNETTORE_HTTP_REDIRECT_FOLLOW = "followRedirects";
  67.     public static final String CONNETTORE_HTTP_REDIRECT_MAX_HOP = "maxHopRedirect";
  68.     public static final String CONNETTORE_HTTP_REDIRECT_NUMBER = "numberRedirect";
  69.     public static final String CONNETTORE_HTTP_REDIRECT_ROUTE = "routeRedirect";
  70.    
  71.     public static final String CONNETTORE_HTTP_DATA_TRANSFER_MODE = "dataTransferMode";
  72.     public static final String CONNETTORE_HTTP_DATA_TRANSFER_MODE_CHUNK_SIZE = "transferChunkSize";
  73.    
  74.     public static final String CONNETTORE_APIKEY_HEADER = "apiKeyHeader";
  75.     public static final String CONNETTORE_APIKEY = "apiKey";
  76.     public static final String CONNETTORE_APIKEY_APPID_HEADER = "appIdHeader";
  77.     public static final String CONNETTORE_APIKEY_APPID = "appId";
  78.     public static final String DEFAULT_HEADER_API_KEY = "X-API-KEY";
  79.     public static final String DEFAULT_HEADER_APP_ID = "X-APP-ID";
  80.    
  81.     /** JMS PROPERTIES */
  82.    
  83.     public static final String CONNETTORE_JMS_TIPO = "tipo";
  84.     public static final String CONNETTORE_JMS_CONTEXT_PREFIX="context-";
  85.     public static final String CONNETTORE_JMS_POOL_PREFIX="pool-";
  86.     public static final String CONNETTORE_JMS_LOOKUP_DESTINATION_PREFIX="lookupDestination-";
  87.     public static final String CONNETTORE_JMS_CONNECTION_FACTORY="connection-factory";
  88.     public static final String CONNETTORE_JMS_SEND_AS="send-as";
  89.     public static final String CONNETTORE_JMS_LOCATIONS_CACHE = "locations-cache";
  90.     public static final String CONNETTORE_JMS_ACKNOWLEDGE_MODE = "acknowledgeMode";
  91.    
  92.     public static final String CONNETTORE_JMS_LOCATION_REPLACE_TOKEN_NOME_SERVIZIO = "#Servizio";
  93.     public static final String CONNETTORE_JMS_LOCATION_REPLACE_TOKEN_TIPO_SERVIZIO = "#TipoServizio";
  94.     public static final String CONNETTORE_JMS_LOCATION_REPLACE_TOKEN_AZIONE = "#Azione";
  95.    
  96.     public static final String CONNETTORE_JMS_TIPO_QUEUE = "queue";
  97.     public static final String CONNETTORE_JMS_TIPO_TOPIC = "topic";
  98.    
  99.     public static final String CONNETTORE_JMS_SEND_AS_TEXT_MESSAGE = "TextMessage";
  100.     public static final String CONNETTORE_JMS_SEND_AS_BYTES_MESSAGE = "BytesMessage";
  101.    
  102.     public static final String CONNETTORE_JMS_LOCATIONS_CACHE_ABILITATA = "abilitata";
  103.     public static final String CONNETTORE_JMS_LOCATIONS_CACHE_DISABILITATA = "disabilitata";
  104.    
  105.    
  106.     /** HTTPS PROPERTIES */
  107.    
  108.     public static final String CONNETTORE_HTTPS_TRUST_ALL_CERTS = "trustAllCerts";
  109.     public static final String CONNETTORE_HTTPS_TRUST_STORE_LOCATION = "trustStoreLocation";
  110.     public static final String CONNETTORE_HTTPS_TRUST_STORE_PASSWORD = "trustStorePassword";
  111.     public static final String CONNETTORE_HTTPS_TRUST_MANAGEMENT_ALGORITHM = "trustManagementAlgorithm";
  112.     public static final String CONNETTORE_HTTPS_TRUST_STORE_TYPE = "trustStoreType";
  113.     public static final String CONNETTORE_HTTPS_TRUST_STORE_CRLS = "trustStoreCRLs";
  114.     public static final String CONNETTORE_HTTPS_TRUST_STORE_OCSP_POLICY = "trustStoreOCSPPolicy";
  115.     public static final String CONNETTORE_HTTPS_KEY_STORE_LOCATION = "keyStoreLocation";
  116.     public static final String CONNETTORE_HTTPS_KEY_STORE_PASSWORD = "keyStorePassword";
  117.     public static final String CONNETTORE_HTTPS_KEY_MANAGEMENT_ALGORITHM = "keyManagementAlgorithm";
  118.     public static final String CONNETTORE_HTTPS_KEY_STORE_TYPE = "keyStoreType";
  119.     public static final String CONNETTORE_HTTPS_KEY_STORE_BYOK_POLICY = "keyStoreBYOKPolicy";
  120.     public static final String CONNETTORE_HTTPS_KEY_PASSWORD = "keyPassword";
  121.     public static final String CONNETTORE_HTTPS_KEY_ALIAS = "keyAlias";
  122.     public static final String CONNETTORE_HTTPS_HOSTNAME_VERIFIER = "hostnameVerifier";
  123.     public static final String CONNETTORE_HTTPS_CLASSNAME_HOSTNAME_VERIFIER = "classNameHostnameVerifier";
  124.     public static final String CONNETTORE_HTTPS_SSL_TYPE = "sslType";
  125.     public static final String CONNETTORE_HTTPS_SECURE_RANDOM = "secureRandom";
  126.     public static final String CONNETTORE_HTTPS_SECURE_RANDOM_ALGORITHM = "secureRandomAlgorithm";

  127.    
  128.     public static final String CONNETTORE_HTTPS_SSL_TYPE_DEFAULT_VALUE=SSLUtilities.getSafeDefaultProtocol();
  129.    
  130.    
  131.    
  132.     /** FILE PROPERTIES */
  133.    
  134.     public static final String CONNETTORE_FILE_REQUEST_OUTPUT_FILE = "outputFile";
  135.     public static final String CONNETTORE_FILE_REQUEST_OUTPUT_FILE_PERMISSIONS = "outputFilePermissions";
  136.     public static final String CONNETTORE_FILE_REQUEST_OUTPUT_FILE_HEADERS = "outputFileHeaders";
  137.     public static final String CONNETTORE_FILE_REQUEST_OUTPUT_FILE_HEADERS_PERMISSIONS = "outputFileHeadersPermissions";
  138.     public static final String CONNETTORE_FILE_REQUEST_OUTPUT_AUTO_CREATE_DIR = "outputFileAutoCreateParentDirectory";
  139.     public static final String CONNETTORE_FILE_REQUEST_OUTPUT_OVERWRITE_FILE = "outputFileOverwriteIfExists";
  140.     public static final String CONNETTORE_FILE_RESPONSE_INPUT_MODE = "response";
  141.     public static final String CONNETTORE_FILE_RESPONSE_INPUT_FILE = "inputFile";
  142.     public static final String CONNETTORE_FILE_RESPONSE_INPUT_FILE_HEADERS = "inputFileHeaders";
  143.     public static final String CONNETTORE_FILE_RESPONSE_INPUT_FILE_DELETE_AFTER_READ = "inputFileDeleteAfterRead";
  144.     public static final String CONNETTORE_FILE_RESPONSE_INPUT_WAIT_TIME = "inputFileWaitTimeIfNotExists";
  145.    
  146.    
  147.    
  148.     /** DIRECT VM PROPERTIES */
  149.    
  150.     public static final String CONNETTORE_DIRECT_VM_PROTOCOL = "protocol";
  151.     public static final String CONNETTORE_DIRECT_VM_CONTEXT = "context";
  152.     public static final String CONNETTORE_DIRECT_VM_PDD_CONTEXT_PRESERVE = "contextPreserve";
  153.     public static final String CONNETTORE_DIRECT_VM_PD = "pd";
  154.     public static final String CONNETTORE_DIRECT_VM_PA = "pa";
  155.    
  156.    
  157.    
  158.     /** STRESSTEST PROPERTIES */
  159.    
  160.     public static final String CONNETTORE_STRESS_TEST_SLEEP = "sleep";
  161.     public static final String CONNETTORE_STRESS_TEST_SLEEP_MAX = "sleepMax";
  162.     public static final String CONNETTORE_STRESS_TEST_SLEEP_MIN = "sleepMin";
  163.     public static final String CONNETTORE_STRESS_TEST_HEADER_APPLICATIVO = "addHeader";
  164.    
  165.    
  166.     /** NULLECHO PROPERTIES */
  167.    
  168.     public static final String CONNETTORE_NULL_ECHO_GENERA_TRASMISSIONE = "generaTrasmissione";
  169.     public static final String CONNETTORE_NULL_ECHO_GENERA_TRASMISSIONE_INVERTITA = "generaTrasmissioneInvertita";
  170.     public static final String CONNETTORE_NULL_ECHO_GENERA_TRASMISSIONE_ANDATA_RITORNO = "generaTrasmissioneAndataRitorno";
  171.    
  172.    
  173.     /** STATUS PROPERTIES */
  174.     public static final String CONNETTORE_STATUS_RESPONSE_TYPE = "statusResponseType";
  175.     public static final String CONNETTORE_STATUS_TEST_CONNECTIVITY = "testConnectivity";
  176.     public static final String CONNETTORE_STATUS_PERIOD = "period";
  177.     public static final String CONNETTORE_STATUS_PERIOD_VALUE = "periodValue";
  178.     public static final String CONNETTORE_STATUS_STAT_LIFETIME = "statLifetime";
  179.    
  180.     /** BYOK PROPERTIES */
  181.    
  182.     private static List<String> confidentials = new ArrayList<>();
  183.     public static List<String> getConfidentials() {
  184.         return confidentials;
  185.     }
  186.     static {
  187.         confidentials.add(CONNETTORE_PASSWORD);
  188.         confidentials.add(CONNETTORE_BEARER_TOKEN);
  189.         confidentials.add(CONNETTORE_APIKEY);
  190.         confidentials.add(CONNETTORE_HTTPS_TRUST_STORE_PASSWORD);
  191.         confidentials.add(CONNETTORE_HTTPS_KEY_STORE_PASSWORD);
  192.         confidentials.add(CONNETTORE_HTTPS_KEY_PASSWORD);
  193.         confidentials.add(CONNETTORE_HTTP_PROXY_PASSWORD);
  194.     }
  195.    
  196.     public static boolean isConfidential(String nome) {
  197.         return confidentials.contains(nome);
  198.     }
  199. }