The ChainingMetadataProvider
is a container for an ordered sequence of metadata providers of any type. When searching for a particular entityID
, the metadata resolver consults each child provider in the order in which it is listed. See the parent topic for a detailed description of the search ordering algorithm used by a ChainingMetadataProvider
the metadata resolver.
Schema Names and location
...
Code Block |
---|
language | xml |
---|
title | Example 1 |
---|
|
<MetadataProvider id="chain" xsi:type="ChainingMetadataProvider">
<!-- one
One or more providers of type FilesystemMetadataProvider for local metadata.
Each metadata provider describes a static entity descriptor stored in a file.
-->
<MetadataProvider id="LocalMetadata" xsi:type="FilesystemMetadataProvider" ...>
<!-- ... -->
</MetadataProvider>
<!-- exactly
Exactly one provider of type FileBackedHTTPMetadataProvider for federation metadata.
The metadata provider automatically refreshes a metadata aggregate (EntitiesDescriptor)
which would otherwise expire.
-->
<MetadataProvider id="FederationMetadata" xsi:type="FileBackedHTTPMetadataProvider" ...>
<!-- ... -->
</MetadataProvider>
</MetadataProvider> |
...
Code Block |
---|
language | xml |
---|
title | Example 2 |
---|
|
<MetadataProvider id="chain" xsi:type="ChainingMetadataProvider">
<!--
exactly Exactly one provider of type LocalDynamicMetadataProvider for local metadata.
The metadata provider configures a source directory containing one or more
static entity descriptors.
-->
<MetadataProvider id="LocalMetadata" xsi:type="LocalDynamicMetadataProvider" ...>
<!-- ... -->
</MetadataProvider>
<!-- exactly
Exactly one provider of type FileBackedHTTPMetadataProvider for federation metadata.
The metadata provider automatically refreshes a metadata aggregate (EntitiesDescriptor)
which would otherwise expire.
-->
<MetadataProvider id="FederationMetadata" xsi:type="FileBackedHTTPMetadataProvider" ...>
<!-- ... -->
</MetadataProvider>
</MetadataProvider> |
...
Code Block |
---|
language | xml |
---|
title | Example 3 |
---|
|
<MetadataProvider id="chain" xsi:type="ChainingMetadataProvider">
<!-- exactly
Exactly one provider of type LocalDynamicMetadataProvider for local metadata.
The metadata provider configures a source directory containing one or more
static entity descriptors.
-->
<MetadataProvider id="LocalMetadata" xsi:type="LocalDynamicMetadataProvider" ...>
<!-- ... -->
</MetadataProvider>
<!--
exactly Exactly one provider of type DynamicHTTPMetadataProvider for federation metadata.
Individual entity descriptors are fetched dynamically as needed from a metadata
query server.
-->
<MetadataProvider id="FederationMetadata" xsi:type="DynamicHTTPMetadataProvider" ...>
<!-- ... -->
</MetadataProvider>
</MetadataProvider> |
...
Code Block |
---|
language | xml |
---|
title | Example 4 |
---|
|
<MetadataProvider id="chain" xsi:type="ChainingMetadataProvider">
<!-- exactly
Exactly one provider of type LocalDynamicMetadataProvider for local metadata.
The metadata provider configures a source directory containing one or more
static entity descriptors.
-->
<MetadataProvider id="LocalMetadata" xsi:type="LocalDynamicMetadataProvider" ...>
<!-- ... -->
</MetadataProvider>
<!-- one
One or more providers of type FileBackedHTTPMetadataProvider for federation
metadata. Each provider loads (and reloads) a single entity descriptor
(which would otherwise expire).
-->
<MetadataProvider id="HighValueEntityMetadata" xsi:type="FileBackedHTTPMetadataProvider" ...>
<!-- ... -->
</MetadataProvider>
<!-- exactly
Exactly one provider of type DynamicHTTPMetadataProvider for federation metadata.
Individual entity descriptors are fetched dynamically as needed from a metadata
query server.
-->
<MetadataProvider id="FederationMetadata" xsi:type="DynamicHTTPMetadataProvider" ...>
<!-- ... -->
</MetadataProvider>
</MetadataProvider> |
...