x
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
package core
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/cdle/sillyplus/proto3/srpc"
|
||||
"github.com/cdle/sillyplus/utils"
|
||||
)
|
||||
|
||||
type SillyGirlService struct {
|
||||
srpc.UnsafeSillyGirlServiceServer
|
||||
}
|
||||
|
||||
// Get implements BucketServiceServer.Get.
|
||||
func (sg *SillyGirlService) BucketGet(ctx context.Context, req *srpc.BucketKeyRequest) (*srpc.Default, error) {
|
||||
value := MakeBucket(req.Name).GetString(req.Key)
|
||||
return &srpc.Default{Value: value}, nil
|
||||
}
|
||||
|
||||
// Set implements BucketServiceServer.Set.
|
||||
func (sg *SillyGirlService) BucketSet(ctx context.Context, req *srpc.BucketSetRequest) (*srpc.BucketSetResponse, error) {
|
||||
message, changed, err := MakeBucket(req.Name).Set(req.Key, req.Value)
|
||||
return &srpc.BucketSetResponse{Changed: changed, Message: message}, err
|
||||
}
|
||||
|
||||
// Delete implements BucketServiceServer.Delete.
|
||||
func (sg *SillyGirlService) BucketDelete(ctx context.Context, req *srpc.BucketRequest) (*srpc.Empty, error) {
|
||||
err := MakeBucket(req.Name).Delete()
|
||||
return &srpc.Empty{}, err
|
||||
}
|
||||
|
||||
// Keys implements BucketServiceServer.Keys.
|
||||
func (sg *SillyGirlService) BucketKeys(ctx context.Context, req *srpc.BucketRequest) (*srpc.BucketKeysResponse, error) {
|
||||
keys, err := MakeBucket(req.Name).Keys()
|
||||
return &srpc.BucketKeysResponse{Keys: keys}, err
|
||||
}
|
||||
|
||||
// Len implements BucketServiceServer.Len.
|
||||
func (sg *SillyGirlService) BucketLen(ctx context.Context, req *srpc.BucketRequest) (*srpc.LenResponse, error) {
|
||||
keys, err := MakeBucket(req.Name).Keys()
|
||||
return &srpc.LenResponse{Length: int32(len(keys))}, err
|
||||
}
|
||||
|
||||
func (sg *SillyGirlService) BucketGetAll(ctx context.Context, req *srpc.BucketRequest) (*srpc.Default, error) {
|
||||
var values = map[string]string{}
|
||||
MakeBucket(req.Name).Foreach(func(b1, b2 []byte) error {
|
||||
values[string(b1)] = string(b2)
|
||||
return nil
|
||||
})
|
||||
return &srpc.Default{Value: string(utils.JsonMarshal(values))}, nil
|
||||
}
|
||||
|
||||
// Buckets implements BucketServiceServer.Buckets.
|
||||
func (sg *SillyGirlService) BucketBuckets(ctx context.Context, req *srpc.Empty) (*srpc.BucketsResponse, error) {
|
||||
return &srpc.BucketsResponse{Buckets: MakeBucket("app").Buckets()}, nil
|
||||
}
|
||||
Reference in New Issue
Block a user