/* ----------------------------------------------------------------------------
 * 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 LibLogoutResponse extends LibStatusResponse {
  protected LibLogoutResponse(long cPtr, boolean cMemoryOwn) {
    super(cPtr, cMemoryOwn);
  }

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

  protected void finalize() {
    delete();
  }

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

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

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

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

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

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

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

  public void setStatus(SamlpStatus value) {
    lassoJNI.LibLogoutResponse_status_set(swigCPtr, SamlpStatus.getCPtr(value));
  }

  public SamlpStatus getStatus() {
    long cPtr = lassoJNI.LibLogoutResponse_status_get(swigCPtr);
    return (cPtr == 0) ? null : new SamlpStatus(cPtr, false);
  }

  public LibLogoutResponse() {
    this(lassoJNI.new_LibLogoutResponse(), true);
  }

  public static LibLogoutResponse newFull(String providerID, String statusCodeValue, LibLogoutRequest request, SWIGTYPE_p_LassoSignatureType sign_type, int sign_method) {
    long cPtr = lassoJNI.LibLogoutResponse_newFull(providerID, statusCodeValue, LibLogoutRequest.getCPtr(request), SWIGTYPE_p_LassoSignatureType.getCPtr(sign_type), sign_method);
    return (cPtr == 0) ? null : new LibLogoutResponse(cPtr, true);
  }

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

}
