...
This is a sketch of how topology files would need to be extended to support the external chain definitions.
See comments within the XML table below for details on the new elements introduced.
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<topology> <gateway> <provider> <role>...</role> <name>...</name> <!-- Config for the provider. --> <param><name>...</name><value>...</value></param> </provider> <!-- There can be multiple chain elements. --> <!-- NOTE: There will be a "built-in" "default" chain definition. --> <chain> <name>...</name> <!-- Chains referenced by name by services. --> <provider-ref> <!-- References a particular provider. --> <role>...</role> <!-- <name>...</name> <!-- Config for the provider to override those in the provider. --> <param><name>...</name><value>...</value></param> </provider-ref> <provider-ref>...</provider-ref> </chain> <chain>...</chain> </gateway> <service> <role>...</role> <url>...</url> <chain-ref> <name>...</name> <!-- Config for the provider to override those in the chain. --> <param><role></role><name></name><value></value></param> </chain-ref> <!-- Config for the service. --> <param><name></name><value></value></param> </service> </topology> |
...
Path | Description |
---|---|
topology/gateway/chain | This defines a new chain structure and configuration for use by services. There will be a "built-in" chain named "default". |
topology/gateway/chain/name | Specifies the name of the chain so that it can be referenced by services. |
topology/gateway/chain/provider-ref | References a configured or default provider. May repeat. |
topology/gateway/chain/provider-ref/role | A required role of a provider to be included in the chain. |
topology/gateway/chain/provider-ref/name | An optional name of a specific provider for the given role. |
topology/gateway/chain/provider-ref/param | Optional config parameters to augment the provider's configuration. |
topology/service/chain-ref | Selects a specific chain to use for the service. May repeat. |
topology/service/chain-ref/name | Specifies the name of the chain to use for the service. Default is "default" |
topology/service/chain-ref/param | Optional parameters to augment the chain and provider configuration. |
topology/service/chain-ref/param/role | A role name to disambiguate which provider the param is intended. |
topology/service/param | Configuration parameters used by the service. May repeat. |
...