Documentation
¶
Overview ¶
Package registry fetches and caches the Kleff plugin catalog from the remote plugin registry (by default, github.com/kleff/plugin-registry).
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Registry ¶
type Registry struct {
// contains filtered or unexported fields
}
Registry implements ports.PluginRegistry by fetching a JSON catalog from a remote URL and caching the result for a configurable TTL.
func New ¶
New creates a Registry. catalogURL defaults to the official registry if empty. ttl controls the cache lifetime (default: 1 hour).
func (*Registry) GetManifest ¶
func (r *Registry) GetManifest(ctx context.Context, pluginID string) (*domain.CatalogManifest, error)
GetManifest returns the catalog entry for the given plugin ID, or nil, nil. Builtin plugins are checked first.
func (*Registry) ListCatalog ¶
ListCatalog returns the cached catalog merged with builtin plugins, refreshing if stale. Builtin plugins always appear first and are never overridden by the remote catalog.