package com.l7tech.gateway.api;

import com.l7tech.gateway.api.impl.AttributeExtensibleType;
import com.l7tech.gateway.api.impl.ElementExtendableManagedObject;
import com.l7tech.gateway.api.impl.EncassImportContext;
import com.l7tech.util.Functions;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlElementWrapper;
import jakarta.xml.bind.annotation.XmlRootElement;
import jakarta.xml.bind.annotation.XmlSeeAlso;
import jakarta.xml.bind.annotation.XmlType;
import java.util.List;

@XmlRootElement(name = "EncapsulatedAssertionImportResult")
@XmlType(
   name = "EncapsulatedAssertionImportResultType",
   propOrder = {"warningsValue", "importedEncapsulatedAssertion", "importedPolicyReferences", "extension", "extensions"}
)
@XmlSeeAlso(EncassImportContext.class)
public class EncapsulatedAssertionImportResult extends ElementExtendableManagedObject {
   private List<AttributeExtensibleType.AttributeExtensibleString> f;
   private List<PolicyImportResult.ImportedPolicyReference> g;
   private EncapsulatedAssertionMO h;

   public List<String> getWarnings() {
      return this.f == null ? null : Functions.map(this.f, new c(this));
   }

   public void setWarnings(List<String> var1) {
      this.f = var1 == null ? null : Functions.map(var1, new d(this));
   }

   @XmlElementWrapper(name = "ImportedPolicyReferences")
   @XmlElement(name = "ImportedPolicyReference", required = true)
   public List<PolicyImportResult.ImportedPolicyReference> getImportedPolicyReferences() {
      return this.g;
   }

   public void setImportedPolicyReferences(List<PolicyImportResult.ImportedPolicyReference> var1) {
      this.g = var1;
   }

   @XmlElement(name = "ImportedEncapsulatedAssertion", required = true)
   public EncapsulatedAssertionMO getImportedEncapsulatedAssertion() {
      return this.h;
   }

   public void setImportedEncapsulatedAssertion(EncapsulatedAssertionMO var1) {
      this.h = var1;
   }

   @XmlElementWrapper(name = "Warnings")
   @XmlElement(name = "Warning", required = true)
   protected List<AttributeExtensibleType.AttributeExtensibleString> getWarningsValue() {
      return this.f;
   }

   protected void setWarningsValue(List<AttributeExtensibleType.AttributeExtensibleString> var1) {
      this.f = var1;
   }

   EncapsulatedAssertionImportResult() {
   }
}
