mirror of
https://github.com/openfaas/faas.git
synced 2025-06-21 14:23:25 +00:00
Merge master into breakout_swarm
Signed-off-by: Alex Ellis <alexellis2@gmail.com>
This commit is contained in:
62
gateway/vendor/github.com/nats-io/go-nats/encoders/protobuf/protobuf_enc.go
generated
vendored
Normal file
62
gateway/vendor/github.com/nats-io/go-nats/encoders/protobuf/protobuf_enc.go
generated
vendored
Normal file
@ -0,0 +1,62 @@
|
||||
// Copyright 2015 Apcera Inc. All rights reserved.
|
||||
|
||||
package protobuf
|
||||
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"github.com/golang/protobuf/proto"
|
||||
"github.com/nats-io/go-nats"
|
||||
)
|
||||
|
||||
// Additional index for registered Encoders.
|
||||
const (
|
||||
PROTOBUF_ENCODER = "protobuf"
|
||||
)
|
||||
|
||||
func init() {
|
||||
// Register protobuf encoder
|
||||
nats.RegisterEncoder(PROTOBUF_ENCODER, &ProtobufEncoder{})
|
||||
}
|
||||
|
||||
// ProtobufEncoder is a protobuf implementation for EncodedConn
|
||||
// This encoder will use the builtin protobuf lib to Marshal
|
||||
// and Unmarshal structs.
|
||||
type ProtobufEncoder struct {
|
||||
// Empty
|
||||
}
|
||||
|
||||
var (
|
||||
ErrInvalidProtoMsgEncode = errors.New("nats: Invalid protobuf proto.Message object passed to encode")
|
||||
ErrInvalidProtoMsgDecode = errors.New("nats: Invalid protobuf proto.Message object passed to decode")
|
||||
)
|
||||
|
||||
// Encode
|
||||
func (pb *ProtobufEncoder) Encode(subject string, v interface{}) ([]byte, error) {
|
||||
if v == nil {
|
||||
return nil, nil
|
||||
}
|
||||
i, found := v.(proto.Message)
|
||||
if !found {
|
||||
return nil, ErrInvalidProtoMsgEncode
|
||||
}
|
||||
|
||||
b, err := proto.Marshal(i)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return b, nil
|
||||
}
|
||||
|
||||
// Decode
|
||||
func (pb *ProtobufEncoder) Decode(subject string, data []byte, vPtr interface{}) error {
|
||||
if _, ok := vPtr.(*interface{}); ok {
|
||||
return nil
|
||||
}
|
||||
i, found := vPtr.(proto.Message)
|
||||
if !found {
|
||||
return ErrInvalidProtoMsgDecode
|
||||
}
|
||||
|
||||
return proto.Unmarshal(data, i)
|
||||
}
|
40
gateway/vendor/github.com/nats-io/go-nats/encoders/protobuf/testdata/pbtest.pb.go
generated
vendored
Normal file
40
gateway/vendor/github.com/nats-io/go-nats/encoders/protobuf/testdata/pbtest.pb.go
generated
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
// Code generated by protoc-gen-go.
|
||||
// source: pbtest.proto
|
||||
// DO NOT EDIT!
|
||||
|
||||
/*
|
||||
Package testdata is a generated protocol buffer package.
|
||||
|
||||
It is generated from these files:
|
||||
pbtest.proto
|
||||
|
||||
It has these top-level messages:
|
||||
Person
|
||||
*/
|
||||
package testdata
|
||||
|
||||
import proto "github.com/golang/protobuf/proto"
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
var _ = proto.Marshal
|
||||
|
||||
type Person struct {
|
||||
Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
|
||||
Age int32 `protobuf:"varint,2,opt,name=age" json:"age,omitempty"`
|
||||
Address string `protobuf:"bytes,3,opt,name=address" json:"address,omitempty"`
|
||||
Children map[string]*Person `protobuf:"bytes,10,rep,name=children" json:"children,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||||
}
|
||||
|
||||
func (m *Person) Reset() { *m = Person{} }
|
||||
func (m *Person) String() string { return proto.CompactTextString(m) }
|
||||
func (*Person) ProtoMessage() {}
|
||||
|
||||
func (m *Person) GetChildren() map[string]*Person {
|
||||
if m != nil {
|
||||
return m.Children
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func init() {
|
||||
}
|
11
gateway/vendor/github.com/nats-io/go-nats/encoders/protobuf/testdata/pbtest.proto
generated
vendored
Normal file
11
gateway/vendor/github.com/nats-io/go-nats/encoders/protobuf/testdata/pbtest.proto
generated
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package testdata;
|
||||
|
||||
message Person {
|
||||
string name = 1;
|
||||
int32 age = 2;
|
||||
string address = 3;
|
||||
|
||||
map<string, Person> children = 10;
|
||||
}
|
Reference in New Issue
Block a user