Documentation
¶
Index ¶
- Variables
- func GetTracer() trace.Tracer
- func InitTracer(serviceName, otelEndpoint string, logger l.Logger) (func(context.Context) error, error)
- func StreamAuthInterceptor(auth *Authenticator, logger l.Logger) grpc.StreamServerInterceptor
- func StreamTracingInterceptor(logger l.Logger) grpc.StreamServerInterceptor
- func UnaryAuthInterceptor(auth *Authenticator, logger l.Logger) grpc.UnaryServerInterceptor
- func UnaryPerformanceInterceptor() grpc.UnaryServerInterceptor
- func UnaryTracingInterceptor(logger l.Logger) grpc.UnaryServerInterceptor
- type AdminServiceServer
- func (s *AdminServiceServer) ChangePassword(ctx context.Context, req *orisun.ChangePasswordRequest) (*orisun.ChangePasswordResponse, error)
- func (s *AdminServiceServer) CreateUser(ctx context.Context, req *orisun.CreateUserRequest) (*orisun.CreateUserResponse, error)
- func (s *AdminServiceServer) DeleteUser(ctx context.Context, req *orisun.DeleteUserRequest) (*orisun.DeleteUserResponse, error)
- func (s *AdminServiceServer) GetEventCount(ctx context.Context, req *orisun.GetEventCountRequest) (*orisun.GetEventCountResponse, error)
- func (s *AdminServiceServer) GetUserCount(ctx context.Context, req *orisun.GetUserCountRequest) (*orisun.GetUserCountResponse, error)
- func (s *AdminServiceServer) ListUsers(ctx context.Context, req *orisun.ListUsersRequest) (*orisun.ListUsersResponse, error)
- func (s *AdminServiceServer) ValidateCredentials(ctx context.Context, req *orisun.ValidateCredentialsRequest) (*orisun.ValidateCredentialsResponse, error)
- type AuthUserProjector
- type Authenticator
- type GetEventsFunc
- type ListAdminUsersFunc
- type SaveEventsFunc
Constants ¶
This section is empty.
Variables ¶
var ( ErrUserNotFound = errors.New("user not found") ErrUserAlreadyExists = errors.New("username already exists") ErrInvalidCredentials = errors.New("invalid credentials") ErrPasswordMismatch = errors.New("passwords do not match") ErrCannotDeleteSelf = errors.New("cannot delete your own account") )
Functions ¶
func InitTracer ¶
func InitTracer(serviceName, otelEndpoint string, logger l.Logger) (func(context.Context) error, error)
InitTracer initializes the OpenTelemetry tracer
func StreamAuthInterceptor ¶
func StreamAuthInterceptor(auth *Authenticator, logger l.Logger) grpc.StreamServerInterceptor
func StreamTracingInterceptor ¶
func StreamTracingInterceptor(logger l.Logger) grpc.StreamServerInterceptor
StreamTracingInterceptor returns a gRPC streaming interceptor that adds OpenTelemetry tracing
func UnaryAuthInterceptor ¶
func UnaryAuthInterceptor(auth *Authenticator, logger l.Logger) grpc.UnaryServerInterceptor
func UnaryPerformanceInterceptor ¶
func UnaryPerformanceInterceptor() grpc.UnaryServerInterceptor
middleware to measure performance of grpc requests
func UnaryTracingInterceptor ¶
func UnaryTracingInterceptor(logger l.Logger) grpc.UnaryServerInterceptor
UnaryTracingInterceptor returns a gRPC unary interceptor that adds OpenTelemetry tracing
Types ¶
type AdminServiceServer ¶
type AdminServiceServer struct {
orisun.UnimplementedAdminServer
// contains filtered or unexported fields
}
AdminServiceServer implements the Admin gRPC service
func NewGRPCAdminServer ¶
func NewGRPCAdminServer( logger l.Logger, boundary string, getEvents GetEventsFunc, saveEvents SaveEventsFunc, listAdminUsers ListAdminUsersFunc, authenticator *Authenticator, ) *AdminServiceServer
NewGRPCAdminServer creates a new AdminServiceServer
func (*AdminServiceServer) ChangePassword ¶
func (s *AdminServiceServer) ChangePassword(ctx context.Context, req *orisun.ChangePasswordRequest) (*orisun.ChangePasswordResponse, error)
ChangePassword changes a user's password
func (*AdminServiceServer) CreateUser ¶
func (s *AdminServiceServer) CreateUser(ctx context.Context, req *orisun.CreateUserRequest) (*orisun.CreateUserResponse, error)
CreateUser creates a new user with the given details
func (*AdminServiceServer) DeleteUser ¶
func (s *AdminServiceServer) DeleteUser(ctx context.Context, req *orisun.DeleteUserRequest) (*orisun.DeleteUserResponse, error)
DeleteUser deletes a user by ID
func (*AdminServiceServer) GetEventCount ¶
func (s *AdminServiceServer) GetEventCount(ctx context.Context, req *orisun.GetEventCountRequest) (*orisun.GetEventCountResponse, error)
GetEventCount returns the number of events in a boundary
func (*AdminServiceServer) GetUserCount ¶
func (s *AdminServiceServer) GetUserCount(ctx context.Context, req *orisun.GetUserCountRequest) (*orisun.GetUserCountResponse, error)
GetUserCount returns the total number of users
func (*AdminServiceServer) ListUsers ¶
func (s *AdminServiceServer) ListUsers(ctx context.Context, req *orisun.ListUsersRequest) (*orisun.ListUsersResponse, error)
ListUsers returns all users
func (*AdminServiceServer) ValidateCredentials ¶
func (s *AdminServiceServer) ValidateCredentials(ctx context.Context, req *orisun.ValidateCredentialsRequest) (*orisun.ValidateCredentialsResponse, error)
ValidateCredentials validates username and password
type AuthUserProjector ¶
type AuthUserProjector struct {
// contains filtered or unexported fields
}
func NewAuthUserProjector ¶
func NewAuthUserProjector( logger logger.Logger, subscribeToEvents admin_common.SubscribeToEventStoreType, boundary string, ) *AuthUserProjector
type Authenticator ¶
type Authenticator struct {
// contains filtered or unexported fields
}
func NewAuthenticator ¶
func NewAuthenticator(getEvents admin_common.GetEventsType, logger logger.Logger, boundary string, getUserByUsername func(username string) (orisun.User, error)) *Authenticator
func (*Authenticator) ValidateCredentials ¶
func (*Authenticator) ValidateToken ¶
type GetEventsFunc ¶
type GetEventsFunc func(ctx context.Context, req *orisun.GetEventsRequest) (*orisun.GetEventsResponse, error)
GetEventsFunc is the function signature for getting events
type ListAdminUsersFunc ¶
ListAdminUsersFunc is the function signature for listing admin users
type SaveEventsFunc ¶
type SaveEventsFunc func(ctx context.Context, req *orisun.SaveEventsRequest) (*orisun.WriteResult, error)
SaveEventsFunc is the function signature for saving events