Class GrpcNameResolverProvider

  • All Implemented Interfaces:
    io.micronaut.context.LifeCycle<GrpcNameResolverProvider>, java.io.Closeable, java.lang.AutoCloseable

    @Singleton
    @Requires(beans=io.micronaut.discovery.DiscoveryClient.class) @Requires(property="grpc.client.discovery.enabled",value="true",defaultValue="false")
    public class GrpcNameResolverProvider
    extends io.grpc.NameResolverProvider
    implements io.micronaut.context.LifeCycle<GrpcNameResolverProvider>
    Implementation of NameResolverProvider that allows using Micronaut's DiscoveryClient to perform service discovery.
    Since:
    1.0
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String ENABLED  
      static int PRIORITY  
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected GrpcNameResolverProvider​(io.micronaut.discovery.DiscoveryClient discoveryClient, java.util.List<io.micronaut.discovery.ServiceInstanceList> serviceInstanceLists)
      Default constructor.
    • Constructor Detail

      • GrpcNameResolverProvider

        protected GrpcNameResolverProvider​(io.micronaut.discovery.DiscoveryClient discoveryClient,
                                           java.util.List<io.micronaut.discovery.ServiceInstanceList> serviceInstanceLists)
        Default constructor.
        Parameters:
        discoveryClient - The discovery client
        serviceInstanceLists - The server instance list
    • Method Detail

      • isAvailable

        protected boolean isAvailable()
        Specified by:
        isAvailable in class io.grpc.NameResolverProvider
      • priority

        protected int priority()
        Specified by:
        priority in class io.grpc.NameResolverProvider
      • newNameResolver

        public io.grpc.NameResolver newNameResolver​(java.net.URI targetUri,
                                                    io.grpc.NameResolver.Args args)
        Specified by:
        newNameResolver in class io.grpc.NameResolver.Factory
      • getDefaultScheme

        public java.lang.String getDefaultScheme()
        Specified by:
        getDefaultScheme in class io.grpc.NameResolver.Factory
      • isRunning

        public boolean isRunning()
        Specified by:
        isRunning in interface io.micronaut.context.LifeCycle<GrpcNameResolverProvider>