Class ResourceImpl

  • All Implemented Interfaces:
    XmlSerializable, Resource

    @SupportedAll
    public class ResourceImpl
    extends Object
    implements Resource
    The Resource element specifies information about the resource to which access is requested by listing a sequence of Attribute elements associated with the resource. it may include ResourceContent

     <xs:element name="Resource" type="xacml-context:ResourceType"/>
       <xs:complexType name="ResourceType">
         <xs:sequence>
           <xs:element ref="xacml-context:ResourceContent" minOccurs="0"/>
           <xs:element ref="xacml-context:Attribute" minOccurs="0" 
              maxOccurs="unbounded"/>
        <xs:sequence>
      <xs:complexType>
     
    • Constructor Detail

      • ResourceImpl

        public ResourceImpl()
        Default constructor
      • ResourceImpl

        public ResourceImpl​(String xml)
                     throws XACMLException
        This constructor is used to build Resource object from a XML string.
        Parameters:
        xml - A java.lang.String representing a Resource object
        Throws:
        XACMLException - if it could not process the XML string
      • ResourceImpl

        public ResourceImpl​(Element element)
                     throws XACMLException
        This constructor is used to build resource object from a block of existing XML that has already been built into a DOM.
        Parameters:
        element - A org.w3c.dom.Element representing DOM tree for Resource object
        Throws:
        XACMLException - if it could not process the Element
    • Method Detail

      • getResourceContent

        public Element getResourceContent()
        Returns the ResourceConent
        Specified by:
        getResourceContent in interface Resource
        Returns:
        the ResourceContent of the Resource
      • setResourceContent

        public void setResourceContent​(Element resourceContent)
                                throws XACMLException
        Sets the ResourceContent of this Resource
        Specified by:
        setResourceContent in interface Resource
        Parameters:
        resourceContent - ResourceContent of this Resource. ResourceContent is optional, so could be null.
        Throws:
        XACMLException - if the object is immutable An object is considered immutable if makeImmutable() has been invoked on it. It can be determined by calling isMutable on the object.
      • getAttributes

        public List getAttributes()
        Returns zero to many Attribute elements of this object If no attributes and present, empty List will be returned. Typically a Resource element will contain an Attribute with an AttributeId of "urn:oasis:names:tc:xacml:1.0:resource:resource-id". Each such Attribute SHALL be an absolute abd fully resolved representation of the identity of the single resource to which access is requested.
        Specified by:
        getAttributes in interface Resource
        Returns:
        List containing the Attribute elements of this object
      • setAttributes

        public void setAttributes​(List attributes)
                           throws XACMLException
        Sets the Attribute elements of this object
        Specified by:
        setAttributes in interface Resource
        Parameters:
        attributes - Attribute elements of this object attributes could be an empty List, if no attributes are present.
        Throws:
        XACMLException - if the object is immutable An object is considered immutable if makeImmutable() has been invoked on it. It can be determined by calling isMutable on the object.
      • toDocumentFragment

        public DocumentFragment toDocumentFragment​(Document document,
                                                   boolean includeNSPrefix,
                                                   boolean declareNS)
                                            throws SAML2Exception
        Description copied from interface: XmlSerializable
        Serializes the element into an XML DocumentFragment. A default implementation is provided for compatibility with legacy code that implements XmlSerializable.toXMLString(), but it is highly recommended to override this method.
        Specified by:
        toDocumentFragment in interface XmlSerializable
        Parameters:
        document - the parent Document to create the document fragment from.
        includeNSPrefix - whether to include a namespace prefix in the document elements.
        declareNS - whether to declare any namespaces or assume that they are already declared.
        Returns:
        the XML document fragment representing this SAML2 element.
        Throws:
        SAML2Exception - if the element cannot be serialized for any reason.
      • makeImmutable

        public void makeImmutable()
        Description copied from interface: Resource
        Makes the object immutable
        Specified by:
        makeImmutable in interface Resource
      • isMutable

        public boolean isMutable()
        Checks if the object is mutable
        Specified by:
        isMutable in interface Resource
        Returns:
        true if the object is mutable, false otherwise