ConnettoreJMSUtils.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.web.ctrlstat.servlet.connettori;

  21. import java.util.List;

  22. import org.openspcoop2.core.constants.CostantiDB;
  23. import org.openspcoop2.core.registry.constants.StatiAccordo;
  24. import org.openspcoop2.utils.UtilsException;
  25. import org.openspcoop2.web.ctrlstat.core.ControlStationCore;
  26. import org.openspcoop2.web.ctrlstat.servlet.ConsoleHelper;
  27. import org.openspcoop2.web.ctrlstat.servlet.sa.ServiziApplicativiCostanti;
  28. import org.openspcoop2.web.lib.mvc.DataElement;
  29. import org.openspcoop2.web.lib.mvc.DataElementType;
  30. import org.openspcoop2.web.lib.mvc.TipoOperazione;

  31. /**
  32.  * ConnettoreJMSUtils
  33.  *
  34.  * @author Andrea Poli (apoli@link.it)
  35.  * @author $Author$
  36.  * @version $Rev$, $Date$
  37.  */
  38. public class ConnettoreJMSUtils {
  39.    
  40.     private ConnettoreJMSUtils() {}

  41.     public static void fillConnettoreConfig(org.openspcoop2.core.config.Connettore connettore,
  42.             String jmsNome,
  43.             String jmsTipo, String jmsUser, String jmsPwd,
  44.             String jmsNfInitial, String jmsNfUrlPkg, String jmsNpUrl,
  45.             String jmsConnectionFactory, String jmsSendAs){
  46.        
  47.         org.openspcoop2.core.config.Property prop = new org.openspcoop2.core.config.Property();
  48.         prop.setNome(CostantiDB.CONNETTORE_JMS_NOME);
  49.         prop.setValore(jmsNome);
  50.         connettore.addProperty(prop);

  51.         prop = new org.openspcoop2.core.config.Property();
  52.         prop.setNome(CostantiDB.CONNETTORE_USER);
  53.         prop.setValore(jmsUser);
  54.         connettore.addProperty(prop);

  55.         prop = new org.openspcoop2.core.config.Property();
  56.         prop.setNome(CostantiDB.CONNETTORE_JMS_TIPO);
  57.         prop.setValore(jmsTipo);
  58.         connettore.addProperty(prop);

  59.         prop = new org.openspcoop2.core.config.Property();
  60.         prop.setNome(CostantiDB.CONNETTORE_PWD);
  61.         prop.setValore(jmsPwd);
  62.         connettore.addProperty(prop);

  63.         prop = new org.openspcoop2.core.config.Property();
  64.         prop.setNome(CostantiDB.CONNETTORE_JMS_CONNECTION_FACTORY);
  65.         prop.setValore(jmsConnectionFactory);
  66.         connettore.addProperty(prop);

  67.         prop = new org.openspcoop2.core.config.Property();
  68.         prop.setNome(CostantiDB.CONNETTORE_JMS_CONTEXT_JAVA_NAMING_FACTORY_INITIAL);
  69.         prop.setValore(jmsNfInitial);
  70.         connettore.addProperty(prop);

  71.         prop = new org.openspcoop2.core.config.Property();
  72.         prop.setNome(CostantiDB.CONNETTORE_JMS_CONTEXT_JAVA_NAMING_FACTORY_URL_PKG);
  73.         prop.setValore(jmsNfUrlPkg);
  74.         connettore.addProperty(prop);

  75.         prop = new org.openspcoop2.core.config.Property();
  76.         prop.setNome(CostantiDB.CONNETTORE_JMS_CONTEXT_JAVA_NAMING_PROVIDER_URL);
  77.         prop.setValore(jmsNpUrl);
  78.         connettore.addProperty(prop);

  79.         prop = new org.openspcoop2.core.config.Property();
  80.         prop.setNome(CostantiDB.CONNETTORE_JMS_SEND_AS);
  81.         prop.setValore(jmsSendAs);
  82.         connettore.addProperty(prop);
  83.     }
  84.    
  85.     public static void fillConnettoreRegistry(org.openspcoop2.core.registry.Connettore connettore,
  86.             String jmsNome,
  87.             String jmsTipo, String jmsUser, String jmsPwd,
  88.             String jmsNfInitial, String jmsNfUrlPkg, String jmsNpUrl,
  89.             String jmsConnectionFactory, String jmsSendAs){
  90.        
  91.         org.openspcoop2.core.registry.Property prop = new org.openspcoop2.core.registry.Property();
  92.         prop.setNome(CostantiDB.CONNETTORE_JMS_NOME);
  93.         prop.setValore(jmsNome);
  94.         connettore.addProperty(prop);

  95.         prop = new org.openspcoop2.core.registry.Property();
  96.         prop.setNome(CostantiDB.CONNETTORE_USER);
  97.         prop.setValore(jmsUser);
  98.         connettore.addProperty(prop);

  99.         prop = new org.openspcoop2.core.registry.Property();
  100.         prop.setNome(CostantiDB.CONNETTORE_JMS_TIPO);
  101.         prop.setValore(jmsTipo);
  102.         connettore.addProperty(prop);

  103.         prop = new org.openspcoop2.core.registry.Property();
  104.         prop.setNome(CostantiDB.CONNETTORE_PWD);
  105.         prop.setValore(jmsPwd);
  106.         connettore.addProperty(prop);

  107.         prop = new org.openspcoop2.core.registry.Property();
  108.         prop.setNome(CostantiDB.CONNETTORE_JMS_CONNECTION_FACTORY);
  109.         prop.setValore(jmsConnectionFactory);
  110.         connettore.addProperty(prop);

  111.         prop = new org.openspcoop2.core.registry.Property();
  112.         prop.setNome(CostantiDB.CONNETTORE_JMS_CONTEXT_JAVA_NAMING_FACTORY_INITIAL);
  113.         prop.setValore(jmsNfInitial);
  114.         connettore.addProperty(prop);

  115.         prop = new org.openspcoop2.core.registry.Property();
  116.         prop.setNome(CostantiDB.CONNETTORE_JMS_CONTEXT_JAVA_NAMING_FACTORY_URL_PKG);
  117.         prop.setValore(jmsNfUrlPkg);
  118.         connettore.addProperty(prop);

  119.         prop = new org.openspcoop2.core.registry.Property();
  120.         prop.setNome(CostantiDB.CONNETTORE_JMS_CONTEXT_JAVA_NAMING_PROVIDER_URL);
  121.         prop.setValore(jmsNpUrl);
  122.         connettore.addProperty(prop);

  123.         prop = new org.openspcoop2.core.registry.Property();
  124.         prop.setNome(CostantiDB.CONNETTORE_JMS_SEND_AS);
  125.         prop.setValore(jmsSendAs);
  126.         connettore.addProperty(prop);
  127.     }
  128.    
  129.     public static void addJMSDati(List<DataElement> dati,
  130.             String nome, String tipo,
  131.             String user, String password, String initcont, String urlpgk,
  132.             String provurl, String connfact, String sendas, String objectName, TipoOperazione tipoOperazione,
  133.             String stato,
  134.             ControlStationCore core,ConsoleHelper consoleHelper,int pageSize,
  135.             boolean postBackViaPost) throws UtilsException{
  136.        
  137.         if(postBackViaPost || objectName!=null || tipoOperazione!=null) {
  138.             // unused
  139.         }
  140.        
  141.         DataElement de = new DataElement();
  142.         de.setLabel(ConnettoriCostanti.LABEL_CONNETTORE_JMS_CONFIGURAZIONI_CODA);
  143.         de.setType(DataElementType.TITLE);
  144.         dati.add(de);
  145.        
  146.         de = new DataElement();
  147.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_NOME_CODA);
  148.         de.setValue(nome);
  149.         if(!consoleHelper.isShowGestioneWorkflowStatoDocumenti() || !StatiAccordo.finale.toString().equals(stato)){
  150.             de.setType(DataElementType.TEXT_EDIT);
  151.             de.setRequired(true);  
  152.         }else{
  153.             de.setType(DataElementType.TEXT);
  154.         }
  155.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_NOME_CODA);
  156.         de.setSize(pageSize);
  157.         dati.add(de);

  158.         de = new DataElement();
  159.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_TIPO_CODA);
  160.         de.setType(DataElementType.SELECT);
  161.         de.setValues(ConnettoriCostanti.TIPI_CODE_JMS);
  162.         de.setSelected(tipo);

  163.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_TIPO_CODA);
  164.         dati.add(de);
  165.        
  166.         de = new DataElement();
  167.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_TIPO_OGGETTO_JMS);
  168.         de.setType(DataElementType.SELECT);
  169.         de.setValues(ConnettoriCostanti.TIPO_SEND_AS);
  170.         de.setSelected(sendas);
  171.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_TIPO_OGGETTO_JMS);
  172.         dati.add(de);

  173.         de = new DataElement();
  174.         de.setLabel(ConnettoriCostanti.LABEL_CONNETTORE_JMS_CONFIGURAZIONI_CONNESIONE);
  175.         de.setType(DataElementType.TITLE);
  176.         dati.add(de);
  177.        
  178.         de = new DataElement();
  179.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_CONNECTION_FACTORY);
  180.         de.setValue(connfact);
  181.         if(!consoleHelper.isShowGestioneWorkflowStatoDocumenti() || !StatiAccordo.finale.toString().equals(stato)){
  182.             de.setType(DataElementType.TEXT_EDIT);
  183.             de.setRequired(true);  
  184.         }else{
  185.             de.setType(DataElementType.TEXT);
  186.         }
  187.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_CONNECTION_FACTORY);
  188.         de.setSize(pageSize);
  189.         dati.add(de);
  190.        
  191.         de = new DataElement();
  192.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_USERNAME);
  193.         de.setValue(user);
  194.         de.setType(DataElementType.TEXT_EDIT);
  195.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_USERNAME);
  196.         de.setSize(pageSize);
  197.         dati.add(de);

  198.         de = new DataElement();
  199.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_PASSWORD);
  200.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_PASSWORD);
  201.         core.getLockUtilities().lock(de, password);
  202.         de.setSize(pageSize);
  203.         dati.add(de);

  204.         de = new DataElement();
  205.         de.setLabel(ConnettoriCostanti.LABEL_CONNETTORE_JMS_CONFIGURAZIONI_CONTESTO_JNDI);
  206.         de.setType(DataElementType.TITLE);
  207.         dati.add(de);
  208.        
  209.         de = new DataElement();
  210.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_INIT_CTX);
  211.         de.setValue(initcont);
  212.         de.setType(DataElementType.TEXT_EDIT);
  213.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_INIT_CTX);
  214.         de.setSize(pageSize);
  215.         dati.add(de);

  216.         de = new DataElement();
  217.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_URL_PKG);
  218.         de.setValue(urlpgk);
  219.         de.setType(DataElementType.TEXT_EDIT);
  220.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_URL_PKG);
  221.         de.setSize(pageSize);
  222.         dati.add(de);

  223.         de = new DataElement();
  224.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_PROVIDER_URL);
  225.         de.setValue(provurl);
  226.         de.setType(DataElementType.TEXT_EDIT);
  227.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_PROVIDER_URL);
  228.         de.setSize(pageSize);
  229.         dati.add(de);

  230.     }
  231.    
  232.    
  233.     public static void addJMSDatiAsHidden(List<DataElement> dati,
  234.             String nome, String tipo,
  235.             String user, String password, String initcont, String urlpgk,
  236.             String provurl, String connfact, String sendas, String objectName, TipoOperazione tipoOperazione,
  237.             String stato,
  238.             ControlStationCore core,int pageSize) throws UtilsException{
  239.        
  240.         if(tipoOperazione!=null && stato!=null) {
  241.              // nop
  242.         }
  243.        
  244.         DataElement de = new DataElement();
  245.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_NOME_CODA);
  246.         de.setValue(nome);
  247.         de.setType(DataElementType.HIDDEN);
  248.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_NOME_CODA);
  249.         de.setSize(pageSize);
  250.         dati.add(de);


  251.         de = new DataElement();
  252.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_TIPO_CODA);
  253.         de.setType(DataElementType.HIDDEN);
  254.         de.setValue(tipo);

  255.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_TIPO_CODA);
  256.         dati.add(de);

  257.         if ( !objectName.equals(ServiziApplicativiCostanti.OBJECT_NAME_SERVIZI_APPLICATIVI) ) {

  258.             de = new DataElement();
  259.             de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_USERNAME);
  260.             de.setValue(user);
  261.             de.setType(DataElementType.HIDDEN);
  262.             de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_USERNAME);
  263.             de.setSize(pageSize);
  264.             dati.add(de);

  265.             de = new DataElement();
  266.             de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_PASSWORD);
  267.             de.setType(DataElementType.HIDDEN);
  268.             de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_PASSWORD);
  269.             core.getLockUtilities().lockHidden(de, password);
  270.             de.setSize(pageSize);
  271.             dati.add(de);
  272.         }

  273.         de = new DataElement();
  274.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_INIT_CTX);
  275.         de.setValue(initcont);
  276.         de.setType(DataElementType.HIDDEN);
  277.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_INIT_CTX);
  278.         de.setSize(pageSize);
  279.         dati.add(de);

  280.         de = new DataElement();
  281.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_URL_PKG);
  282.         de.setValue(urlpgk);
  283.         de.setType(DataElementType.TEXT_EDIT);
  284.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_URL_PKG);
  285.         de.setSize(pageSize);
  286.         dati.add(de);

  287.         de = new DataElement();
  288.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_PROVIDER_URL);
  289.         de.setValue(provurl);
  290.         de.setType(DataElementType.HIDDEN);
  291.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_PROVIDER_URL);
  292.         de.setSize(pageSize);
  293.         dati.add(de);

  294.         de = new DataElement();
  295.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_CONNECTION_FACTORY);
  296.         de.setValue(connfact);
  297.         de.setType(DataElementType.HIDDEN);
  298.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_CONNECTION_FACTORY);
  299.         de.setSize(pageSize);
  300.         dati.add(de);

  301.         de = new DataElement();
  302.         de.setLabel(ConnettoriCostanti.LABEL_PARAMETRO_CONNETTORE_JMS_TIPO_OGGETTO_JMS);
  303.         de.setType(DataElementType.HIDDEN);
  304.         de.setValue(sendas);
  305.         de.setName(ConnettoriCostanti.PARAMETRO_CONNETTORE_JMS_TIPO_OGGETTO_JMS);
  306.         dati.add(de);
  307.        
  308.     }
  309.    
  310. }