Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( FetchModeParallel = "parallel" // nolint:gochecknoglobals FetchModeSerial = "serial" // nolint:gochecknoglobals ErrInvalidFetchType = errors.New("invalid fetch type") ErrNoMetadata = errors.New("no metadata found") )
var ErrUnableToGetMetadata = errors.New("unable to get metadata")
Functions ¶
This section is empty.
Types ¶
type AggregateSchemaProvider ¶
type AggregateSchemaProvider struct {
// contains filtered or unexported fields
}
AggregateSchemaProvider gets the schema for multiple objects using a single batch request.
func NewAggregateSchemaProvider ¶
func NewAggregateSchemaProvider( client common.AuthenticatedHTTPClient, list operations.ListObjectMetadataHandlers, ) *AggregateSchemaProvider
func (*AggregateSchemaProvider) ListObjectMetadata ¶
func (p *AggregateSchemaProvider) ListObjectMetadata( ctx context.Context, objects []string, ) (*common.ListObjectMetadataResult, error)
func (*AggregateSchemaProvider) String ¶
func (p *AggregateSchemaProvider) String() string
type CompositeSchemaProvider ¶
type CompositeSchemaProvider struct {
// contains filtered or unexported fields
}
CompositeSchemaProvider gets metadata from multiple providers with fallback. For example, certain connectors may have OpenAPI definitions for some objects, while other objects require calling an API endpoint to get the metadata. This provider will try each provider in sequence until all objects are processed. If a provider doesn't successfully get metadata for all objects, it will try the next provider. If all providers fail, it will return an error.
func NewCompositeSchemaProvider ¶
func NewCompositeSchemaProvider(schemaProviders ...components.SchemaProvider) *CompositeSchemaProvider
func (*CompositeSchemaProvider) ListObjectMetadata ¶
func (c *CompositeSchemaProvider) ListObjectMetadata( ctx context.Context, objects []string, ) (*common.ListObjectMetadataResult, error)
ListObjectMetadata attempts to retrieve metadata for objects using each schema provider in sequence. It returns aggregated results from the most successful provider (with the fewest errors). Providers are tried in the order they were registered in the CompositeSchemaProvider.
func (*CompositeSchemaProvider) String ¶
func (c *CompositeSchemaProvider) String() string
type ObjectSchemaProvider ¶
type ObjectSchemaProvider struct {
// contains filtered or unexported fields
}
ObjectSchemaProvider implements Provider by fetching each object individually.
func NewObjectSchemaProvider ¶
func NewObjectSchemaProvider( client common.AuthenticatedHTTPClient, fetchType string, list operations.SingleObjectMetadataHandlers, ) *ObjectSchemaProvider
func (*ObjectSchemaProvider) ListObjectMetadata ¶
func (p *ObjectSchemaProvider) ListObjectMetadata( ctx context.Context, objects []string, ) (*common.ListObjectMetadataResult, error)
func (*ObjectSchemaProvider) String ¶
func (p *ObjectSchemaProvider) String() string
type OpenAPISchemaProvider ¶
type OpenAPISchemaProvider[F staticschema.FieldMetadataMap, C any] struct { // contains filtered or unexported fields }
OpenAPISchemaProvider implements Provider using OpenAPI schemas.
func NewOpenAPISchemaProvider ¶
func NewOpenAPISchemaProvider[F staticschema.FieldMetadataMap, C any]( module common.ModuleID, schemas *staticschema.Metadata[F, C], ) *OpenAPISchemaProvider[F, C]
func (*OpenAPISchemaProvider[F, C]) ListObjectMetadata ¶
func (p *OpenAPISchemaProvider[F, C]) ListObjectMetadata( ctx context.Context, objects []string, ) (*common.ListObjectMetadataResult, error)
func (*OpenAPISchemaProvider[F, C]) String ¶
func (p *OpenAPISchemaProvider[F, C]) String() string