Documentation
¶
Index ¶
- func CreateForgeDescriptor(router any, locationType farp.LocationType, locationConfig map[string]string) (*farp.SchemaDescriptor, error)
- type ForgeProvider
- type OpenAPISpecProvider
- type Provider
- func (p *Provider) ContentType() string
- func (p *Provider) Endpoint() string
- func (p *Provider) Generate(ctx context.Context, app farp.Application) (any, error)
- func (p *Provider) GenerateDescriptor(ctx context.Context, app farp.Application, locationType farp.LocationType, ...) (*farp.SchemaDescriptor, error)
- func (p *Provider) Hash(schema any) (string, error)
- func (p *Provider) Serialize(schema any) ([]byte, error)
- func (p *Provider) SpecVersion() string
- func (p *Provider) Type() farp.SchemaType
- func (p *Provider) Validate(schema any) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateForgeDescriptor ¶
func CreateForgeDescriptor(router any, locationType farp.LocationType, locationConfig map[string]string) (*farp.SchemaDescriptor, error)
CreateForgeDescriptor creates a schema descriptor from a Forge router This is a helper method to simplify descriptor creation.
Types ¶
type ForgeProvider ¶
type ForgeProvider struct {
*Provider
}
ForgeProvider is a Forge-specific OpenAPI provider that generates schemas from Forge's built-in OpenAPI generator.
func NewForgeProvider ¶
func NewForgeProvider(specVersion string, endpoint string) *ForgeProvider
NewForgeProvider creates a new Forge-integrated OpenAPI provider.
func (*ForgeProvider) Generate ¶
func (p *ForgeProvider) Generate(ctx context.Context, app farp.Application) (any, error)
Generate generates OpenAPI schema from Forge application.
func (*ForgeProvider) GenerateFromRouter ¶
func (p *ForgeProvider) GenerateFromRouter(provider any) (any, error)
GenerateFromRouter generates OpenAPI schema directly from any type that provides OpenAPI specs This is a convenience method for direct router access.
func (*ForgeProvider) Validate ¶
func (p *ForgeProvider) Validate(schema any) error
Validate validates an OpenAPI schema generated from Forge.
type OpenAPISpecProvider ¶
type OpenAPISpecProvider interface {
OpenAPISpec() any
}
OpenAPISpecProvider is an interface for types that can provide an OpenAPI spec.
type Provider ¶
type Provider struct {
// contains filtered or unexported fields
}
Provider generates OpenAPI 3.x schemas from applications.
func NewProvider ¶
NewProvider creates a new OpenAPI schema provider specVersion should be "3.0.0", "3.0.1", or "3.1.0" (recommended).
func (*Provider) ContentType ¶
ContentType returns the content type.
func (*Provider) Generate ¶
Generate generates an OpenAPI schema from the application app should provide Routes() method that returns route information.
func (*Provider) GenerateDescriptor ¶
func (p *Provider) GenerateDescriptor(ctx context.Context, app farp.Application, locationType farp.LocationType, locationConfig map[string]string) (*farp.SchemaDescriptor, error)
GenerateDescriptor generates a complete SchemaDescriptor for this schema.
func (*Provider) SpecVersion ¶
SpecVersion returns the OpenAPI specification version.