Documentation ¶
Overview ¶
Package avroregistry provides avro.*Registry implementations that consult an Avro registry through its REST API.
Index ¶
- type Params
- type Registry
- func (r *Registry) Decoder() avro.DecodingRegistry
- func (r *Registry) DeleteSubject(ctx context.Context, subject string) error
- func (r *Registry) Encoder(subject string) avro.EncodingRegistry
- func (r *Registry) Register(ctx context.Context, subject string, schema *avro.Type) (_ int64, err error)
- func (r *Registry) Schema(ctx context.Context, subject, version string) (*Schema, error)
- func (r *Registry) SetCompatibility(ctx context.Context, subject string, mode avro.CompatMode) error
- type Schema
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Params ¶
type Params struct { // ServerURL holds the URL of the Avro registry server, for example "http://localhost:8084". ServerURL string // RetryStrategy is used when requests are retried after HTTP errors. // If this is nil, a default exponential-backoff strategy is used. RetryStrategy retry.Strategy // Username and Password hold the basic auth credentials to use. // If Userame is empty, no authentication will be sent. Username string Password string }
type Registry ¶
type Registry struct {
// contains filtered or unexported fields
}
Registry represents an Avro registry server. It implements avro.EncodingRegistry and avro.DecodingRegistry.
func (*Registry) Decoder ¶
func (r *Registry) Decoder() avro.DecodingRegistry
Decoder returns an avro.DecodingRegistry implementation that can be used to decode messages from the registry.
func (*Registry) DeleteSubject ¶
DeleteSubject deletes the given subject from the registry.
func (*Registry) Encoder ¶
func (r *Registry) Encoder(subject string) avro.EncodingRegistry
Encoder returns an avro.EncodingRegistry implementation that can be used to encode messages with schemas associated with the given subject, which must be non-empty.
func (*Registry) Register ¶
func (r *Registry) Register(ctx context.Context, subject string, schema *avro.Type) (_ int64, err error)
Register registers a schema with the registry associated with the given subject and returns its id.
func (*Registry) Schema ¶
Schema gets a specific version of the schema registered under this subject
func (*Registry) SetCompatibility ¶
func (r *Registry) SetCompatibility(ctx context.Context, subject string, mode avro.CompatMode) error
SetCompatibility sets the compatibility mode for the registry's subject to mode.
See https://docs.confluent.io/current/schema-registry/develop/api.html#put--config-(string-%20subject)
type Schema ¶
type Schema struct { // Subject defines the name this schema is registered under Subject string `json:"subject"` // ID globally unique schema identifier ID int64 `json:"id"` // Version is the version of the schema Version int `json:"version"` // Schema is the actual schema in Avro format Schema string `json:"schema"` }
Schema holds the schema metadata and actual schema stored in a Schema registry