Skip to main content

Module catalogue_manager

Module catalogue_manager 

Source
Expand description

Manages the catalogue of features provided by plugins

Structs§

CatalogueEntry
Catalogue entry

Enums§

CatalogueEntryProviderType
Provider of the catalogue entry
CatalogueEntryType
Type of catalogue entry
ResolvedCapability
Where a resolved catalogue entry’s capability should be dispatched. Shared by every transport that lets a plugin call back into a capability by catalogue entry key - the gRPC PluginHost service, and the Lua/WASM host functions - so there is exactly one place that decides “who provides this entry”. See proposal 007 (“One resolver, [multiple] call directions”).

Functions§

all_entries
Returns a copy of all catalogue entries
core_entries
Returns catalogue entries provided by the core host framework (excludes plugin entries)
find_content_generator
Find a content generator in the global catalogue for the provided content type
find_content_matcher
Find a content matcher in the global catalogue for the provided content type
lookup_entry
Lookup an entry in the catalogue by the key, matched the same way resolve_capability does: by name - the whole catalogue key, or a trailing run of its /-separated components.
register_core_entries
Register the core Pact framework entries in the global catalogue
register_plugin_entries
Register the entries in the global catalogue
remove_plugin_entries
Remove all entries for a plugin given the plugin name
resolve_capability
Resolve a callback’s catalogue entry key to a dispatch target, the same way crate::content::ContentMatcher::is_core/crate::content::ContentGenerator::is_core do for the driver’s own outbound calls.
resolve_capability_entry
Resolve a catalogue entry key to the entry itself, matching it the same way resolve_capability documents. Callers that need the entry rather than a dispatch target - crate::field::find_field_matcher and crate::field::find_field_generator, which wrap it in a matcher/generator - use this directly.