public List getTypeDescribers()

in dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/aot/NacosReflectionTypeDescriberRegistrar.java [88:183]


    public List<TypeDescriber> getTypeDescribers() {
        List<TypeDescriber> typeDescribers = new ArrayList<>();
        Class[] classesWithDeclared = {
            ClientAbilities.class,
            ClientConfigAbility.class,
            AbstractConfigRequest.class,
            ConfigBatchListenRequest.class,
            ConfigListenContext.class,
            ConfigPublishRequest.class,
            ConfigQueryRequest.class,
            ConfigChangeBatchListenResponse.class,
            ConfigContext.class,
            ConfigPublishResponse.class,
            ConfigQueryResponse.class,
            ClientNamingAbility.class,
            Instance.class,
            ServiceInfo.class,
            AbstractNamingRequest.class,
            InstanceRequest.class,
            NotifySubscriberRequest.class,
            ServiceQueryRequest.class,
            SubscribeServiceRequest.class,
            InstanceResponse.class,
            NotifySubscriberResponse.class,
            QueryServiceResponse.class,
            SubscribeServiceResponse.class,
            ClientRemoteAbility.class,
            ConnectionSetupRequest.class,
            HealthCheckRequest.class,
            InternalRequest.class,
            Request.class,
            ServerCheckRequest.class,
            ServerRequest.class,
            HealthCheckResponse.class,
            Response.class,
            ServerCheckResponse.class,
            TlsConfig.class,
            RpcClientTlsConfig.class
        };
        Class[] classesWithMethods = {
            Metadata.class,
            com.alibaba.nacos.api.grpc.auto.Metadata.Builder.class,
            com.alibaba.nacos.api.grpc.auto.Payload.class,
            com.alibaba.nacos.api.grpc.auto.Payload.Builder.class,
            NamingService.class,
            com.alibaba.nacos.api.remote.Payload.class,
            NacosClientAuthServiceImpl.class,
            RamClientAuthServiceImpl.class,
            NacosConfigService.class,
            NacosNamingService.class,
            DefaultPublisher.class,
            Any.class,
            com.alibaba.nacos.shaded.com.google.protobuf.Any.Builder.class,
            ExtensionRegistry.class,
            AbstractByteBufAllocator.class,
            ChannelDuplexHandler.class,
            ChannelInboundHandlerAdapter.class,
            NioSocketChannel.class,
            ByteToMessageDecoder.class,
            Http2ConnectionHandler.class,
            ReferenceCountUtil.class
        };
        Class[] classesWithFields = {PropertyKeyConst.class, AbstractFuture.class, AbstractReferenceCountedByteBuf.class
        };
        Class[] classesWithDefault = {DnsNameResolverProvider.class, PickFirstLoadBalancerProvider.class};
        String[] privateClasses = {
            "com.alibaba.nacos.shaded.com.google.common.util.concurrent.AbstractFuture.Waiter",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.grpc.netty.AbstractNettyHandler",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.grpc.netty.NettyClientHandler",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.grpc.netty.WriteBufferingAndExceptionHandler",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.channel.DefaultChannelPipeline.HeadContext",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.channel.DefaultChannelPipeline.TailContext",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueColdProducerFields",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueConsumerIndexField",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerIndexField",
            "com.alibaba.nacos.shaded.io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerLimitField"
        };
        for (Class className : classesWithDeclared) {
            typeDescribers.add(buildTypeDescriberWithDeclared(className));
        }
        for (Class className : classesWithMethods) {
            typeDescribers.add(buildTypeDescriberWithMethods(className));
        }
        for (Class className : classesWithFields) {
            typeDescribers.add(buildTypeDescriberWithFields(className));
        }
        for (Class className : classesWithDefault) {
            typeDescribers.add(buildTypeDescriberWithDefault(className));
        }
        for (String className : privateClasses) {
            typeDescribers.add(buildTypeDescriberWithDeclared(className));
        }
        return typeDescribers;
    }