Bump flatbuffers to v24.3.25 version (#6968)

This commit is contained in:
Siarhei Fedartsou
2024-07-10 20:44:36 +02:00
committed by GitHub
parent 7436835244
commit 825132eec7
737 changed files with 50923 additions and 99849 deletions
@@ -0,0 +1,34 @@
import * as grpc from '@grpc/grpc-js';
import * as flatbuffers from 'flatbuffers';
import { HelloReply } from './models/hello-reply';
import { HelloRequest } from './models/hello-request';
import { GreeterClient } from './greeter_grpc';
async function main(PORT: Number, name: string) {
const client = new GreeterClient(`localhost:${PORT}`, grpc.credentials.createInsecure());
const builder = new flatbuffers.Builder();
const offset = builder.createString(name);
const root = HelloRequest.createHelloRequest(builder, offset);
builder.finish(root);
const buffer = HelloRequest.getRootAsHelloRequest(new flatbuffers.ByteBuffer(builder.asUint8Array()));
client.SayHello(buffer, (err, response) => {
console.log(response.message());
});
const data = client.SayManyHellos(buffer, null);
data.on('data', (data) => {
console.log(data.message());
});
}
const args = process.argv.slice(2)
const PORT = Number(args[0]);
const name: string = args[1] ?? "flatbuffers";
if (PORT) {
main(PORT, name);
} else {
throw new Error("Requires a valid port number.")
}
@@ -0,0 +1,5 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
export * as models from './models.js';
@@ -0,0 +1,4 @@
// automatically generated by the FlatBuffers compiler, do not modify
export { HelloReply } from './models/hello-reply.js';
export { HelloRequest } from './models/hello-request.js';
@@ -0,0 +1,56 @@
// Generated GRPC code for FlatBuffers TS *** DO NOT EDIT ***
import * as flatbuffers from 'flatbuffers';
import { HelloReply as models_HelloReply } from './models/hello-reply';
import { HelloRequest as models_HelloRequest } from './models/hello-request';
import * as grpc from '@grpc/grpc-js';
interface IGreeterService extends grpc.ServiceDefinition<grpc.UntypedServiceImplementation> {
SayHello: IGreeterService_ISayHello;
SayManyHellos: IGreeterService_ISayManyHellos;
}
interface IGreeterService_ISayHello extends grpc.MethodDefinition<models_HelloRequest, models_HelloReply> {
path: string; // /models.Greeter/SayHello
requestStream: boolean; // false
responseStream: boolean; // false
requestSerialize: grpc.serialize<models_HelloRequest>;
requestDeserialize: grpc.deserialize<models_HelloRequest>;
responseSerialize: grpc.serialize<models_HelloReply>;
responseDeserialize: grpc.deserialize<models_HelloReply>;
}
interface IGreeterService_ISayManyHellos extends grpc.MethodDefinition<models_HelloRequest, models_HelloReply> {
path: string; // /models.Greeter/SayManyHellos
requestStream: boolean; // false
responseStream: boolean; // true
requestSerialize: grpc.serialize<models_HelloRequest>;
requestDeserialize: grpc.deserialize<models_HelloRequest>;
responseSerialize: grpc.serialize<models_HelloReply>;
responseDeserialize: grpc.deserialize<models_HelloReply>;
}
export const GreeterService: IGreeterService;
export interface IGreeterServer extends grpc.UntypedServiceImplementation {
SayHello: grpc.handleUnaryCall<models_HelloRequest, models_HelloReply>;
SayManyHellos: grpc.handleServerStreamingCall<models_HelloRequest, models_HelloReply>;
}
export interface IGreeterClient {
SayHello(request: models_HelloRequest, callback: (error: grpc.ServiceError | null, response: models_HelloReply) => void): grpc.ClientUnaryCall;
SayHello(request: models_HelloRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: models_HelloReply) => void): grpc.ClientUnaryCall;
SayHello(request: models_HelloRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: models_HelloReply) => void): grpc.ClientUnaryCall;
SayManyHellos(request: models_HelloRequest, metadata: grpc.Metadata): grpc.ClientReadableStream<models_HelloReply>;
SayManyHellos(request: models_HelloRequest, options: Partial<grpc.CallOptions>): grpc.ClientReadableStream<models_HelloReply>;
}
export class GreeterClient extends grpc.Client implements IGreeterClient {
constructor(address: string, credentials: grpc.ChannelCredentials, options?: object);
public SayHello(request: models_HelloRequest, callback: (error: grpc.ServiceError | null, response: models_HelloReply) => void): grpc.ClientUnaryCall;
public SayHello(request: models_HelloRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: models_HelloReply) => void): grpc.ClientUnaryCall;
public SayHello(request: models_HelloRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: models_HelloReply) => void): grpc.ClientUnaryCall;
public SayManyHellos(request: models_HelloRequest, metadata: grpc.Metadata): grpc.ClientReadableStream<models_HelloReply>;
public SayManyHellos(request: models_HelloRequest, options: Partial<grpc.CallOptions>): grpc.ClientReadableStream<models_HelloReply>;
}
@@ -0,0 +1,56 @@
// Generated GRPC code for FlatBuffers TS *** DO NOT EDIT ***
import * as flatbuffers from 'flatbuffers';
import { HelloReply as models_HelloReply } from './models/hello-reply';
import { HelloRequest as models_HelloRequest } from './models/hello-request';
var grpc = require('@grpc/grpc-js');
function serialize_models_HelloReply(buffer_args) {
if (!(buffer_args instanceof models_HelloReply)) {
throw new Error('Expected argument of type HelloReply');
}
return Buffer.from(buffer_args.serialize());
}
function deserialize_models_HelloReply(buffer) {
return models_HelloReply.getRootAsHelloReply(new flatbuffers.ByteBuffer(buffer))
}
function serialize_models_HelloRequest(buffer_args) {
if (!(buffer_args instanceof models_HelloRequest)) {
throw new Error('Expected argument of type HelloRequest');
}
return Buffer.from(buffer_args.serialize());
}
function deserialize_models_HelloRequest(buffer) {
return models_HelloRequest.getRootAsHelloRequest(new flatbuffers.ByteBuffer(buffer))
}
var GreeterService = exports.GreeterService = {
SayHello: {
path: '/models.Greeter/SayHello',
requestStream: false,
responseStream: false,
requestType: flatbuffers.ByteBuffer,
responseType: models_HelloReply,
requestSerialize: serialize_models_HelloRequest,
requestDeserialize: deserialize_models_HelloRequest,
responseSerialize: serialize_models_HelloReply,
responseDeserialize: deserialize_models_HelloReply,
},
SayManyHellos: {
path: '/models.Greeter/SayManyHellos',
requestStream: false,
responseStream: true,
requestType: flatbuffers.ByteBuffer,
responseType: models_HelloReply,
requestSerialize: serialize_models_HelloRequest,
requestDeserialize: deserialize_models_HelloRequest,
responseSerialize: serialize_models_HelloReply,
responseDeserialize: deserialize_models_HelloReply,
},
};
exports.GreeterClient = grpc.makeGenericClientConstructor(GreeterService);
@@ -0,0 +1,6 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
export { HelloReply } from './models/hello-reply.js';
export { HelloRequest } from './models/hello-request.js';
@@ -0,0 +1,60 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from 'flatbuffers';
export class HelloReply {
bb: flatbuffers.ByteBuffer|null = null;
bb_pos = 0;
__init(i:number, bb:flatbuffers.ByteBuffer):HelloReply {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsHelloReply(bb:flatbuffers.ByteBuffer, obj?:HelloReply):HelloReply {
return (obj || new HelloReply()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
static getSizePrefixedRootAsHelloReply(bb:flatbuffers.ByteBuffer, obj?:HelloReply):HelloReply {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new HelloReply()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
message():string|null
message(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
message(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
static startHelloReply(builder:flatbuffers.Builder) {
builder.startObject(1);
}
static addMessage(builder:flatbuffers.Builder, messageOffset:flatbuffers.Offset) {
builder.addFieldOffset(0, messageOffset, 0);
}
static endHelloReply(builder:flatbuffers.Builder):flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createHelloReply(builder:flatbuffers.Builder, messageOffset:flatbuffers.Offset):flatbuffers.Offset {
HelloReply.startHelloReply(builder);
HelloReply.addMessage(builder, messageOffset);
return HelloReply.endHelloReply(builder);
}
serialize():Uint8Array {
return this.bb!.bytes();
}
static deserialize(buffer: Uint8Array):HelloReply {
return HelloReply.getRootAsHelloReply(new flatbuffers.ByteBuffer(buffer))
}
}
@@ -0,0 +1,60 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from 'flatbuffers';
export class HelloRequest {
bb: flatbuffers.ByteBuffer|null = null;
bb_pos = 0;
__init(i:number, bb:flatbuffers.ByteBuffer):HelloRequest {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsHelloRequest(bb:flatbuffers.ByteBuffer, obj?:HelloRequest):HelloRequest {
return (obj || new HelloRequest()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
static getSizePrefixedRootAsHelloRequest(bb:flatbuffers.ByteBuffer, obj?:HelloRequest):HelloRequest {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new HelloRequest()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
name():string|null
name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
name(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
static startHelloRequest(builder:flatbuffers.Builder) {
builder.startObject(1);
}
static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) {
builder.addFieldOffset(0, nameOffset, 0);
}
static endHelloRequest(builder:flatbuffers.Builder):flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createHelloRequest(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset):flatbuffers.Offset {
HelloRequest.startHelloRequest(builder);
HelloRequest.addName(builder, nameOffset);
return HelloRequest.endHelloRequest(builder);
}
serialize():Uint8Array {
return this.bb!.bytes();
}
static deserialize(buffer: Uint8Array):HelloRequest {
return HelloRequest.getRootAsHelloRequest(new flatbuffers.ByteBuffer(buffer))
}
}
@@ -0,0 +1,49 @@
import * as grpc from '@grpc/grpc-js';
import * as flatbuffers from 'flatbuffers';
import { HelloReply } from './models/hello-reply';
import { HelloRequest } from './models/hello-request';
import { IGreeterServer, GreeterService } from './greeter_grpc';
const greeter: IGreeterServer = {
SayHello(call: grpc.ServerUnaryCall<HelloRequest, HelloReply>, callback: grpc.sendUnaryData<HelloReply>): void {
console.log(`SayHello ${call.request.name()}`);
const builder = new flatbuffers.Builder();
const offset = builder.createString(`welcome ${call.request.name()}`);
const root = HelloReply.createHelloReply(builder, offset);
builder.finish(root);
callback(null, HelloReply.getRootAsHelloReply(new flatbuffers.ByteBuffer(builder.asUint8Array())));
},
async SayManyHellos(call: grpc.ServerWritableStream<HelloRequest, HelloReply>): Promise<void> {
const name = call.request.name();
console.log(`${call.request.name()} saying hi in different langagues`);
['Hi', 'Hallo', 'Ciao'].forEach(element => {
const builder = new flatbuffers.Builder();
const offset = builder.createString(`${element} ${name}`);
const root = HelloReply.createHelloReply(builder, offset);
builder.finish(root);
call.write(HelloReply.getRootAsHelloReply(new flatbuffers.ByteBuffer(builder.asUint8Array())))
});
call.end();
}
}
function serve(): void {
const PORT = 3000;
const server = new grpc.Server();
server.addService(GreeterService, greeter);
console.log(`Listening on ${PORT}`);
server.bindAsync(
`localhost:${PORT}`,
grpc.ServerCredentials.createInsecure(),
(err: Error | null, port: number) => {
if (err) {
console.error(`Server error: ${err.message}`);
} else {
console.log(`Server bound on port: ${port}`);
server.start();
}
}
);
}
serve();