java.lang.Object
io.helidon.microprofile.grpc.core.GrpcCdiExtension
All Implemented Interfaces:
Extension

public class GrpcCdiExtension extends Object implements Extension
An extension that processes beans as they are discovered.
  • Constructor Details

    • GrpcCdiExtension

      public GrpcCdiExtension()
  • Method Details

    • beforeBean

      public void beforeBean(@Observes ProcessAnnotatedType<?> event)
      Determine whether a discovered bean has a superclass or implements an interface that is annotated with Grpc.GrpcService and if so then also annotate the bean with the same annotation.

      This is required so that we can support the use-case where an interface has been annotated with Grpc.GrpcService but the implementation class has not but the implementation class is annotated with a bean discovering annotation such as ApplicationScoped. We need to make sure that the gRPC server can locate beans so we add the Grpc.GrpcService from the interface to the bean.

      Parameters:
      event - the ProcessAnnotatedType event