This repository has been archived on 2023-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
spip-saml/inc/simplesamlphp/lib/SAML2/ArtifactResolve.php

66 lines
1.4 KiB
PHP

<?php
/**
* The Artifact is part of the SAML 2.0 IdP code, and it builds an artifact object.
* I am using strings, because I find them easier to work with.
* I want to use this, to be consistent with the other saml2_requests
*
* @author Danny Bollaert, UGent AS. <danny.bollaert@ugent.be>
* @package simpleSAMLphp
* @version $Id$
*/
class SAML2_ArtifactResolve extends SAML2_Request {
private $artifact;
public function __construct(DOMElement $xml = NULL) {
parent::__construct('ArtifactResolve', $xml);
if(!is_null($xml)){
$results = SAML2_Utils::xpQuery($xml, './saml_protocol:Artifact');
$this->artifact = $results[0]->textContent;
}
}
/**
* Retrieve the Artifact in this response.
*
* @return string artifact.
*/
public function getArtifact() {
return $this->artifact;
}
/**
* Set the artifact that should be included in this response.
*
* @param String The $artifact.
*/
public function setArtifact($artifact) {
assert('is_string($artifact)');
$this->artifact = $artifact;
}
/**
* Convert the response message to an XML element.
*
* @return DOMElement This response.
*/
public function toUnsignedXML() {
$root = parent::toUnsignedXML();
$artifactelement = $this->document->createElementNS(SAML2_Const::NS_SAMLP, 'Artifact', $this->artifact);
$root->appendChild($artifactelement);
return $root;
}
}