SimpleSAML_Metadata_SAMLParser::processDescriptorsElement PHP Méthode

processDescriptorsElement() private static méthode

private static processDescriptorsElement ( SAML2\XML\md\EntityDescriptor | SAML2\XML\md\EntitiesDescriptor $element, integer | null $maxExpireTime = null, array $validators = [], array $parentExtensions = [] ) : SimpleSAML_Metadata_SAMLParser[]
$element SAML2\XML\md\EntityDescriptor | SAML2\XML\md\EntitiesDescriptor The element we should process.
$maxExpireTime integer | null The maximum expiration time of the entities.
$validators array The parent-elements that may be signed.
$parentExtensions array An optional array of extensions from the parent element.
Résultat SimpleSAML_Metadata_SAMLParser[] Array of SAMLParser instances.
    private static function processDescriptorsElement($element, $maxExpireTime = null, array $validators = array(), array $parentExtensions = array())
    {
        assert('is_null($maxExpireTime) || is_int($maxExpireTime)');
        if ($element instanceof \SAML2\XML\md\EntityDescriptor) {
            $ret = new SimpleSAML_Metadata_SAMLParser($element, $maxExpireTime, $validators, $parentExtensions);
            $ret = array($ret->getEntityId() => $ret);
            /** @var SimpleSAML_Metadata_SAMLParser[] $ret */
            return $ret;
        }
        assert('$element instanceof \\SAML2\\XML\\md\\EntitiesDescriptor');
        $extensions = self::processExtensions($element, $parentExtensions);
        $expTime = self::getExpireTime($element, $maxExpireTime);
        $validators[] = $element;
        $ret = array();
        foreach ($element->children as $child) {
            $ret += self::processDescriptorsElement($child, $expTime, $validators, $extensions);
        }
        return $ret;
    }