Merge pull request #42 from moul/feature/flow-getter-setter
Feature/flow getter setter
This commit is contained in:
commit
4d3b9c31b6
@ -1,305 +1,311 @@
|
||||
// @flow
|
||||
// GENERATED CODE -- DO NOT EDIT!
|
||||
|
||||
import grpc from 'grpc'
|
||||
import pbFile from './pbFile.js'
|
||||
import base64 from 'base64-js'
|
||||
import test_pb from './test_pb'
|
||||
|
||||
|
||||
export type TestEnum = {|
|
||||
|
||||
ELEMENT_A?: 0;
|
||||
|
||||
ELEMENT_B?: 1;
|
||||
|
||||
|};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export type TestMessage$TestNestedEnum = {|
|
||||
|
||||
ELEMENT_C?: 0;
|
||||
|
||||
ELEMENT_D?: 1;
|
||||
|
||||
|};
|
||||
|
||||
|
||||
export type TestMessage$TestNestedMessage = {
|
||||
getS?: () => string;
|
||||
setS?: (s: string) => void;
|
||||
getT?: () => number;
|
||||
setT?: (t: number) => void;
|
||||
};
|
||||
|
||||
export type TestMessage$TestNestedMessage = {|
|
||||
|
||||
s?: string;
|
||||
|
||||
t?: number;
|
||||
|
||||
|};
|
||||
|
||||
|
||||
export type TestMessage = {|
|
||||
|
||||
a?: string;
|
||||
|
||||
b?: number;
|
||||
|
||||
c?: number;
|
||||
|
||||
d?: number;
|
||||
|
||||
e?: number;
|
||||
|
||||
n?: Array<string>;
|
||||
|
||||
o?: Array<number>;
|
||||
|
||||
p?: Array<number>;
|
||||
|
||||
q?: Array<number>;
|
||||
|
||||
r?: Array<number>;
|
||||
|
||||
u?: TestEnum;
|
||||
|
||||
v?: TestMessage$TestNestedEnum;
|
||||
|
||||
w?: Array<TestMessage$TestNestedMessage>;
|
||||
|
||||
|};
|
||||
export type TestMessage = {
|
||||
getA?: () => string;
|
||||
setA?: (a: string) => void;
|
||||
getB?: () => number;
|
||||
setB?: (b: number) => void;
|
||||
getC?: () => number;
|
||||
setC?: (c: number) => void;
|
||||
getD?: () => number;
|
||||
setD?: (d: number) => void;
|
||||
getE?: () => number;
|
||||
setE?: (e: number) => void;
|
||||
getNList?: () => Array<string>;
|
||||
setNList?: (n: Array<string>) => void;
|
||||
addN?: (n: string) => void;
|
||||
clearNList?: () => void;
|
||||
getOList?: () => Array<number>;
|
||||
setOList?: (o: Array<number>) => void;
|
||||
addO?: (o: number) => void;
|
||||
clearOList?: () => void;
|
||||
getPList?: () => Array<number>;
|
||||
setPList?: (p: Array<number>) => void;
|
||||
addP?: (p: number) => void;
|
||||
clearPList?: () => void;
|
||||
getQList?: () => Array<number>;
|
||||
setQList?: (q: Array<number>) => void;
|
||||
addQ?: (q: number) => void;
|
||||
clearQList?: () => void;
|
||||
getRList?: () => Array<number>;
|
||||
setRList?: (r: Array<number>) => void;
|
||||
addR?: (r: number) => void;
|
||||
clearRList?: () => void;
|
||||
getU?: () => TestEnum;
|
||||
setU?: (u: TestEnum) => void;
|
||||
getV?: () => TestMessage$TestNestedEnum;
|
||||
setV?: (v: TestMessage$TestNestedEnum) => void;
|
||||
getWList?: () => Array<TestMessage$TestNestedMessage>;
|
||||
setWList?: (w: Array<TestMessage$TestNestedMessage>) => void;
|
||||
addW?: (w: TestMessage$TestNestedMessage) => void;
|
||||
clearWList?: () => void;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export type TestNoStreamRequest = {|
|
||||
|
||||
message?: TestMessage;
|
||||
|
||||
|};
|
||||
export type TestNoStreamRequest = {
|
||||
getMessage?: () => TestMessage;
|
||||
setMessage?: (message: TestMessage) => void;
|
||||
clearMessage?: () => void;
|
||||
hasMessage?: () => boolean;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export type TestNoStreamReply = {|
|
||||
|
||||
message?: TestMessage;
|
||||
|
||||
err_msg?: string;
|
||||
|
||||
|};
|
||||
export type TestNoStreamReply = {
|
||||
getMessage?: () => TestMessage;
|
||||
setMessage?: (message: TestMessage) => void;
|
||||
clearMessage?: () => void;
|
||||
hasMessage?: () => boolean;
|
||||
getErrMsg?: () => string;
|
||||
setErrMsg?: (err_msg: string) => void;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export type TestStreamRequestRequest = {|
|
||||
|
||||
message?: TestMessage;
|
||||
|
||||
|};
|
||||
export type TestStreamRequestRequest = {
|
||||
getMessage?: () => TestMessage;
|
||||
setMessage?: (message: TestMessage) => void;
|
||||
clearMessage?: () => void;
|
||||
hasMessage?: () => boolean;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export type TestStreamRequestReply = {|
|
||||
|
||||
message?: TestMessage;
|
||||
|
||||
err_msg?: string;
|
||||
|
||||
|};
|
||||
export type TestStreamRequestReply = {
|
||||
getMessage?: () => TestMessage;
|
||||
setMessage?: (message: TestMessage) => void;
|
||||
clearMessage?: () => void;
|
||||
hasMessage?: () => boolean;
|
||||
getErrMsg?: () => string;
|
||||
setErrMsg?: (err_msg: string) => void;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export type TestStreamReplyRequest = {|
|
||||
|
||||
message?: TestMessage;
|
||||
|
||||
|};
|
||||
export type TestStreamReplyRequest = {
|
||||
getMessage?: () => TestMessage;
|
||||
setMessage?: (message: TestMessage) => void;
|
||||
clearMessage?: () => void;
|
||||
hasMessage?: () => boolean;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export type TestStreamReplyReply = {|
|
||||
|
||||
message?: TestMessage;
|
||||
|
||||
err_msg?: string;
|
||||
|
||||
|};
|
||||
export type TestStreamReplyReply = {
|
||||
getMessage?: () => TestMessage;
|
||||
setMessage?: (message: TestMessage) => void;
|
||||
clearMessage?: () => void;
|
||||
hasMessage?: () => boolean;
|
||||
getErrMsg?: () => string;
|
||||
setErrMsg?: (err_msg: string) => void;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export type TestStreamBothRequest = {|
|
||||
|
||||
message?: TestMessage;
|
||||
|
||||
|};
|
||||
export type TestStreamBothRequest = {
|
||||
getMessage?: () => TestMessage;
|
||||
setMessage?: (message: TestMessage) => void;
|
||||
clearMessage?: () => void;
|
||||
hasMessage?: () => boolean;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
export type TestStreamBothReply = {
|
||||
getMessage?: () => TestMessage;
|
||||
setMessage?: (message: TestMessage) => void;
|
||||
clearMessage?: () => void;
|
||||
hasMessage?: () => boolean;
|
||||
getErrMsg?: () => string;
|
||||
setErrMsg?: (err_msg: string) => void;
|
||||
};
|
||||
|
||||
export type TestStreamBothReply = {|
|
||||
|
||||
message?: TestMessage;
|
||||
|
||||
err_msg?: string;
|
||||
|
||||
|};
|
||||
const serializeToBase64 = (byteArray: Uint8Array): string => base64.fromByteArray(byteArray)
|
||||
const deserializeFromBase64 = (base64Encoded: string): Uint8Array => new Uint8Array(base64.toByteArray(base64Encoded))
|
||||
|
||||
|
||||
|
||||
function serialize_test_TestNoStreamRequest(arg: TestNoStreamRequest) {
|
||||
if (!(arg instanceof pbFile.TestNoStreamRequest)) {
|
||||
function serialize_test_TestNoStreamRequest(arg : TestNoStreamRequest): string {
|
||||
if (!(arg instanceof test_pb.TestNoStreamRequest)) {
|
||||
throw new Error('Expected argument of type TestNoStreamRequest')
|
||||
}
|
||||
return new Buffer(arg.serializeBinary())
|
||||
return serializeToBase64(arg.serializeBinary())
|
||||
}
|
||||
|
||||
function deserialize_test_TestNoStreamRequest(buffer_arg: Array<number>) {
|
||||
return pbFile.TestNoStreamRequest.deserializeBinary(new Uint8Array(buffer_arg))
|
||||
function deserialize_test_TestNoStreamRequest(base64Encoded: string): TestNoStreamRequest {
|
||||
return test_pb.TestNoStreamRequest.deserializeBinary(deserializeFromBase64(base64Encoded))
|
||||
}
|
||||
|
||||
function serialize_test_TestNoStreamReply(arg: TestNoStreamReply) {
|
||||
if (!(arg instanceof pbFile.TestNoStreamReply)) {
|
||||
function serialize_test_TestNoStreamReply(arg : TestNoStreamReply): string {
|
||||
if (!(arg instanceof test_pb.TestNoStreamReply)) {
|
||||
throw new Error('Expected argument of type TestNoStreamReply')
|
||||
}
|
||||
return new Buffer(arg.serializeBinary())
|
||||
return serializeToBase64(arg.serializeBinary())
|
||||
}
|
||||
|
||||
function deserialize_test_TestNoStreamReply(buffer_arg: Array<number>) {
|
||||
return pbFile.TestNoStreamReply.deserializeBinary(new Uint8Array(buffer_arg))
|
||||
function deserialize_test_TestNoStreamReply(base64Encoded: string): TestNoStreamReply {
|
||||
return test_pb.TestNoStreamReply.deserializeBinary(deserializeFromBase64(base64Encoded))
|
||||
}
|
||||
|
||||
function serialize_test_TestStreamRequestRequest(arg: TestStreamRequestRequest) {
|
||||
if (!(arg instanceof pbFile.TestStreamRequestRequest)) {
|
||||
|
||||
function serialize_test_TestStreamRequestRequest(arg : TestStreamRequestRequest): string {
|
||||
if (!(arg instanceof test_pb.TestStreamRequestRequest)) {
|
||||
throw new Error('Expected argument of type TestStreamRequestRequest')
|
||||
}
|
||||
return new Buffer(arg.serializeBinary())
|
||||
return serializeToBase64(arg.serializeBinary())
|
||||
}
|
||||
|
||||
function deserialize_test_TestStreamRequestRequest(buffer_arg: Array<number>) {
|
||||
return pbFile.TestStreamRequestRequest.deserializeBinary(new Uint8Array(buffer_arg))
|
||||
function deserialize_test_TestStreamRequestRequest(base64Encoded: string): TestStreamRequestRequest {
|
||||
return test_pb.TestStreamRequestRequest.deserializeBinary(deserializeFromBase64(base64Encoded))
|
||||
}
|
||||
|
||||
function serialize_test_TestStreamRequestReply(arg: TestStreamRequestReply) {
|
||||
if (!(arg instanceof pbFile.TestStreamRequestReply)) {
|
||||
function serialize_test_TestStreamRequestReply(arg : TestStreamRequestReply): string {
|
||||
if (!(arg instanceof test_pb.TestStreamRequestReply)) {
|
||||
throw new Error('Expected argument of type TestStreamRequestReply')
|
||||
}
|
||||
return new Buffer(arg.serializeBinary())
|
||||
return serializeToBase64(arg.serializeBinary())
|
||||
}
|
||||
|
||||
function deserialize_test_TestStreamRequestReply(buffer_arg: Array<number>) {
|
||||
return pbFile.TestStreamRequestReply.deserializeBinary(new Uint8Array(buffer_arg))
|
||||
function deserialize_test_TestStreamRequestReply(base64Encoded: string): TestStreamRequestReply {
|
||||
return test_pb.TestStreamRequestReply.deserializeBinary(deserializeFromBase64(base64Encoded))
|
||||
}
|
||||
|
||||
function serialize_test_TestStreamReplyRequest(arg: TestStreamReplyRequest) {
|
||||
if (!(arg instanceof pbFile.TestStreamReplyRequest)) {
|
||||
|
||||
function serialize_test_TestStreamReplyRequest(arg : TestStreamReplyRequest): string {
|
||||
if (!(arg instanceof test_pb.TestStreamReplyRequest)) {
|
||||
throw new Error('Expected argument of type TestStreamReplyRequest')
|
||||
}
|
||||
return new Buffer(arg.serializeBinary())
|
||||
return serializeToBase64(arg.serializeBinary())
|
||||
}
|
||||
|
||||
function deserialize_test_TestStreamReplyRequest(buffer_arg: Array<number>) {
|
||||
return pbFile.TestStreamReplyRequest.deserializeBinary(new Uint8Array(buffer_arg))
|
||||
function deserialize_test_TestStreamReplyRequest(base64Encoded: string): TestStreamReplyRequest {
|
||||
return test_pb.TestStreamReplyRequest.deserializeBinary(deserializeFromBase64(base64Encoded))
|
||||
}
|
||||
|
||||
function serialize_test_TestStreamReplyReply(arg: TestStreamReplyReply) {
|
||||
if (!(arg instanceof pbFile.TestStreamReplyReply)) {
|
||||
function serialize_test_TestStreamReplyReply(arg : TestStreamReplyReply): string {
|
||||
if (!(arg instanceof test_pb.TestStreamReplyReply)) {
|
||||
throw new Error('Expected argument of type TestStreamReplyReply')
|
||||
}
|
||||
return new Buffer(arg.serializeBinary())
|
||||
return serializeToBase64(arg.serializeBinary())
|
||||
}
|
||||
|
||||
function deserialize_test_TestStreamReplyReply(buffer_arg: Array<number>) {
|
||||
return pbFile.TestStreamReplyReply.deserializeBinary(new Uint8Array(buffer_arg))
|
||||
function deserialize_test_TestStreamReplyReply(base64Encoded: string): TestStreamReplyReply {
|
||||
return test_pb.TestStreamReplyReply.deserializeBinary(deserializeFromBase64(base64Encoded))
|
||||
}
|
||||
|
||||
function serialize_test_TestStreamBothRequest(arg: TestStreamBothRequest) {
|
||||
if (!(arg instanceof pbFile.TestStreamBothRequest)) {
|
||||
|
||||
function serialize_test_TestStreamBothRequest(arg : TestStreamBothRequest): string {
|
||||
if (!(arg instanceof test_pb.TestStreamBothRequest)) {
|
||||
throw new Error('Expected argument of type TestStreamBothRequest')
|
||||
}
|
||||
return new Buffer(arg.serializeBinary())
|
||||
return serializeToBase64(arg.serializeBinary())
|
||||
}
|
||||
|
||||
function deserialize_test_TestStreamBothRequest(buffer_arg: Array<number>) {
|
||||
return pbFile.TestStreamBothRequest.deserializeBinary(new Uint8Array(buffer_arg))
|
||||
function deserialize_test_TestStreamBothRequest(base64Encoded: string): TestStreamBothRequest {
|
||||
return test_pb.TestStreamBothRequest.deserializeBinary(deserializeFromBase64(base64Encoded))
|
||||
}
|
||||
|
||||
function serialize_test_TestStreamBothReply(arg: TestStreamBothReply) {
|
||||
if (!(arg instanceof pbFile.TestStreamBothReply)) {
|
||||
function serialize_test_TestStreamBothReply(arg : TestStreamBothReply): string {
|
||||
if (!(arg instanceof test_pb.TestStreamBothReply)) {
|
||||
throw new Error('Expected argument of type TestStreamBothReply')
|
||||
}
|
||||
return new Buffer(arg.serializeBinary())
|
||||
return serializeToBase64(arg.serializeBinary())
|
||||
}
|
||||
|
||||
function deserialize_test_TestStreamBothReply(buffer_arg: Array<number>) {
|
||||
return pbFile.TestStreamBothReply.deserializeBinary(new Uint8Array(buffer_arg))
|
||||
function deserialize_test_TestStreamBothReply(base64Encoded: string): TestStreamBothReply {
|
||||
return test_pb.TestStreamBothReply.deserializeBinary(deserializeFromBase64(base64Encoded))
|
||||
}
|
||||
|
||||
|
||||
export const TestServiceService = {
|
||||
export default {
|
||||
|
||||
testNoStream: {
|
||||
path: '/test.TestService/TestNoStream',
|
||||
requestStream: false,
|
||||
responseStream: false,
|
||||
requestType: pbFile.TestNoStreamRequest,
|
||||
responseType: pbFile.TestNoStreamReply,
|
||||
requestSerialize: serialize_test_TestNoStreamRequest,
|
||||
requestDeserialize: deserialize_test_TestNoStreamRequest,
|
||||
responseSerialize: serialize_test_TestNoStreamReply,
|
||||
responseDeserialize: deserialize_test_TestNoStreamReply,
|
||||
},
|
||||
testStreamRequest: {
|
||||
path: '/test.TestService/TestStreamRequest',
|
||||
requestStream: true,
|
||||
responseStream: false,
|
||||
requestType: pbFile.TestStreamRequestRequest,
|
||||
responseType: pbFile.TestStreamRequestReply,
|
||||
requestSerialize: serialize_test_TestStreamRequestRequest,
|
||||
requestDeserialize: deserialize_test_TestStreamRequestRequest,
|
||||
responseSerialize: serialize_test_TestStreamRequestReply,
|
||||
responseDeserialize: deserialize_test_TestStreamRequestReply,
|
||||
},
|
||||
testStreamReply: {
|
||||
path: '/test.TestService/TestStreamReply',
|
||||
requestStream: false,
|
||||
responseStream: true,
|
||||
requestType: pbFile.TestStreamReplyRequest,
|
||||
responseType: pbFile.TestStreamReplyReply,
|
||||
requestSerialize: serialize_test_TestStreamReplyRequest,
|
||||
requestDeserialize: deserialize_test_TestStreamReplyRequest,
|
||||
responseSerialize: serialize_test_TestStreamReplyReply,
|
||||
responseDeserialize: deserialize_test_TestStreamReplyReply,
|
||||
},
|
||||
testStreamBoth: {
|
||||
path: '/test.TestService/TestStreamBoth',
|
||||
requestStream: true,
|
||||
responseStream: true,
|
||||
requestType: pbFile.TestStreamBothRequest,
|
||||
responseType: pbFile.TestStreamBothReply,
|
||||
requestSerialize: serialize_test_TestStreamBothRequest,
|
||||
requestDeserialize: deserialize_test_TestStreamBothRequest,
|
||||
responseSerialize: serialize_test_TestStreamBothReply,
|
||||
responseDeserialize: deserialize_test_TestStreamBothReply,
|
||||
},
|
||||
TestService: {
|
||||
|
||||
testNoStream: {
|
||||
path: '/test.TestService/TestNoStream',
|
||||
requestStream: false,
|
||||
responseStream: false,
|
||||
requestType: test_pb.TestNoStreamRequest,
|
||||
responseType: test_pb.TestNoStreamReply,
|
||||
requestSerialize: serialize_test_TestNoStreamRequest,
|
||||
requestDeserialize: deserialize_test_TestNoStreamRequest,
|
||||
responseSerialize: serialize_test_TestNoStreamReply,
|
||||
responseDeserialize: deserialize_test_TestNoStreamReply,
|
||||
},
|
||||
testStreamRequest: {
|
||||
path: '/test.TestService/TestStreamRequest',
|
||||
requestStream: true,
|
||||
responseStream: false,
|
||||
requestType: test_pb.TestStreamRequestRequest,
|
||||
responseType: test_pb.TestStreamRequestReply,
|
||||
requestSerialize: serialize_test_TestStreamRequestRequest,
|
||||
requestDeserialize: deserialize_test_TestStreamRequestRequest,
|
||||
responseSerialize: serialize_test_TestStreamRequestReply,
|
||||
responseDeserialize: deserialize_test_TestStreamRequestReply,
|
||||
},
|
||||
testStreamReply: {
|
||||
path: '/test.TestService/TestStreamReply',
|
||||
requestStream: false,
|
||||
responseStream: true,
|
||||
requestType: test_pb.TestStreamReplyRequest,
|
||||
responseType: test_pb.TestStreamReplyReply,
|
||||
requestSerialize: serialize_test_TestStreamReplyRequest,
|
||||
requestDeserialize: deserialize_test_TestStreamReplyRequest,
|
||||
responseSerialize: serialize_test_TestStreamReplyReply,
|
||||
responseDeserialize: deserialize_test_TestStreamReplyReply,
|
||||
},
|
||||
testStreamBoth: {
|
||||
path: '/test.TestService/TestStreamBoth',
|
||||
requestStream: true,
|
||||
responseStream: true,
|
||||
requestType: test_pb.TestStreamBothRequest,
|
||||
responseType: test_pb.TestStreamBothReply,
|
||||
requestSerialize: serialize_test_TestStreamBothRequest,
|
||||
requestDeserialize: deserialize_test_TestStreamBothRequest,
|
||||
responseSerialize: serialize_test_TestStreamBothReply,
|
||||
responseDeserialize: deserialize_test_TestStreamBothReply,
|
||||
},
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
export const TestServiceClient = grpc.makeGenericClientConstructor(TestServiceService)
|
||||
|
@ -1,80 +1,110 @@
|
||||
// @flow
|
||||
// GENERATED CODE -- DO NOT EDIT!
|
||||
{{$Package:=.File.Package}}
|
||||
import grpc from 'grpc'
|
||||
import pbFile from './pbFile.js'
|
||||
|
||||
{{- $Package:=.File.Package}}
|
||||
|
||||
import base64 from 'base64-js'
|
||||
import {{$Package}}_pb from './{{$Package}}_pb'
|
||||
|
||||
{{- range .File.Dependency}}
|
||||
import {{. | replace "/" "_" | trimSuffix ".proto" }}_pb from '../{{. | trimSuffix ".proto" }}_pb'
|
||||
{{- end}}
|
||||
|
||||
{{- define "fieldMethods"}}
|
||||
{{- if isFieldRepeated .}}
|
||||
get{{.Name | camelCase}}List?: () => {{. | jsType}};
|
||||
set{{.Name | camelCase}}List?: ({{.Name}}: {{. | jsType}}) => void;
|
||||
add{{.Name | camelCase}}?: ({{.Name}}: {{. | jsType | trimPrefix "Array<" | trimSuffix ">"}}) => void;
|
||||
clear{{.Name | camelCase}}List?: () => void;
|
||||
{{- else}}
|
||||
get{{.Name | camelCase}}?: () => {{. | jsType}};
|
||||
set{{.Name | camelCase}}?: ({{.Name}}: {{. | jsType}}) => void;
|
||||
|
||||
{{- if isFieldMessage .}}
|
||||
clear{{.Name | camelCase}}?: () => void;
|
||||
has{{.Name | camelCase}}?: () => boolean;
|
||||
{{- end}}
|
||||
{{- end}}
|
||||
{{- end}}
|
||||
|
||||
{{range .File.EnumType}}
|
||||
export type {{.Name}} = {|
|
||||
{{range .Value}}
|
||||
{{- range .Value}}
|
||||
{{.Name}}?: {{.Number}};
|
||||
{{end}}
|
||||
{{- end}}
|
||||
|};
|
||||
{{end}}
|
||||
{{- end}}
|
||||
|
||||
{{- range .File.MessageType}}
|
||||
{{- $MessageType := .Name}}
|
||||
|
||||
{{range .File.MessageType}}
|
||||
{{$MessageType := .Name}}
|
||||
{{range .EnumType}}
|
||||
export type {{$MessageType}}${{.Name}} = {|
|
||||
{{range .Value}}
|
||||
{{- range .Value}}
|
||||
{{.Name}}?: {{.Number}};
|
||||
{{end}}
|
||||
{{- end}}
|
||||
|};
|
||||
{{end}}
|
||||
{{- end}}
|
||||
|
||||
{{range .NestedType}}
|
||||
export type {{$MessageType}}${{.Name}} = {|
|
||||
{{range .Field}}
|
||||
{{.Name}}?: {{. | jsType}};
|
||||
{{end}}
|
||||
|};
|
||||
{{end}}
|
||||
export type {{$MessageType}}${{.Name}} = {
|
||||
{{- range .Field}}
|
||||
{{- template "fieldMethods" .}}
|
||||
{{- end}}
|
||||
};
|
||||
{{- end}}
|
||||
|
||||
export type {{.Name}} = {|
|
||||
{{range .Field}}
|
||||
{{.Name}}?: {{. | jsType}};
|
||||
{{end}}
|
||||
|};
|
||||
{{end}}
|
||||
export type {{.Name}} = {
|
||||
{{- range .Field}}
|
||||
{{- template "fieldMethods" .}}
|
||||
{{- end}}
|
||||
};
|
||||
|
||||
{{- end}}
|
||||
|
||||
const serializeToBase64 = (byteArray: Uint8Array): string => base64.fromByteArray(byteArray)
|
||||
const deserializeFromBase64 = (base64Encoded: string): Uint8Array => new Uint8Array(base64.toByteArray(base64Encoded))
|
||||
|
||||
{{range .File.Service}}{{range .Method}}
|
||||
function serialize_{{$Package}}_{{.InputType | shortType}}(arg: {{.InputType | shortType}}) {
|
||||
if (!(arg instanceof pbFile.{{.InputType | shortType}})) {
|
||||
function serialize_{{$Package}}_{{.InputType | shortType}}(arg : {{.InputType | shortType}}): string {
|
||||
if (!(arg instanceof {{$Package}}_pb.{{.InputType | shortType}})) {
|
||||
throw new Error('Expected argument of type {{.InputType | shortType}}')
|
||||
}
|
||||
return new Buffer(arg.serializeBinary())
|
||||
return serializeToBase64(arg.serializeBinary())
|
||||
}
|
||||
|
||||
function deserialize_{{$Package}}_{{.InputType | shortType}}(buffer_arg: Array<number>) {
|
||||
return pbFile.{{.InputType | shortType}}.deserializeBinary(new Uint8Array(buffer_arg))
|
||||
function deserialize_{{$Package}}_{{.InputType | shortType}}(base64Encoded: string): {{.InputType | shortType}} {
|
||||
return {{$Package}}_pb.{{.InputType | shortType}}.deserializeBinary(deserializeFromBase64(base64Encoded))
|
||||
}
|
||||
|
||||
function serialize_{{$Package}}_{{.OutputType | shortType}}(arg: {{.OutputType | shortType}}) {
|
||||
if (!(arg instanceof pbFile.{{.OutputType | shortType}})) {
|
||||
function serialize_{{$Package}}_{{.OutputType | shortType}}(arg : {{.OutputType | shortType}}): string {
|
||||
if (!(arg instanceof {{$Package}}_pb.{{.OutputType | shortType}})) {
|
||||
throw new Error('Expected argument of type {{.OutputType | shortType}}')
|
||||
}
|
||||
return new Buffer(arg.serializeBinary())
|
||||
return serializeToBase64(arg.serializeBinary())
|
||||
}
|
||||
|
||||
function deserialize_{{$Package}}_{{.OutputType | shortType}}(buffer_arg: Array<number>) {
|
||||
return pbFile.{{.OutputType | shortType}}.deserializeBinary(new Uint8Array(buffer_arg))
|
||||
function deserialize_{{$Package}}_{{.OutputType | shortType}}(base64Encoded: string): {{.OutputType | shortType}} {
|
||||
return {{$Package}}_pb.{{.OutputType | shortType}}.deserializeBinary(deserializeFromBase64(base64Encoded))
|
||||
}
|
||||
|
||||
{{end}}{{end}}
|
||||
{{range .File.Service}}
|
||||
export const {{.Name}}Service = {
|
||||
export default {
|
||||
{{range .File.Service}}
|
||||
{{.Name}}: {
|
||||
{{$serviceName:=.Name}}
|
||||
{{range .Method}}{{.Name | lowerCamelCase}}: {
|
||||
path: '/{{$Package}}.{{$serviceName}}/{{.Name}}',
|
||||
requestStream: {{.ClientStreaming | default "false"}},
|
||||
responseStream: {{.ServerStreaming | default "false"}},
|
||||
requestType: pbFile.{{.InputType | shortType}},
|
||||
responseType: pbFile.{{.OutputType | shortType}},
|
||||
requestSerialize: serialize_{{$Package}}_{{.InputType | shortType}},
|
||||
requestDeserialize: deserialize_{{$Package}}_{{.InputType | shortType}},
|
||||
responseSerialize: serialize_{{$Package}}_{{.OutputType | shortType}},
|
||||
responseDeserialize: deserialize_{{$Package}}_{{.OutputType | shortType}},
|
||||
},
|
||||
{{range .Method}}{{.Name | lowerCamelCase}}: {
|
||||
path: '/{{$Package}}.{{$serviceName}}/{{.Name}}',
|
||||
requestStream: {{.ClientStreaming | default "false"}},
|
||||
responseStream: {{.ServerStreaming | default "false"}},
|
||||
requestType: {{$Package}}_pb.{{.InputType | shortType}},
|
||||
responseType: {{$Package}}_pb.{{.OutputType | shortType}},
|
||||
requestSerialize: serialize_{{$Package}}_{{.InputType | shortType}},
|
||||
requestDeserialize: deserialize_{{$Package}}_{{.InputType | shortType}},
|
||||
responseSerialize: serialize_{{$Package}}_{{.OutputType | shortType}},
|
||||
responseDeserialize: deserialize_{{$Package}}_{{.OutputType | shortType}},
|
||||
},
|
||||
{{end}}
|
||||
}
|
||||
{{end}}
|
||||
}
|
||||
|
||||
export const {{.Name}}Client = grpc.makeGenericClientConstructor({{.Name}}Service){{end}}
|
||||
|
@ -57,12 +57,10 @@ var ProtoHelpersFuncMap = template.FuncMap{
|
||||
|
||||
return strings.ToLower(s[:1]) + s[1:]
|
||||
},
|
||||
"snakeCase": func(s string) string {
|
||||
return xstrings.ToSnakeCase(s)
|
||||
},
|
||||
"kebabCase": func(s string) string {
|
||||
return strings.Replace(xstrings.ToSnakeCase(s), "_", "-", -1)
|
||||
},
|
||||
"snakeCase": xstrings.ToSnakeCase,
|
||||
"getMessageType": getMessageType,
|
||||
"isFieldMessage": isFieldMessage,
|
||||
"isFieldRepeated": isFieldRepeated,
|
||||
@ -167,7 +165,7 @@ func jsType(f *descriptor.FieldDescriptorProto) string {
|
||||
case descriptor.FieldDescriptorProto_TYPE_BOOL:
|
||||
return fmt.Sprintf(template, "boolean")
|
||||
case descriptor.FieldDescriptorProto_TYPE_BYTES:
|
||||
return fmt.Sprintf(template, "Array<number>")
|
||||
return fmt.Sprintf(template, "Uint8Array")
|
||||
case descriptor.FieldDescriptorProto_TYPE_STRING:
|
||||
return fmt.Sprintf(template, "string")
|
||||
default:
|
||||
|
Loading…
Reference in New Issue
Block a user