Skip to content

Commit

Permalink
Merge pull request #8615 from ZanMinKian/feat/support-ncc-when-using-…
Browse files Browse the repository at this point in the history
…grpc

feat(microservices): support ncc when using grpc
  • Loading branch information
kamilmysliwiec committed Nov 17, 2021
2 parents ac70ace + 3d95392 commit beebe16
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 3 deletions.
11 changes: 9 additions & 2 deletions packages/microservices/client/client-grpc.ts
Expand Up @@ -31,7 +31,14 @@ export class ClientGrpcProxy extends ClientProxy implements ClientGrpc {
require('@grpc/grpc-js'),
);

grpcProtoLoaderPackage = loadPackage(protoLoader, ClientGrpcProxy.name);
grpcProtoLoaderPackage = loadPackage(
protoLoader,
ClientGrpcProxy.name,
() =>
protoLoader === GRPC_DEFAULT_PROTO_LOADER
? require('@grpc/proto-loader')
: require(protoLoader),
);
this.grpcClients = this.createClients();
}

Expand Down Expand Up @@ -278,7 +285,7 @@ export class ClientGrpcProxy extends ClientProxy implements ClientGrpc {
const packageDefinition =
this.getOptionsProp(this.options, 'packageDefinition') ||
grpcProtoLoaderPackage.loadSync(file, loader);

const packageObject =
grpcPackage.loadPackageDefinition(packageDefinition);
return packageObject;
Expand Down
9 changes: 8 additions & 1 deletion packages/microservices/server/server-grpc.ts
Expand Up @@ -48,7 +48,14 @@ export class ServerGrpc extends Server implements CustomTransportStrategy {
grpcPackage = this.loadPackage('@grpc/grpc-js', ServerGrpc.name, () =>
require('@grpc/grpc-js'),
);
grpcProtoLoaderPackage = this.loadPackage(protoLoader, ServerGrpc.name);
grpcProtoLoaderPackage = this.loadPackage(
protoLoader,
ServerGrpc.name,
() =>
protoLoader === GRPC_DEFAULT_PROTO_LOADER
? require('@grpc/proto-loader')
: require(protoLoader),
);
}

public async listen(
Expand Down

0 comments on commit beebe16

Please sign in to comment.