ApplicativoServer.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 java.util.List;
  22. import javax.validation.constraints.*;

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

  26. public class ApplicativoServer  {
  27.  
  28.   @Schema(required = true, description = "")
  29.   private String nome = null;
  30.  
  31.   @Schema(example = "descrizione dell'applicativo", description = "")
  32.   private String descrizione = null;
  33.  
  34.   @Schema(description = "")
  35.   private List<Proprieta4000> proprieta = null;
  36.  
  37.   @Schema(description = "")
  38.   @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 )
  39.   @com.fasterxml.jackson.annotation.JsonSubTypes({
  40.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = ConnettoreHttp.class, name = "http"),
  41.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = ConnettoreFile.class, name = "file"),
  42.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = ConnettoreJms.class, name = "jms"),
  43.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = ConnettoreNull.class, name = "null"),
  44.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = ConnettoreStatus.class, name = "status"),
  45.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = ConnettoreEcho.class, name = "echo"),
  46.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = ConnettorePlugin.class, name = "plugin"),
  47.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = ConnettoreApplicativoServer.class, name = "applicativo-server"),
  48.     @com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = ConnettoreMessageBox.class, name = "message-box")  })
  49.   private OneOfApplicativoServerConnettore connettore = null;
  50.  /**
  51.    * Get nome
  52.    * @return nome
  53.   **/
  54.   @JsonProperty("nome")
  55.   @NotNull
  56.   @Valid
  57.  @Pattern(regexp="^[_A-Za-z][\\-\\._A-Za-z0-9]*$") @Size(max=255)  public String getNome() {
  58.     return this.nome;
  59.   }

  60.   public void setNome(String nome) {
  61.     this.nome = nome;
  62.   }

  63.   public ApplicativoServer nome(String nome) {
  64.     this.nome = nome;
  65.     return this;
  66.   }

  67.  /**
  68.    * Get descrizione
  69.    * @return descrizione
  70.   **/
  71.   @JsonProperty("descrizione")
  72.   @Valid
  73.  @Size(max=4000)  public String getDescrizione() {
  74.     return this.descrizione;
  75.   }

  76.   public void setDescrizione(String descrizione) {
  77.     this.descrizione = descrizione;
  78.   }

  79.   public ApplicativoServer descrizione(String descrizione) {
  80.     this.descrizione = descrizione;
  81.     return this;
  82.   }

  83.  /**
  84.    * Get proprieta
  85.    * @return proprieta
  86.   **/
  87.   @JsonProperty("proprieta")
  88.   @Valid
  89.   public List<Proprieta4000> getProprieta() {
  90.     return this.proprieta;
  91.   }

  92.   public void setProprieta(List<Proprieta4000> proprieta) {
  93.     this.proprieta = proprieta;
  94.   }

  95.   public ApplicativoServer proprieta(List<Proprieta4000> proprieta) {
  96.     this.proprieta = proprieta;
  97.     return this;
  98.   }

  99.   public ApplicativoServer addProprietaItem(Proprieta4000 proprietaItem) {
  100.     this.proprieta.add(proprietaItem);
  101.     return this;
  102.   }

  103.  /**
  104.    * Get connettore
  105.    * @return connettore
  106.   **/
  107.   @JsonProperty("connettore")
  108.   @Valid
  109.   public OneOfApplicativoServerConnettore getConnettore() {
  110.     return this.connettore;
  111.   }

  112.   public void setConnettore(OneOfApplicativoServerConnettore connettore) {
  113.     this.connettore = connettore;
  114.   }

  115.   public ApplicativoServer connettore(OneOfApplicativoServerConnettore connettore) {
  116.     this.connettore = connettore;
  117.     return this;
  118.   }


  119.   @Override
  120.   public String toString() {
  121.     StringBuilder sb = new StringBuilder();
  122.     sb.append("class ApplicativoServer {\n");
  123.    
  124.     sb.append("    nome: ").append(ApplicativoServer.toIndentedString(this.nome)).append("\n");
  125.     sb.append("    descrizione: ").append(ApplicativoServer.toIndentedString(this.descrizione)).append("\n");
  126.     sb.append("    proprieta: ").append(ApplicativoServer.toIndentedString(this.proprieta)).append("\n");
  127.     sb.append("    connettore: ").append(ApplicativoServer.toIndentedString(this.connettore)).append("\n");
  128.     sb.append("}");
  129.     return sb.toString();
  130.   }

  131.   /**
  132.    * Convert the given object to string with each line indented by 4 spaces
  133.    * (except the first line).
  134.    */
  135.   private static String toIndentedString(java.lang.Object o) {
  136.     if (o == null) {
  137.       return "null";
  138.     }
  139.     return o.toString().replace("\n", "\n    ");
  140.   }
  141. }