修复 Context 改造后的编译问题
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package listing
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
@@ -36,7 +37,7 @@ type Service struct {
|
||||
}
|
||||
|
||||
type ConfigReader interface {
|
||||
FindValue(key string) (string, error)
|
||||
FindValue(ctx context.Context, key string) (string, error)
|
||||
}
|
||||
|
||||
const (
|
||||
@@ -77,28 +78,28 @@ func NewService(repo *Repository, config ConfigReader) *Service {
|
||||
return &Service{repo: repo, config: config}
|
||||
}
|
||||
|
||||
func (s *Service) Create(ownerID uint64, req CreateRequest) (*ListingDTO, error) {
|
||||
func (s *Service) Create(ctx context.Context, ownerID uint64, req CreateRequest) (*ListingDTO, error) {
|
||||
if s.repo == nil {
|
||||
return nil, ErrDependencyUnavailable
|
||||
}
|
||||
if !req.AgreedVirtualAssetSale || !req.AgreedSellerAgreement {
|
||||
return nil, ErrAgreementRequired
|
||||
}
|
||||
rules, err := s.publishRules()
|
||||
rules, err := s.publishRules(ctx)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err := validateRequest(req, rules); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reviewRequired, err := s.reviewRequired()
|
||||
reviewRequired, err := s.reviewRequired(ctx)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return s.repo.Create(ownerID, req, reviewRequired)
|
||||
}
|
||||
|
||||
func (s *Service) ImportExternalUpload(req ExternalUploadRequest, meta ExternalUploadMeta) (*ExternalUploadResponse, error) {
|
||||
func (s *Service) ImportExternalUpload(ctx context.Context, req ExternalUploadRequest, meta ExternalUploadMeta) (*ExternalUploadResponse, error) {
|
||||
if s.repo == nil {
|
||||
return nil, ErrDependencyUnavailable
|
||||
}
|
||||
@@ -113,7 +114,7 @@ func (s *Service) ImportExternalUpload(req ExternalUploadRequest, meta ExternalU
|
||||
if len(items) > maxExternalUploadItems {
|
||||
return nil, ErrTooManyUploadItems
|
||||
}
|
||||
rules, err := s.publishRules()
|
||||
rules, err := s.publishRules(ctx)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -171,29 +172,29 @@ func (s *Service) ImportExternalUpload(req ExternalUploadRequest, meta ExternalU
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
func (s *Service) Update(ownerID uint64, id uint64, req UpdateRequest) (*ListingDTO, error) {
|
||||
func (s *Service) Update(ctx context.Context, ownerID uint64, id uint64, req UpdateRequest) (*ListingDTO, error) {
|
||||
if s.repo == nil {
|
||||
return nil, ErrDependencyUnavailable
|
||||
}
|
||||
rules, err := s.publishRules()
|
||||
rules, err := s.publishRules(ctx)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err := validateRequest(req, rules); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reviewRequired, err := s.reviewRequired()
|
||||
reviewRequired, err := s.reviewRequired(ctx)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return s.repo.Update(ownerID, id, req, reviewRequired)
|
||||
}
|
||||
|
||||
func (s *Service) SubmitReview(ownerID uint64, id uint64) (*ListingDTO, error) {
|
||||
func (s *Service) SubmitReview(ctx context.Context, ownerID uint64, id uint64) (*ListingDTO, error) {
|
||||
if s.repo == nil {
|
||||
return nil, ErrDependencyUnavailable
|
||||
}
|
||||
reviewRequired, err := s.reviewRequired()
|
||||
reviewRequired, err := s.reviewRequired(ctx)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -753,11 +754,11 @@ func hasScreenshotURL(urls []string) bool {
|
||||
return false
|
||||
}
|
||||
|
||||
func (s *Service) reviewRequired() (bool, error) {
|
||||
func (s *Service) reviewRequired(ctx context.Context) (bool, error) {
|
||||
if s.config == nil {
|
||||
return false, nil
|
||||
}
|
||||
value, err := s.config.FindValue(reviewRequiredConfigKey)
|
||||
value, err := s.config.FindValue(ctx, reviewRequiredConfigKey)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
@@ -768,12 +769,12 @@ func (s *Service) reviewRequired() (bool, error) {
|
||||
return required, nil
|
||||
}
|
||||
|
||||
func (s *Service) publishRules() (publishRules, error) {
|
||||
func (s *Service) publishRules(ctx context.Context) (publishRules, error) {
|
||||
rules := publishRules{FireLevelMin: defaultFireLevelMin}
|
||||
if s.config == nil {
|
||||
return rules, nil
|
||||
}
|
||||
value, err := s.config.FindValue(publishOptionsConfigKey)
|
||||
value, err := s.config.FindValue(ctx, publishOptionsConfigKey)
|
||||
if err != nil {
|
||||
return rules, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user