package com.l7tech.gateway.api.impl;

import jakarta.xml.bind.annotation.XmlAttribute;
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 = "PrivateKeyImportContext")
@XmlType(name = "PrivateKeyImportContextType", propOrder = {"pkcs12DataValue", "aliasValue", "passwordValue", "properties", "extension", "extensions"})
public class PrivateKeyImportContext extends ElementExtendableManagedObject {
   private AttributeExtensibleType.AttributeExtensibleString f;
   private AttributeExtensibleType.AttributeExtensibleString g;
   private AttributeExtensibleType.AttributeExtensibleByteArray h;
   private Map<String, Object> i;
   private String j;

   public String getAlias() {
      return AttributeExtensibleType.get(this.f);
   }

   public void setAlias(String var1) {
      this.f = AttributeExtensibleType.set(this.f, var1);
   }

   public String getPassword() {
      return AttributeExtensibleType.get(this.g);
   }

   public void setPassword(String var1) {
      this.g = AttributeExtensibleType.set(this.g, var1);
   }

   public byte[] getPkcs12Data() {
      return AttributeExtensibleType.get(this.h);
   }

   public void setPkcs12Data(byte[] var1) {
      this.h = AttributeExtensibleType.set(this.h, var1);
   }

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

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

   @XmlAttribute(name = "securityZoneId", required = false)
   public String getSecurityZoneId() {
      return this.j;
   }

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

   @XmlElement(name = "Alias")
   protected AttributeExtensibleType.AttributeExtensibleString getAliasValue() {
      return this.f;
   }

   protected void setAliasValue(AttributeExtensibleType.AttributeExtensibleString var1) {
      this.f = var1;
   }

   @XmlElement(name = "Password", required = true)
   protected AttributeExtensibleType.AttributeExtensibleString getPasswordValue() {
      return this.g;
   }

   protected void setPasswordValue(AttributeExtensibleType.AttributeExtensibleString var1) {
      this.g = var1;
   }

   @XmlElement(name = "Pkcs12Data", required = true)
   protected AttributeExtensibleType.AttributeExtensibleByteArray getPkcs12DataValue() {
      return this.h;
   }

   protected void setPkcs12DataValue(AttributeExtensibleType.AttributeExtensibleByteArray var1) {
      this.h = var1;
   }
}
