mirror of
https://github.com/jsiebens/ionscale.git
synced 2026-03-31 15:07:49 +01:00
37 lines
1.1 KiB
Go
37 lines
1.1 KiB
Go
package service
|
|
|
|
import (
|
|
"context"
|
|
"github.com/bufbuild/connect-go"
|
|
"github.com/jsiebens/ionscale/internal/auth"
|
|
"github.com/jsiebens/ionscale/internal/config"
|
|
"github.com/jsiebens/ionscale/internal/core"
|
|
"github.com/jsiebens/ionscale/internal/domain"
|
|
"github.com/jsiebens/ionscale/internal/version"
|
|
api "github.com/jsiebens/ionscale/pkg/gen/ionscale/v1"
|
|
)
|
|
|
|
func NewService(config *config.Config, authProvider auth.Provider, repository domain.Repository, sessionManager core.PollMapSessionManager) *Service {
|
|
return &Service{
|
|
config: config,
|
|
authProvider: authProvider,
|
|
repository: repository,
|
|
sessionManager: sessionManager,
|
|
}
|
|
}
|
|
|
|
type Service struct {
|
|
config *config.Config
|
|
authProvider auth.Provider
|
|
repository domain.Repository
|
|
sessionManager core.PollMapSessionManager
|
|
}
|
|
|
|
func (s *Service) GetVersion(_ context.Context, _ *connect.Request[api.GetVersionRequest]) (*connect.Response[api.GetVersionResponse], error) {
|
|
v, revision := version.GetReleaseInfo()
|
|
return connect.NewResponse(&api.GetVersionResponse{
|
|
Version: v,
|
|
Revision: revision,
|
|
}), nil
|
|
}
|