/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 1.3.28
 *
 * Do not make changes to this file unless you know what you are doing--modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */

package com.entrouvert.lasso;

public class LibFederationTerminationNotification extends SamlpRequestAbstract {
  protected LibFederationTerminationNotification(long cPtr, boolean cMemoryOwn) {
    super(cPtr, cMemoryOwn);
  }

  protected static long getCPtr(LibFederationTerminationNotification obj) {
    return (obj == null) ? 0 : obj.swigCPtr;
  }

  protected void finalize() {
    delete();
  }

  public void delete() {
  super.delete();
}

  public void setConsent(String value) {
    lassoJNI.LibFederationTerminationNotification_consent_set(swigCPtr, value);
  }

  public String getConsent() {
    return lassoJNI.LibFederationTerminationNotification_consent_get(swigCPtr);
  }

  public void setProviderId(String value) {
    lassoJNI.LibFederationTerminationNotification_providerId_set(swigCPtr, value);
  }

  public String getProviderId() {
    return lassoJNI.LibFederationTerminationNotification_providerId_get(swigCPtr);
  }

  public void setRelayState(String value) {
    lassoJNI.LibFederationTerminationNotification_relayState_set(swigCPtr, value);
  }

  public String getRelayState() {
    return lassoJNI.LibFederationTerminationNotification_relayState_get(swigCPtr);
  }

  public void setCertificateFile(String value) {
    lassoJNI.LibFederationTerminationNotification_certificateFile_set(swigCPtr, value);
  }

  public String getCertificateFile() {
    return lassoJNI.LibFederationTerminationNotification_certificateFile_get(swigCPtr);
  }

  public void setIssueInstant(String value) {
    lassoJNI.LibFederationTerminationNotification_issueInstant_set(swigCPtr, value);
  }

  public String getIssueInstant() {
    return lassoJNI.LibFederationTerminationNotification_issueInstant_get(swigCPtr);
  }

  public void setMajorVersion(int value) {
    lassoJNI.LibFederationTerminationNotification_majorVersion_set(swigCPtr, value);
  }

  public int getMajorVersion() {
    return lassoJNI.LibFederationTerminationNotification_majorVersion_get(swigCPtr);
  }

  public void setMinorVersion(int value) {
    lassoJNI.LibFederationTerminationNotification_minorVersion_set(swigCPtr, value);
  }

  public int getMinorVersion() {
    return lassoJNI.LibFederationTerminationNotification_minorVersion_get(swigCPtr);
  }

  public void setPrivateKeyFile(String value) {
    lassoJNI.LibFederationTerminationNotification_privateKeyFile_set(swigCPtr, value);
  }

  public String getPrivateKeyFile() {
    return lassoJNI.LibFederationTerminationNotification_privateKeyFile_get(swigCPtr);
  }

  public void setRequestId(String value) {
    lassoJNI.LibFederationTerminationNotification_requestId_set(swigCPtr, value);
  }

  public String getRequestId() {
    return lassoJNI.LibFederationTerminationNotification_requestId_get(swigCPtr);
  }

  public void setRespondWith(StringList value) {
    lassoJNI.LibFederationTerminationNotification_respondWith_set(swigCPtr, StringList.getCPtr(value));
  }

  public StringList getRespondWith() {
    long cPtr = lassoJNI.LibFederationTerminationNotification_respondWith_get(swigCPtr);
    return (cPtr == 0) ? null : new StringList(cPtr, false);
  }

  public void setSignMethod(int value) {
    lassoJNI.LibFederationTerminationNotification_signMethod_set(swigCPtr, value);
  }

  public int getSignMethod() {
    return lassoJNI.LibFederationTerminationNotification_signMethod_get(swigCPtr);
  }

  public void setSignType(SWIGTYPE_p_LassoSignatureType value) {
    lassoJNI.LibFederationTerminationNotification_signType_set(swigCPtr, SWIGTYPE_p_LassoSignatureType.getCPtr(value));
  }

  public SWIGTYPE_p_LassoSignatureType getSignType() {
    return new SWIGTYPE_p_LassoSignatureType(lassoJNI.LibFederationTerminationNotification_signType_get(swigCPtr), true);
  }

  public void setExtension(StringList value) {
    lassoJNI.LibFederationTerminationNotification_extension_set(swigCPtr, StringList.getCPtr(value));
  }

  public StringList getExtension() {
    long cPtr = lassoJNI.LibFederationTerminationNotification_extension_get(swigCPtr);
    return (cPtr == 0) ? null : new StringList(cPtr, false);
  }

  public void setNameIdentifier(SamlNameIdentifier value) {
    lassoJNI.LibFederationTerminationNotification_nameIdentifier_set(swigCPtr, SamlNameIdentifier.getCPtr(value));
  }

  public SamlNameIdentifier getNameIdentifier() {
    long cPtr = lassoJNI.LibFederationTerminationNotification_nameIdentifier_get(swigCPtr);
    return (cPtr == 0) ? null : new SamlNameIdentifier(cPtr, false);
  }

  public LibFederationTerminationNotification() {
    this(lassoJNI.new_LibFederationTerminationNotification(), true);
  }

  public static LibFederationTerminationNotification newFull(String providerID, SamlNameIdentifier nameIdentifier, SWIGTYPE_p_LassoSignatureType sign_type, int sign_method) {
    long cPtr = lassoJNI.LibFederationTerminationNotification_newFull(providerID, SamlNameIdentifier.getCPtr(nameIdentifier), SWIGTYPE_p_LassoSignatureType.getCPtr(sign_type), sign_method);
    return (cPtr == 0) ? null : new LibFederationTerminationNotification(cPtr, true);
  }

  public String dump() {
    return lassoJNI.LibFederationTerminationNotification_dump(swigCPtr);
  }

}
