001/** 002 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. 003 * 004 * Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved 005 * 006 * The contents of this file are subject to the terms 007 * of the Common Development and Distribution License 008 * (the License). You may not use this file except in 009 * compliance with the License. 010 * 011 * You can obtain a copy of the License at 012 * https://opensso.dev.java.net/public/CDDLv1.0.html or 013 * opensso/legal/CDDLv1.0.txt 014 * See the License for the specific language governing 015 * permission and limitations under the License. 016 * 017 * When distributing Covered Code, include this CDDL 018 * Header Notice in each file and include the License file 019 * at opensso/legal/CDDLv1.0.txt. 020 * If applicable, add the following below the CDDL Header, 021 * with the fields enclosed by brackets [] replaced by 022 * your own identifying information: 023 * "Portions Copyrighted [year] [name of copyright owner]" 024 * 025 * $Id: StatusCode.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $ 026 * 027 */ 028 029 030package com.sun.identity.saml2.protocol; 031 032import com.sun.identity.saml2.common.SAML2Exception; 033 034/** 035 * This class represents the <code>StatusCodeType</code> complex type in 036 * SAML protocol schema. 037 * The <code>StatusCode</code> element specifies a code or a set of nested codes 038 * representing the status of the corresponding request. 039 * 040 * <pre> 041 * <complexType name="StatusCodeType"> 042 * <complexContent> 043 * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> 044 * <sequence> 045 * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}StatusCode" minOccurs="0"/> 046 * </sequence> 047 * <attribute name="Value" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> 048 * </restriction> 049 * </complexContent> 050 * </complexType> 051 * </pre> 052 * 053 * @supported.all.api 054 */ 055 056public interface StatusCode { 057 058 /** 059 * Returns the value of the statusCode property. 060 * 061 * @return the value of the statusCode property 062 * @see #setStatusCode(StatusCode) 063 */ 064 public com.sun.identity.saml2.protocol.StatusCode getStatusCode(); 065 066 /** 067 * Sets the value of the statusCode property. 068 * 069 * @param value the value of the statusCode property to be set 070 * @throws SAML2Exception if the object is immutable 071 * @see #getStatusCode 072 */ 073 public void setStatusCode(com.sun.identity.saml2.protocol.StatusCode value) 074 throws SAML2Exception; 075 076 /** 077 * Returns the value of the value property. 078 * 079 * @return the value of the value property 080 * @see #setValue(String) 081 */ 082 public java.lang.String getValue(); 083 084 /** 085 * Sets the value of the value property. 086 * 087 * @param value the value of the value property to be set 088 * @throws SAML2Exception if the object is immutable 089 * @see #getValue 090 */ 091 public void setValue(java.lang.String value) throws SAML2Exception; 092 093 /** 094 * Returns the <code>StatusCode</code> in an XML document String format 095 * based on the <code>StatusCode</code> schema described above. 096 * 097 * @return An XML String representing the <code>StatusCode</code>. 098 * @throws SAML2Exception if some error occurs during conversion to 099 * <code>String</code>. 100 */ 101 public String toXMLString() throws SAML2Exception; 102 103 /** 104 * Returns the <code>StatusCode</code> in an XML document String format 105 * based on the <code>StatusCode</code> schema described above. 106 * 107 * @param includeNSPrefix Determines whether or not the namespace qualifier 108 * is prepended to the Element when converted 109 * @param declareNS Determines whether or not the namespace is declared 110 * within the Element. 111 * @return A XML String representing the <code>StatusCode</code>. 112 * @throws SAML2Exception if some error occurs during conversion to 113 * <code>String</code>. 114 */ 115 public String toXMLString(boolean includeNSPrefix, boolean declareNS) 116 throws SAML2Exception; 117 118 /** 119 * Makes the object immutable 120 */ 121 public void makeImmutable(); 122 123 /** 124 * Returns true if the object is mutable, false otherwise 125 * 126 * @return true if the object is mutable, false otherwise 127 */ 128 public boolean isMutable(); 129}