mirror of
https://github.com/kevin-DL/services.git
synced 2026-01-20 14:35:07 +00:00
feat: add translation API (#297)
* feat: add translation * feat: resurface translation by Google Translation * feat: renamed the service as `translate` to make more readable * fix: renamed response and request name to match rpc name * chore: delete useless blank line * Update publicapi.json * Update publicapi.json * Update README.md Co-authored-by: Asim Aslam <asim@aslam.me>
This commit is contained in:
93
translate/proto/translate.pb.micro.go
Normal file
93
translate/proto/translate.pb.micro.go
Normal file
@@ -0,0 +1,93 @@
|
||||
// Code generated by protoc-gen-micro. DO NOT EDIT.
|
||||
// source: proto/translate.proto
|
||||
|
||||
package translate
|
||||
|
||||
import (
|
||||
fmt "fmt"
|
||||
proto "github.com/golang/protobuf/proto"
|
||||
math "math"
|
||||
)
|
||||
|
||||
import (
|
||||
context "context"
|
||||
api "github.com/micro/micro/v3/service/api"
|
||||
client "github.com/micro/micro/v3/service/client"
|
||||
server "github.com/micro/micro/v3/service/server"
|
||||
)
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
var _ = proto.Marshal
|
||||
var _ = fmt.Errorf
|
||||
var _ = math.Inf
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the proto package it is being compiled against.
|
||||
// A compilation error at this line likely means your copy of the
|
||||
// proto package needs to be updated.
|
||||
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
var _ api.Endpoint
|
||||
var _ context.Context
|
||||
var _ client.Option
|
||||
var _ server.Option
|
||||
|
||||
// Api Endpoints for Translate service
|
||||
|
||||
func NewTranslateEndpoints() []*api.Endpoint {
|
||||
return []*api.Endpoint{}
|
||||
}
|
||||
|
||||
// Client API for Translate service
|
||||
|
||||
type TranslateService interface {
|
||||
Text(ctx context.Context, in *TextRequest, opts ...client.CallOption) (*TextResponse, error)
|
||||
}
|
||||
|
||||
type translateService struct {
|
||||
c client.Client
|
||||
name string
|
||||
}
|
||||
|
||||
func NewTranslateService(name string, c client.Client) TranslateService {
|
||||
return &translateService{
|
||||
c: c,
|
||||
name: name,
|
||||
}
|
||||
}
|
||||
|
||||
func (c *translateService) Text(ctx context.Context, in *TextRequest, opts ...client.CallOption) (*TextResponse, error) {
|
||||
req := c.c.NewRequest(c.name, "Translate.Text", in)
|
||||
out := new(TextResponse)
|
||||
err := c.c.Call(ctx, req, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
// Server API for Translate service
|
||||
|
||||
type TranslateHandler interface {
|
||||
Text(context.Context, *TextRequest, *TextResponse) error
|
||||
}
|
||||
|
||||
func RegisterTranslateHandler(s server.Server, hdlr TranslateHandler, opts ...server.HandlerOption) error {
|
||||
type translate interface {
|
||||
Text(ctx context.Context, in *TextRequest, out *TextResponse) error
|
||||
}
|
||||
type Translate struct {
|
||||
translate
|
||||
}
|
||||
h := &translateHandler{hdlr}
|
||||
return s.Handle(s.NewHandler(&Translate{h}, opts...))
|
||||
}
|
||||
|
||||
type translateHandler struct {
|
||||
TranslateHandler
|
||||
}
|
||||
|
||||
func (h *translateHandler) Text(ctx context.Context, in *TextRequest, out *TextResponse) error {
|
||||
return h.TranslateHandler.Text(ctx, in, out)
|
||||
}
|
||||
Reference in New Issue
Block a user