You've already forked img-proxy-url-generator
Added grpc web service
This commit is contained in:
41
grpc/server.go
Normal file
41
grpc/server.go
Normal file
@@ -0,0 +1,41 @@
|
||||
package grpc
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"github.com/aws/aws-sdk-go/aws"
|
||||
"github.com/siteworxpro/img-proxy-url-generator/generator"
|
||||
"log"
|
||||
"strings"
|
||||
)
|
||||
|
||||
type GeneratorService struct {
|
||||
UnimplementedGeneratorServer
|
||||
imgGenerator *generator.Generator
|
||||
}
|
||||
|
||||
func NewService(imgGenerator *generator.Generator) *GeneratorService {
|
||||
return &GeneratorService{imgGenerator: imgGenerator}
|
||||
}
|
||||
|
||||
func (s *GeneratorService) Generate(c context.Context, r *UrlRequest) (*UrlResponse, error) {
|
||||
|
||||
var err error
|
||||
format := generator.DEF
|
||||
|
||||
if r.Format != nil {
|
||||
format, err = s.imgGenerator.StringToFormat(r.Format.String())
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
|
||||
url, err := s.imgGenerator.GenerateUrl(*r.Image, r.Params, format)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
log.Println(fmt.Sprintf("%s - [%s] - (%s)", *r.Image, strings.Join(r.Params, ","), url))
|
||||
|
||||
return &UrlResponse{Url: aws.String(url)}, nil
|
||||
}
|
||||
Reference in New Issue
Block a user