Skip to content
Snippets Groups Projects
Commit 059257ac authored by Olav Morken's avatar Olav Morken
Browse files

Removed the SimpleSAML_XML_MetaDataStore class and replaced all references to...

Removed the SimpleSAML_XML_MetaDataStore class and replaced all references to it with the SimpleSAML_Metadata_MetaDataStorageHandler class.


git-svn-id: https://simplesamlphp.googlecode.com/svn/trunk@159 44740490-163a-0410-bde0-09ae8108e29a
parent 6eaf25a3
No related branches found
No related tags found
No related merge requests found
......@@ -448,7 +448,7 @@
<programlisting>require_once('SimpleSAML/Utilities.php');
require_once('SimpleSAML/Session.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
require_once('SimpleSAML/XML/SAML20/AuthnRequest.php');
require_once('SimpleSAML/XML/SAML20/AuthnResponse.php');
require_once('SimpleSAML/Bindings/SAML20/HTTPRedirect.php');
......@@ -464,7 +464,7 @@ require_once('SimpleSAML/XHTML/Template.php');
/* Load simpleSAMLphp, configuration and metadata */
$config = SimpleSAML_Configuration::getInstance();
$metadata = new SimpleSAML_XML_MetaDataStore($config);
$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
$session = SimpleSAML_Session::getInstance();
</programlisting>
......
......@@ -16,7 +16,7 @@ require_once('SimpleSAML/Configuration.php');
require_once('SimpleSAML/Utilities.php');
require_once('SimpleSAML/Session.php');
require_once('SimpleSAML/SessionHandler.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
require_once('SimpleSAML/XML/SAML20/AuthnRequest.php');
require_once('SimpleSAML/XML/AuthnResponse.php');
require_once('SimpleSAML/Bindings/SAML20/HTTPRedirect.php');
......
<?php
/**
* SimpleSAMLphp
*
* PHP versions 4 and 5
*
* LICENSE: See the COPYING file included in this distribution.
*
* @author Andreas kre Solberg, UNINETT AS. <andreas.solberg@uninett.no>
*/
require_once('SimpleSAML/Configuration.php');
require_once('SimpleSAML/Utilities.php');
/**
* Configuration of SimpleSAMLphp
*/
class SimpleSAML_XML_MetaDataStore {
private $configuration = null;
private $metadata = null;
private $hostmap = null;
function __construct(SimpleSAML_Configuration $configuration) {
$this->configuration = $configuration;
}
public function load($set) {
$metadata = null;
if (!in_array($set, array(
'saml20-sp-hosted', 'saml20-sp-remote','saml20-idp-hosted', 'saml20-idp-remote',
'shib13-sp-hosted', 'shib13-sp-remote', 'shib13-idp-hosted', 'shib13-idp-remote',
'openid-provider'))) {
throw new Exception('Trying to load illegal set of Meta data [' . $set . ']');
}
$metadatasetfile = $this->configuration->getBaseDir() . '/' .
$this->configuration->getValue('metadatadir') . '/' . $set . '.php';
if (!file_exists($metadatasetfile)) {
throw new Exception('Could not open file: ' . $metadatasetfile);
}
include($metadatasetfile);
if (!is_array($metadata)) {
throw new Exception('Could not load metadata set [' . $set . '] from file: ' . $metadatasetfile);
}
foreach ($metadata AS $key => $entry) {
$this->metadata[$set][$key] = $entry;
$this->metadata[$set][$key]['entityid'] = $key;
if (isset($entry['host'])) {
$this->hostmap[$set][$entry['host']] = $key;
}
}
/*
echo '<pre>';
print_r();
echo '</pre>';
*/
}
public function getMetaDataCurrentEntityID($set = 'saml20-sp-hosted') {
if (!isset($this->metadata[$set])) {
$this->load($set);
}
$currenthost = $_SERVER['HTTP_HOST'];
if(strstr($currenthost, ":")) {
$currenthostdecomposed = explode(":", $currenthost);
$currenthost = $currenthostdecomposed[0];
}
if (!isset($this->hostmap[$set])) {
throw new Exception('No default entities defined for metadata set [' . $set . '] (host:' . $currenthost. ')');
}
if (!isset($currenthost)) {
throw new Exception('Could not get HTTP_HOST, in order to resolve default entity ID');
}
if (!isset($this->hostmap[$set][$currenthost])) {
throw new Exception('Could not find any default metadata entities in set [' . $set . '] for host [' . $currenthost . ']');
}
if (!$this->hostmap[$set][$currenthost]) throw new Exception('Could not find default metadata for current host');
return $this->hostmap[$set][$currenthost];
}
public function getMetaDataCurrent($set = 'saml20-sp-hosted') {
return $this->getMetaData($this->getMetaDataCurrentEntityID($set), $set);
}
public function getMetaData($entityid = null, $set = 'saml20-sp-hosted') {
if (!isset($entityid)) {
return $this->getMetaDataCurrent($set);
}
//echo 'find metadata for entityid [' . $entityid . '] in metadata set [' . $set . ']';
if (!isset($this->metadata[$set])) {
$this->load($set);
}
if (!isset($this->metadata[$set][$entityid]) ) {
throw new Exception('Could not find metadata for entityid [' . $entityid . '] in metadata set [' . $set . ']');
}
return $this->metadata[$set][$entityid];
}
public function getList($set = 'saml20-idp-remote') {
if (!isset($this->metadata[$set])) {
$this->load($set);
}
return $this->metadata[$set];
}
public function getGenerated($property, $set = 'saml20-sp-hosted') {
$baseurl = SimpleSAML_Utilities::selfURLhost() . '/' . $this->configuration->getValue('baseurlpath');
if ($set == 'saml20-sp-hosted') {
switch ($property) {
case 'AssertionConsumerService' :
return $baseurl . 'saml2/sp/AssertionConsumerService.php';
case 'SingleLogoutService' :
return $baseurl . 'saml2/sp/SingleLogoutService.php';
}
} elseif($set == 'saml20-idp-hosted') {
switch ($property) {
case 'SingleSignOnService' :
return $baseurl . 'saml2/idp/SSOService.php';
case 'SingleLogoutService' :
return $baseurl . 'saml2/idp/SingleLogoutService.php';
}
} elseif($set == 'shib13-sp-hosted') {
switch ($property) {
case 'AssertionConsumerService' :
return $baseurl . 'shib13/sp/AssertionConsumerService.php';
}
} elseif($set == 'shib13-idp-hosted') {
switch ($property) {
case 'SingleSignOnService' :
return $baseurl . 'shib13/idp/SSOService.php';
}
} elseif($set == 'openid-provider') {
switch ($property) {
case 'server' :
return $baseurl . 'openid/provider/server.php';
}
}
throw new Exception('Could not generate metadata property ' . $property . ' for set ' . $set . '.');
}
}
?>
\ No newline at end of file
......@@ -12,7 +12,7 @@
*/
require_once('SimpleSAML/Configuration.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
/**
* Configuration of SimpleSAMLphp
......@@ -32,7 +32,7 @@ class SimpleSAML_XML_Shib13_AuthnRequest {
const PROTOCOL = 'shibboleth';
function __construct(SimpleSAML_Configuration $configuration, SimpleSAML_XML_MetaDataStore $metadatastore) {
function __construct(SimpleSAML_Configuration $configuration, SimpleSAML_Metadata_MetaDataStorageHandler $metadatastore) {
$this->configuration = $configuration;
$this->metadata = $metadatastore;
......
......@@ -12,7 +12,7 @@
require_once('SimpleSAML/Configuration.php');
require_once('SimpleSAML/Session.php');
require_once('SimpleSAML/Utilities.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
require_once('SimpleSAML/XML/AuthnResponse.php');
require_once('xmlseclibs.php');
......@@ -35,7 +35,7 @@ class SimpleSAML_XML_Shib13_AuthnResponse extends SimpleSAML_XML_AuthnResponse {
const SHIB_PROTOCOL_NS = 'urn:oasis:names:tc:SAML:1.0:protocol';
const SHIB_ASSERT_NS = 'urn:oasis:names:tc:SAML:1.0:assertion';
function __construct(SimpleSAML_Configuration $configuration, SimpleSAML_XML_MetaDataStore $metadatastore) {
function __construct(SimpleSAML_Configuration $configuration, SimpleSAML_Metadata_MetaDataStorageHandler $metadatastore) {
$this->configuration = $configuration;
$this->metadata = $metadatastore;
}
......
......@@ -9,7 +9,6 @@ require_once('SimpleSAML/XHTML/Template.php');
/* Load simpleSAMLphp, configuration and metadata */
$config = SimpleSAML_Configuration::getInstance();
//$metadata = new SimpleSAML_XML_MetaDataStore($config);
$session = SimpleSAML_Session::getInstance();
try {
......
......@@ -6,11 +6,11 @@ require_once('../../www/_include.php');
require_once('SimpleSAML/Utilities.php');
require_once('SimpleSAML/Session.php');
require_once('SimpleSAML/Logger.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
require_once('SimpleSAML/XHTML/Template.php');
$config = SimpleSAML_Configuration::getInstance();
$metadata = new SimpleSAML_XML_MetaDataStore($config);
$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
$session = SimpleSAML_Session::getInstance();
$logger = new SimpleSAML_Logger();
......
......@@ -5,11 +5,11 @@ require_once('../../www/_include.php');
require_once('SimpleSAML/Utilities.php');
require_once('SimpleSAML/Session.php');
require_once('SimpleSAML/Logger.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
require_once('SimpleSAML/XHTML/Template.php');
$config = SimpleSAML_Configuration::getInstance();
$metadata = new SimpleSAML_XML_MetaDataStore($config);
$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
$session = SimpleSAML_Session::getInstance();
$logger = new SimpleSAML_Logger();
......
......@@ -6,14 +6,14 @@ require_once('../../www/_include.php');
require_once('SimpleSAML/Utilities.php');
require_once('SimpleSAML/Session.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
require_once('SimpleSAML/XML/SAML20/AuthnRequest.php');
require_once('SimpleSAML/Bindings/SAML20/HTTPRedirect.php');
require_once('SimpleSAML/XHTML/Template.php');
require_once('SimpleSAML/Logger.php');
$config = SimpleSAML_Configuration::getInstance();
$metadata = new SimpleSAML_XML_MetaDataStore($config);
$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
$session = SimpleSAML_Session::getInstance();
$logger = new SimpleSAML_Logger();
......
......@@ -6,7 +6,7 @@ require_once('_include.php');
require_once('SimpleSAML/Utilities.php');
require_once('SimpleSAML/Session.php');
require_once('SimpleSAML/XHTML/Template.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
$config = SimpleSAML_Configuration::getInstance();
......
......@@ -5,7 +5,7 @@ require_once('../../_include.php');
require_once('SimpleSAML/Utilities.php');
require_once('SimpleSAML/Session.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
require_once('SimpleSAML/XML/Shib13/AuthnRequest.php');
require_once('SimpleSAML/Bindings/Shib13/HTTPPost.php');
require_once('SimpleSAML/XHTML/Template.php');
......@@ -18,7 +18,7 @@ try {
echo '</pre>';
*/
$config = SimpleSAML_Configuration::getInstance();
$metadata = new SimpleSAML_XML_MetaDataStore($config);
$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
#print_r($metadata->getMetaData('sam.feide.no'));
# $sr = new SimpleSAML_XML_Shib13_AuthnResponse($config, $metadata);
......
......@@ -6,10 +6,10 @@ require_once('../../_include.php');
require_once('SimpleSAML/Utilities.php');
require_once('SimpleSAML/Session.php');
require_once('SimpleSAML/XHTML/Template.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
$config = SimpleSAML_Configuration::getInstance();
$metadata = new SimpleSAML_XML_MetaDataStore($config);
$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
$session = SimpleSAML_Session::getInstance();
......
......@@ -6,14 +6,14 @@ require_once('../../_include.php');
require_once('SimpleSAML/Utilities.php');
require_once('SimpleSAML/Session.php');
require_once('SimpleSAML/XHTML/Template.php');
require_once('SimpleSAML/XML/MetaDataStore.php');
require_once('SimpleSAML/Metadata/MetaDataStorageHandler.php');
require_once('SimpleSAML/XML/Shib13/AuthnRequest.php');
//require_once('SimpleSAML/XML/SAML20/AuthnResponse.php');
//require_once('SimpleSAML/Bindings/SAML20/HTTPRedirect.php');
//require_once('SimpleSAML/Bindings/SAML20/HTTPPost.php');
$config = SimpleSAML_Configuration::getInstance();
$metadata = new SimpleSAML_XML_MetaDataStore($config);
$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
$session = SimpleSAML_Session::getInstance();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment