ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
MetaLoader.php File Reference

Go to the source code of this file.

Data Structures

class  sspmod_metarefresh_MetaLoader
 

Namespaces

namespace  SimpleSAMLphp
 Temporary autoloader to ensure compatibility with old, non-PSR-2 compliant classes.
 

Functions

 writeMetadataSerialize ($outputDir)
 Save metadata for loading with the 'serialize' metadata loader. More...
 
 getTime ()
 

Function Documentation

◆ getTime()

getTime ( )
private

Definition at line 492 of file MetaLoader.php.

493 {
494 /* The current date, as a string. */
495 date_default_timezone_set('UTC');
496 return date('Y-m-d\\TH:i:s\\Z');
497 }

Referenced by SAML2\Message\__construct(), SAML2\Assertion\__construct(), sspmod_metarefresh_MetaLoader\dumpMetadataStdOut(), Sabre\DAV\Server\getHTTPHeaders(), SAML2\HTTPArtifact\getRedirectURL(), sspmod_metarefresh_MetaLoader\saveState(), Sabre\DAV\Xml\Property\LastModifiedTest\testDeserialize(), and sspmod_metarefresh_MetaLoader\writeState().

+ Here is the caller graph for this function:

◆ writeMetadataSerialize()

writeMetadataSerialize (   $outputDir)

Save metadata for loading with the 'serialize' metadata loader.

Parameters
string$outputDirThe directory we should save the metadata to.

Definition at line 448 of file MetaLoader.php.

449 {
450 assert(is_string($outputDir));
451
452 $metaHandler = new SimpleSAML_Metadata_MetaDataStorageHandlerSerialize(array('directory' => $outputDir));
453
454 /* First we add all the metadata entries to the metadata handler. */
455 foreach ($this->metadata as $set => $elements) {
456 foreach ($elements as $m) {
457 $entityId = $m['metadata']['entityid'];
458
460 'metarefresh: Add metadata entry ' .
461 var_export($entityId, true) . ' in set ' . var_export($set, true) . '.'
462 );
463 $metaHandler->saveMetadata($entityId, $set, $m['metadata']);
464 }
465 }
466
467 /* Then we delete old entries which should no longer exist. */
468 $ct = time();
469 foreach ($metaHandler->getMetadataSets() as $set) {
470 foreach ($metaHandler->getMetadataSet($set) as $entityId => $metadata) {
471 if (!array_key_exists('expire', $metadata)) {
473 'metarefresh: Metadata entry without expire timestamp: ' . var_export($entityId, true) .
474 ' in set ' . var_export($set, true) . '.'
475 );
476 continue;
477 }
478 if ($metadata['expire'] > $ct) {
479 continue;
480 }
481 SimpleSAML\Logger::debug('metarefresh: ' . $entityId . ' expired ' . date('l jS \of F Y h:i:s A', $metadata['expire']));
483 'metarefresh: Delete expired metadata entry ' .
484 var_export($entityId, true) . ' in set ' . var_export($set, true) . '. (' . ($ct - $metadata['expire']) . ' sec)'
485 );
486 $metaHandler->deleteMetadata($entityId, $set);
487 }
488 }
489 }
$metadata['__DYNAMIC:1__']
static warning($string)
Definition: Logger.php:177
static debug($string)
Definition: Logger.php:211
if( $source===null) if(!($source instanceof sspmod_saml_Auth_Source_SP)) $entityId
Definition: metadata.php:22
$outputDir
Definition: metarefresh.php:28