GruppoNuovaConfigurazione.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.config.rs.server.model;

  21. import javax.validation.constraints.*;

  22. import io.swagger.v3.oas.annotations.media.Schema;
  23. import com.fasterxml.jackson.annotation.JsonProperty;
  24. import javax.validation.Valid;

  25. public class GruppoNuovaConfigurazione  implements OneOfGruppoConfigurazione {
  26.  
  27.   @Schema(required = true, description = "")
  28.   private ModalitaConfigurazioneGruppoEnum modalita = null;
  29.  
  30.   @Schema(required = true, description = "")
  31.   @com.fasterxml.jackson.annotation.JsonTypeInfo(use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.EXISTING_PROPERTY, property = "tipo", visible = true )
  32.   @com.fasterxml.jackson.annotation.JsonSubTypes({
  33.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = APIImplAutenticazioneDisabilitata.class, name = "disabilitato"),
  34.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = APIImplAutenticazioneBasic.class, name = "http-basic"),
  35.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = APIImplAutenticazioneHttps.class, name = "https"),
  36.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = APIImplAutenticazionePrincipal.class, name = "principal"),
  37.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = APIImplAutenticazioneApiKey.class, name = "api-key")  })
  38.   private OneOfGruppoNuovaConfigurazioneAutenticazione autenticazione = null;
  39.  /**
  40.    * Get modalita
  41.    * @return modalita
  42.   **/
  43.   @Override
  44. @JsonProperty("modalita")
  45.   @NotNull
  46.   @Valid
  47.   public ModalitaConfigurazioneGruppoEnum getModalita() {
  48.     return this.modalita;
  49.   }

  50.   public void setModalita(ModalitaConfigurazioneGruppoEnum modalita) {
  51.     this.modalita = modalita;
  52.   }

  53.   public GruppoNuovaConfigurazione modalita(ModalitaConfigurazioneGruppoEnum modalita) {
  54.     this.modalita = modalita;
  55.     return this;
  56.   }

  57.  /**
  58.    * Get autenticazione
  59.    * @return autenticazione
  60.   **/
  61.   @JsonProperty("autenticazione")
  62.   @NotNull
  63.   @Valid
  64.   public OneOfGruppoNuovaConfigurazioneAutenticazione getAutenticazione() {
  65.     return this.autenticazione;
  66.   }

  67.   public void setAutenticazione(OneOfGruppoNuovaConfigurazioneAutenticazione autenticazione) {
  68.     this.autenticazione = autenticazione;
  69.   }

  70.   public GruppoNuovaConfigurazione autenticazione(OneOfGruppoNuovaConfigurazioneAutenticazione autenticazione) {
  71.     this.autenticazione = autenticazione;
  72.     return this;
  73.   }


  74.   @Override
  75.   public String toString() {
  76.     StringBuilder sb = new StringBuilder();
  77.     sb.append("class GruppoNuovaConfigurazione {\n");
  78.    
  79.     sb.append("    modalita: ").append(GruppoNuovaConfigurazione.toIndentedString(this.modalita)).append("\n");
  80.     sb.append("    autenticazione: ").append(GruppoNuovaConfigurazione.toIndentedString(this.autenticazione)).append("\n");
  81.     sb.append("}");
  82.     return sb.toString();
  83.   }

  84.   /**
  85.    * Convert the given object to string with each line indented by 4 spaces
  86.    * (except the first line).
  87.    */
  88.   private static String toIndentedString(java.lang.Object o) {
  89.     if (o == null) {
  90.       return "null";
  91.     }
  92.     return o.toString().replace("\n", "\n    ");
  93.   }
  94. }