SunTM's XACML Implementation for JavaTM

com.sun.xacml.attr
Class X500NameAttribute

java.lang.Object
  extended bycom.sun.xacml.attr.AttributeValue
      extended bycom.sun.xacml.attr.X500NameAttribute
All Implemented Interfaces:
Evaluatable

public class X500NameAttribute
extends AttributeValue

Representation of an X500 Name.

Since:
1.0

Field Summary
static String identifier
          Official name of this type
 
Constructor Summary
X500NameAttribute(X500Principal value)
          Creates a new X500NameAttribute that represents the value supplied.
 
Method Summary
 String encode()
          Encodes the value in a form suitable for including in XML data like a request or an obligation.
 boolean equals(Object o)
          Returns true if the input is an instance of this class and if its value equals the value contained in this class.
static X500NameAttribute getInstance(Node root)
          Returns a new that represents the X500 Name at a particular DOM node.
static X500NameAttribute getInstance(String value)
          Returns a new X500NameAttribute that represents the X500 Name value indicated by the string provided.
 X500Principal getValue()
          Returns the name value represented by this object
 int hashCode()
          Returns the hashcode value used to index and compare this object with others of the same type.
 
Methods inherited from class com.sun.xacml.attr.AttributeValue
encode, encode, encodeWithTags, evaluate, evaluatesToBag, getChildren, getType, isBag
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

identifier

public static final String identifier
Official name of this type

See Also:
Constant Field Values
Constructor Detail

X500NameAttribute

public X500NameAttribute(X500Principal value)
Creates a new X500NameAttribute that represents the value supplied.

Parameters:
value - the X500 Name to be represented
Method Detail

getInstance

public static X500NameAttribute getInstance(Node root)
                                     throws IllegalArgumentException
Returns a new that represents the X500 Name at a particular DOM node.

Parameters:
root - the Node that contains the desired value
Returns:
a new X500NameAttribute representing the appropriate value
Throws:
IllegalArgumentException - if value is improperly specified

getInstance

public static X500NameAttribute getInstance(String value)
                                     throws IllegalArgumentException
Returns a new X500NameAttribute that represents the X500 Name value indicated by the string provided.

Parameters:
value - a string representing the desired value
Returns:
a new X500NameAttribute representing the appropriate value
Throws:
IllegalArgumentException - if value is improperly specified

getValue

public X500Principal getValue()
Returns the name value represented by this object

Returns:
the name

equals

public boolean equals(Object o)
Returns true if the input is an instance of this class and if its value equals the value contained in this class. This method deviates slightly from the XACML spec in the way that it handles RDNs with multiple attributeTypeAndValue pairs and some additional canonicalization steps. This method uses the procedure used by javax.security.auth.x500.X500Principal.equals(), while the XACML spec uses a slightly different procedure. In practice, it is expected that this difference will not be noticeable. For more details, refer to the javadoc for X500Principal.equals() and the XACML specification.

Parameters:
o - the object to compare
Returns:
true if this object and the input represent the same value

hashCode

public int hashCode()
Returns the hashcode value used to index and compare this object with others of the same type. Typically this is the hashcode of the backing data object.

Returns:
the object's hashcode value

encode

public String encode()
Description copied from class: AttributeValue
Encodes the value in a form suitable for including in XML data like a request or an obligation. This must return a value that could in turn be used by the factory to create a new instance with the same value.

Specified by:
encode in class AttributeValue
Returns:
a String form of the value

Sun's XACML Implementation Version 1.2

Copyright 2003-2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.

Sun, Sun Microsystems, the Sun Logo, and Java are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.