Files
sendico/api/edge/bff/internal/server/logoimp/service.go
2026-02-28 00:39:20 +01:00

41 lines
930 B
Go

package logoimp
import (
"context"
api "github.com/tech/sendico/pkg/api/http"
"github.com/tech/sendico/pkg/db/account"
"github.com/tech/sendico/pkg/mlogger"
"github.com/tech/sendico/pkg/mservice"
eapi "github.com/tech/sendico/server/interface/api"
mutil "github.com/tech/sendico/server/internal/mutil/param"
"go.uber.org/zap"
)
type LogoAPI struct {
logger mlogger.Logger
adb account.DB
}
func (a *LogoAPI) Name() mservice.Type {
return mservice.Logo
}
func (a *LogoAPI) Finish(ctx context.Context) error {
return nil
}
func CreateAPI(a eapi.API) (*LogoAPI, error) {
p := new(LogoAPI)
p.logger = a.Logger().Named(p.Name())
var err error
if p.adb, err = a.DBFactory().NewAccountDB(); err != nil {
p.logger.Error("Failed to create account database", zap.Error(err))
return nil, err
}
a.Register().Handler(mservice.Logo, mutil.AddAccountRef("/")+"/{email_type}", api.Get, p.getLogo)
return p, nil
}