RuoloTransazione.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.transazioni.constants;

  21. import java.io.Serializable;

  22. import org.openspcoop2.generic_project.beans.IEnumeration;


  23. /**    
  24.  * RuoloTransazione
  25.  *
  26.  * @author Poli Andrea (poli@link.it)
  27.  * @author $Author$
  28.  * @version $Rev$, $Date$
  29.  */
  30. public enum RuoloTransazione implements IEnumeration, Serializable{

  31.     INVOCAZIONE_ONEWAY ("1"),
  32.     INVOCAZIONE_SINCRONA ("2"),
  33.     INVOCAZIONE_ASINCRONA_SIMMETRICA ("3"),
  34.     RISPOSTA_ASINCRONA_SIMMETRICA ("4"),
  35.     INVOCAZIONE_ASINCRONA_ASIMMETRICA ("5"),
  36.     RICHIESTA_STATO_ASINCRONA_ASIMMETRICA ("6"),
  37.     INTEGRATION_MANAGER ("7"),
  38.     CONSEGNA_CONTENUTI_APPLICATIVI ("8");

  39.     private final String valore;

  40.     RuoloTransazione(String valore)
  41.     {
  42.         this.valore = valore;
  43.     }

  44.     public String getValore()
  45.     {
  46.         return this.valore;
  47.     }

  48.     public int getValoreAsInt()
  49.     {
  50.         return Integer.parseInt(this.valore);
  51.     }

  52.     public static String[] toStringArray(){
  53.         String[] res = new String[values().length];
  54.         int i=0;
  55.         for (RuoloTransazione tmp : values()) {
  56.             res[i]=tmp.getValore();
  57.             i++;
  58.         }
  59.         return res;
  60.     }
  61.     public static int[] toIntArray(){
  62.         int[] res = new int[values().length];
  63.         int i=0;
  64.         for (RuoloTransazione tmp : values()) {
  65.             res[i]=tmp.getValoreAsInt();
  66.             i++;
  67.         }
  68.         return res;
  69.     }
  70.     public static String[] toEnumNameArray(){
  71.         String[] res = new String[values().length];
  72.         int i=0;
  73.         for (RuoloTransazione tmp : values()) {
  74.             res[i]=tmp.name();
  75.             i++;
  76.         }
  77.         return res;
  78.     }


  79.     public static RuoloTransazione toEnumConstant(int val){
  80.         return toEnumConstant(""+val);
  81.     }
  82.     public static RuoloTransazione toEnumConstant(String val){

  83.         RuoloTransazione res = null;

  84.         if(RuoloTransazione.INVOCAZIONE_ONEWAY.toString().equals(val)){
  85.             res = RuoloTransazione.INVOCAZIONE_ONEWAY;
  86.         }else if(RuoloTransazione.INVOCAZIONE_SINCRONA.toString().equals(val)){
  87.             res = RuoloTransazione.INVOCAZIONE_SINCRONA;
  88.         } else if(RuoloTransazione.INVOCAZIONE_ASINCRONA_SIMMETRICA.toString().equals(val)){
  89.             res = RuoloTransazione.INVOCAZIONE_ASINCRONA_SIMMETRICA;
  90.         }  else if(RuoloTransazione.RISPOSTA_ASINCRONA_SIMMETRICA.toString().equals(val)){
  91.             res = RuoloTransazione.RISPOSTA_ASINCRONA_SIMMETRICA;
  92.         }  else if(RuoloTransazione.INVOCAZIONE_ASINCRONA_ASIMMETRICA.toString().equals(val)){
  93.             res = RuoloTransazione.INVOCAZIONE_ASINCRONA_ASIMMETRICA;
  94.         }  else if(RuoloTransazione.RICHIESTA_STATO_ASINCRONA_ASIMMETRICA.toString().equals(val)){
  95.             res = RuoloTransazione.RICHIESTA_STATO_ASINCRONA_ASIMMETRICA;
  96.         } else if(RuoloTransazione.INTEGRATION_MANAGER.toString().equals(val)){
  97.             res = RuoloTransazione.INTEGRATION_MANAGER;
  98.         } else if(RuoloTransazione.CONSEGNA_CONTENUTI_APPLICATIVI.toString().equals(val)){
  99.             res = RuoloTransazione.CONSEGNA_CONTENUTI_APPLICATIVI;
  100.         }
  101.         return res;
  102.     }

  103.     @Override
  104.     public Object getValue() {
  105.         return this.valore;
  106.     }
  107.    
  108.     @Override
  109.     public String toString(){
  110.         return this.valore;
  111.     }
  112.     public boolean equals(IEnumeration esito){
  113.         return this.toString().equals(esito.toString());
  114.     }


  115.     public static RuoloTransazione getEnumConstantFromOpenSPCoopValue(String val){
  116.        
  117.         //System.out.println("VALORE DA CONVERTIRE ["+val+"]");
  118.        
  119.         if(org.openspcoop2.core.constants.Costanti.SCENARIO_ONEWAY_INVOCAZIONE_SERVIZIO.equals(val)){
  120.             //System.out.println("RITORNO ["+RuoloTransazione.INVOCAZIONE_ONEWAY+"]");
  121.             return RuoloTransazione.INVOCAZIONE_ONEWAY;
  122.         }
  123.         else if(org.openspcoop2.core.constants.Costanti.SCENARIO_SINCRONO_INVOCAZIONE_SERVIZIO.equals(val)){
  124.             //System.out.println("RITORNO ["+RuoloTransazione.INVOCAZIONE_SINCRONA+"]");
  125.             return RuoloTransazione.INVOCAZIONE_SINCRONA;
  126.         }
  127.         else if(org.openspcoop2.core.constants.Costanti.SCENARIO_ASINCRONO_SIMMETRICO_INVOCAZIONE_SERVIZIO.equals(val)){
  128.             //System.out.println("RITORNO ["+RuoloTransazione.INVOCAZIONE_ASINCRONA_SIMMETRICA+"]");
  129.             return RuoloTransazione.INVOCAZIONE_ASINCRONA_SIMMETRICA;
  130.         }
  131.         else if(org.openspcoop2.core.constants.Costanti.SCENARIO_ASINCRONO_SIMMETRICO_CONSEGNA_RISPOSTA.equals(val)){
  132.             //System.out.println("RITORNO ["+RuoloTransazione.RISPOSTA_ASINCRONA_SIMMETRICA+"]");
  133.             return RuoloTransazione.RISPOSTA_ASINCRONA_SIMMETRICA;
  134.         }
  135.         else if(org.openspcoop2.core.constants.Costanti.SCENARIO_ASINCRONO_ASIMMETRICO_INVOCAZIONE_SERVIZIO.equals(val)){
  136.             //System.out.println("RITORNO ["+RuoloTransazione.INVOCAZIONE_ASINCRONA_ASIMMETRICA+"]");
  137.             return RuoloTransazione.INVOCAZIONE_ASINCRONA_ASIMMETRICA;
  138.         }
  139.         else if(org.openspcoop2.core.constants.Costanti.SCENARIO_ASINCRONO_ASIMMETRICO_POLLING.equals(val)){
  140.             //System.out.println("RITORNO ["+RuoloTransazione.RICHIESTA_STATO_ASINCRONA_ASIMMETRICA+"]");
  141.             return RuoloTransazione.RICHIESTA_STATO_ASINCRONA_ASIMMETRICA;
  142.         }
  143.         else if(org.openspcoop2.core.constants.Costanti.SCENARIO_CONSEGNA_CONTENUTI_APPLICATIVI.equals(val)){
  144.             //System.out.println("RITORNO ["+RuoloTransazione.CONSEGNA_CONTENUTI_APPLICATIVI+"]");
  145.             return RuoloTransazione.CONSEGNA_CONTENUTI_APPLICATIVI;
  146.         }
  147.         else {
  148.             //System.out.println("RITORNO NULL");
  149.             return null;
  150.         }
  151.     }

  152. }