// Code generated by ogen, DO NOT EDIT.
package gen
import (
"context"
"net/http"
"github.com/go-faster/errors"
)
// SecuritySource is provider of security values (tokens, passwords, etc.).
type SecuritySource interface {
// BasicAuth provides basicAuth security value.
BasicAuth(ctx context.Context, operationName OperationName) (BasicAuth, error)
// BearerAuth provides bearerAuth security value.
BearerAuth(ctx context.Context, operationName OperationName) (BearerAuth, error)
}
func (s *Client) securityBasicAuth(ctx context.Context, operationName OperationName, req *http.Request) error {
t, err := s.sec.BasicAuth(ctx, operationName)
if err != nil {
return errors.Wrap(err, "security source \"BasicAuth\"")
}
req.SetBasicAuth(t.Username, t.Password)
return nil
}
func (s *Client) securityBearerAuth(ctx context.Context, operationName OperationName, req *http.Request) error {
t, err := s.sec.BearerAuth(ctx, operationName)
if err != nil {
return errors.Wrap(err, "security source \"BearerAuth\"")
}
req.Header.Set("Authorization", "Bearer "+t.Token)
return nil
}