package com.l7tech.gateway.api;

import com.l7tech.gateway.api.impl.AccessorSupport;
import com.l7tech.gateway.api.impl.ElementExtendableAccessibleObject;
import com.l7tech.gateway.api.impl.PropertiesMapType;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlRootElement;
import jakarta.xml.bind.annotation.XmlType;
import jakarta.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import java.util.Map;

@XmlRootElement(name = "CassandraConnection")
@XmlType(
   name = "CassandraConnectionType",
   propOrder = {
         "name",
         "keyspace",
         "contactPoint",
         "port",
         "username",
         "passwordId",
         "compression",
         "ssl",
         "tlsciphers",
         "enabled",
         "properties",
         "extension",
         "extensions"
   }
)
@AccessorSupport.AccessibleResource(name = "cassandraConnections")
public class CassandraConnectionMO extends ElementExtendableAccessibleObject {
   private String h;
   private String i;
   private String j;
   private String k;
   private String l;
   private String m;
   private String n;
   private Boolean o = false;
   private String p;
   private Boolean q = false;
   private Map<String, String> r;

   @XmlElement(name = "Name", required = true)
   public String getName() {
      return this.h;
   }

   public void setName(String var1) {
      this.h = var1;
   }

   @XmlElement(name = "Keyspace", required = true)
   public String getKeyspace() {
      return this.i;
   }

   public void setKeyspace(String var1) {
      this.i = var1;
   }

   @XmlElement(name = "ContactPoint", required = true)
   public String getContactPoint() {
      return this.j;
   }

   public void setContactPoint(String var1) {
      this.j = var1;
   }

   @XmlElement(name = "Port", required = true)
   public String getPort() {
      return this.k;
   }

   public void setPort(String var1) {
      this.k = var1;
   }

   @XmlElement(name = "Username", required = true)
   public String getUsername() {
      return this.l;
   }

   public void setUsername(String var1) {
      this.l = var1;
   }

   @XmlElement(name = "PasswordId")
   public String getPasswordId() {
      return this.m;
   }

   public void setPasswordId(String var1) {
      this.m = var1;
   }

   @XmlElement(name = "Compression", required = true)
   public String getCompression() {
      return this.n;
   }

   public void setCompression(String var1) {
      this.n = var1;
   }

   @XmlElement(name = "Ssl", required = true)
   public boolean isSsl() {
      return this.o;
   }

   public void setSsl(boolean var1) {
      this.o = var1;
   }

   @XmlElement(name = "TlsCiphers")
   public String getTlsciphers() {
      return this.p;
   }

   public void setTlsciphers(String var1) {
      this.p = var1;
   }

   @XmlElement(name = "Enabled", required = true)
   public boolean isEnabled() {
      return this.q;
   }

   public void setEnabled(boolean var1) {
      this.q = var1;
   }

   @XmlElement(name = "Properties")
   @XmlJavaTypeAdapter(PropertiesMapType.PropertiesMapTypeAdapter.class)
   public Map<String, String> getProperties() {
      return this.r;
   }

   public void setProperties(Map<String, String> var1) {
      this.r = var1;
   }

   CassandraConnectionMO() {
   }
}
