diff --git a/infra/expr/type/espresso/src/main/java/org/apache/shardingsphere/infra/expr/espresso/ReflectContext.java b/infra/expr/type/espresso/src/main/java/org/apache/shardingsphere/infra/expr/espresso/ReflectContext.java index 0f93936f703e9c..d9066fd922320f 100644 --- a/infra/expr/type/espresso/src/main/java/org/apache/shardingsphere/infra/expr/espresso/ReflectContext.java +++ b/infra/expr/type/espresso/src/main/java/org/apache/shardingsphere/infra/expr/espresso/ReflectContext.java @@ -31,7 +31,6 @@ public final class ReflectContext implements AutoCloseable { /** * This method is a simulation of the following operation. - * // CHECKSTYLE:OFF *
      * private final Context context = Context.newBuilder("java")
      *             .allowAllAccess(true)
@@ -39,7 +38,6 @@ public final class ReflectContext implements AutoCloseable {
      *             .option("java.Classpath", JAVA_CLASSPATH)
      *             .build();
      * 
- * // CHECKSTYLE:ON * TODO oracle/graal#4555 not yet closed. * Maybe sometimes shardingsphere need `.option("java.Properties.org.graalvm.home", System.getenv("JAVA_HOME")). * diff --git a/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/jni-config.json b/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/jni-config.json new file mode 100644 index 00000000000000..863b197bd9e189 --- /dev/null +++ b/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/jni-config.json @@ -0,0 +1,644 @@ +[ + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.SSL" + }, + "name": "[Ljava.lang.String;" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "[[B" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "[[B" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "[[B" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "[[B" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "[[B" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler$SslEngineType$2" + }, + "name": "[[B" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.SSL" + }, + "name": "[[B" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable" + }, + "name": "[[B" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.udt.DefaultUdtChannelConfig" + }, + "name": "com.barchart.udt.LingerUDT", + "methods": [ + { + "name": "intValue", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.ZstdEncoder" + }, + "name": "com.github.luben.zstd.ZstdCompressCtx", + "fields": [ + { + "name": "nativePtr" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.ChannelException" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.unix.Buffer" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.unix.DatagramSocketAddress", + "methods": [ + { + "name": "", + "parameterTypes": [ + "byte[]", + "int", + "int", + "int", + "io.grpc.netty.shaded.io.netty.channel.unix.DatagramSocketAddress" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.unix.DomainDatagramSocketAddress", + "methods": [ + { + "name": "", + "parameterTypes": [ + "byte[]", + "int", + "io.grpc.netty.shaded.io.netty.channel.unix.DomainDatagramSocketAddress" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.unix.FileDescriptor" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.unix.LimitsStaticallyReferencedJniMethods" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.unix.Socket" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientSessionContext" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslClientSessionCache" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.SSLContext" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslSessionCache", + "methods": [ + { + "name": "getSession", + "parameterTypes": [ + "long", + "byte[]" + ] + }, + { + "name": "sessionCreated", + "parameterTypes": [ + "long", + "long" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslClientContext" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$ExtendedTrustManagerVerifyCallback" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.SSLContext" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslContext$AbstractCertificateVerifier", + "methods": [ + { + "name": "verify", + "parameterTypes": [ + "long", + "byte[][]", + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslServerContext" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$ExtendedTrustManagerVerifyCallback" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslServerContext" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback", + "methods": [ + { + "name": "handle", + "parameterTypes": [ + "long", + "byte[]", + "byte[][]" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.SSLContext" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher", + "methods": [ + { + "name": "match", + "parameterTypes": [ + "long", + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "java.io.IOException" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.AbstractChannel" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "getBoolean", + "parameterTypes": [ + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.udt.DefaultUdtChannelConfig" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "booleanValue", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.udt.nio.NioUdtAcceptorChannel" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "booleanValue", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.udt.nio.NioUdtByteConnectorChannel" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "booleanValue", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.udt.nio.NioUdtMessageConnectorChannel" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "booleanValue", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.udt.nio.NioUdtProvider" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "booleanValue", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.AsciiString" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "getBoolean", + "parameterTypes": [ + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.ResourceLeakDetector" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "getBoolean", + "parameterTypes": [ + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.AbstractEventExecutor" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "getBoolean", + "parameterTypes": [ + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.UnorderedThreadPoolEventExecutor" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "getBoolean", + "parameterTypes": [ + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.SocketUtils$5" + }, + "name": "java.lang.Boolean", + "methods": [ + { + "name": "booleanValue", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.SSLContext" + }, + "name": "java.lang.Exception", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.udt.DefaultUdtChannelConfig" + }, + "name": "java.lang.Integer", + "methods": [ + { + "name": "intValue", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "java.lang.OutOfMemoryError" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "java.lang.RuntimeException" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "java.net.InetSocketAddress", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.String", + "int" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "java.net.PortUnreachableException" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "java.nio.Buffer", + "fields": [ + { + "name": "limit" + }, + { + "name": "position" + } + ], + "methods": [ + { + "name": "limit", + "parameterTypes": [] + }, + { + "name": "position", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "java.nio.DirectByteBuffer" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "java.nio.channels.ClosedChannelException", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "javax.net.ssl.SSLProtocolException", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler$SslEngineType$2" + }, + "name": "javax.net.ssl.SSLProtocolException", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "org.conscrypt.ConscryptEngine", + "methods": [ + { + "name": "clientCertificateRequested", + "parameterTypes": [ + "byte[]", + "int[]", + "byte[][]" + ] + }, + { + "name": "onNewSessionEstablished", + "parameterTypes": [ + "long" + ] + }, + { + "name": "onSSLStateChange", + "parameterTypes": [ + "int", + "int" + ] + }, + { + "name": "serverCertificateRequested", + "parameterTypes": [] + }, + { + "name": "verifyCertificateChain", + "parameterTypes": [ + "byte[][]", + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "org.conscrypt.ConscryptEngine", + "methods": [ + { + "name": "onSSLStateChange", + "parameterTypes": [ + "int", + "int" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler$SslEngineType$2" + }, + "name": "org.conscrypt.ConscryptEngine", + "methods": [ + { + "name": "onNewSessionEstablished", + "parameterTypes": [ + "long" + ] + }, + { + "name": "onSSLStateChange", + "parameterTypes": [ + "int", + "int" + ] + }, + { + "name": "serverCertificateRequested", + "parameterTypes": [] + }, + { + "name": "verifyCertificateChain", + "parameterTypes": [ + "byte[][]", + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider" + }, + "name": "[Lio.netty.resolver.dns.macos.DnsResolver;" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider" + }, + "name": "[Ljava.lang.String;" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider" + }, + "name": "[[B" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.NativeLibraryUtil" + }, + "name": "io.grpc.netty.shaded.io.netty.resolver.dns.macos.DnsResolver", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.String", + "byte[][]", + "int", + "java.lang.String[]", + "java.lang.String", + "int", + "int" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.NativeLibraryUtil" + }, + "name": "io.grpc.netty.shaded.io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider" + } +] diff --git a/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/native-image.properties b/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/native-image.properties new file mode 100644 index 00000000000000..5177b5928d7f65 --- /dev/null +++ b/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/native-image.properties @@ -0,0 +1,20 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +Args= --initialize-at-run-time=io.grpc.netty.shaded.io.netty \ + --initialize-at-build-time=io.grpc.netty.shaded.io.netty.codec.http \ + --initialize-at-build-time=io.grpc.netty.shaded.io.netty.codec.http2 diff --git a/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/reflect-config.json b/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/reflect-config.json new file mode 100644 index 00000000000000..d33a9c3c4b905e --- /dev/null +++ b/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/reflect-config.json @@ -0,0 +1,7355 @@ +[ + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "[B" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.AbstractChannel" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.MultithreadEventLoopGroup" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.DefaultHttp2Headers" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.stomp.DefaultStompHeaders" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.AsciiString" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.ResourceLeakDetector" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.AbstractEventExecutor" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.UnorderedThreadPoolEventExecutor" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.SystemPropertyUtil" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.InternalLoggerFactory" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory$NopInstanceHolder" + }, + "name": "ch.qos.logback.classic.encoder.PatternLayoutEncoder" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.classic.pattern.DateConverter", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.classic.pattern.LevelConverter", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.classic.pattern.LineSeparatorConverter", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.classic.pattern.LoggerConverter", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.classic.pattern.MessageConverter", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.classic.pattern.ThreadConverter", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.AbstractChannel" + }, + "name": "ch.qos.logback.core.ConsoleAppender" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.MultithreadEventLoopGroup" + }, + "name": "ch.qos.logback.core.ConsoleAppender" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder" + }, + "name": "ch.qos.logback.core.ConsoleAppender", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.DefaultHttp2Headers" + }, + "name": "ch.qos.logback.core.ConsoleAppender", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.stomp.DefaultStompHeaders" + }, + "name": "ch.qos.logback.core.ConsoleAppender", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.AsciiString" + }, + "name": "ch.qos.logback.core.ConsoleAppender" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.ResourceLeakDetector" + }, + "name": "ch.qos.logback.core.ConsoleAppender" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.AbstractEventExecutor" + }, + "name": "ch.qos.logback.core.ConsoleAppender", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.UnorderedThreadPoolEventExecutor" + }, + "name": "ch.qos.logback.core.ConsoleAppender", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.SystemPropertyUtil" + }, + "name": "ch.qos.logback.core.ConsoleAppender" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.InternalLoggerFactory" + }, + "name": "ch.qos.logback.core.ConsoleAppender" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.core.ConsoleAppender", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory$NopInstanceHolder" + }, + "name": "ch.qos.logback.core.ConsoleAppender" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.core.OutputStreamAppender", + "methods": [ + { + "name": "setEncoder", + "parameterTypes": [ + "ch.qos.logback.core.encoder.Encoder" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.core.encoder.LayoutWrappingEncoder", + "methods": [ + { + "name": "setParent", + "parameterTypes": [ + "ch.qos.logback.core.Appender" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "ch.qos.logback.core.pattern.PatternLayoutEncoderBase", + "methods": [ + { + "name": "setPattern", + "parameterTypes": [ + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Brotli" + }, + "name": "com.aayushatharva.brotli4j.Brotli4jLoader" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Zstd" + }, + "name": "com.github.luben.zstd.Zstd" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.LzfDecoder" + }, + "name": "com.ning.compress.lzf.impl.UnsafeChunkDecoder", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslEngine" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler$SslEngineType$3" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler$SslTasksRunner" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable" + }, + "name": "com.sun.crypto.provider.AESCipher$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "com.sun.crypto.provider.DHKeyAgreement", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "com.sun.crypto.provider.DHKeyFactory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "com.sun.crypto.provider.DHKeyPairGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "com.sun.crypto.provider.DHKeyPairGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "com.sun.crypto.provider.DHParameters", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "com.sun.crypto.provider.DHParameters", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "com.sun.crypto.provider.DHParameters", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "com.sun.crypto.provider.HmacCore$HmacSHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "com.sun.crypto.provider.HmacCore$HmacSHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "com.sun.crypto.provider.HmacCore$HmacSHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "com.sun.crypto.provider.HmacCore$HmacSHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "com.sun.crypto.provider.HmacCore$HmacSHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.PseudoRandomFunction" + }, + "name": "com.sun.crypto.provider.HmacCore$HmacSHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "com.sun.crypto.provider.HmacCore$HmacSHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.ThreadPerChannelEventLoop" + }, + "name": "com.sun.crypto.provider.HmacSHA1", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1" + }, + "name": "com.sun.crypto.provider.HmacSHA1", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "com.sun.crypto.provider.HmacSHA1", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "com.sun.crypto.provider.HmacSHA1", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "com.sun.crypto.provider.HmacSHA1", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable" + }, + "name": "com.sun.crypto.provider.HmacSHA1", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi" + }, + "name": "com.sun.crypto.provider.PBEKeyFactory$PBEWithMD5AndDES", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "com.sun.crypto.provider.PBEKeyFactory$PBEWithMD5AndDES", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "com.sun.crypto.provider.PBEParameters", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "com.sun.crypto.provider.PBES2Core$HmacSHA256AndAES_256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "com.sun.crypto.provider.PBES2Parameters$General", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "com.sun.crypto.provider.PBES2Parameters$HmacSHA256AndAES_256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1" + }, + "name": "com.sun.crypto.provider.RSACipher", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "com.sun.crypto.provider.RSACipher", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "com.sun.crypto.provider.RSACipher", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "com.sun.crypto.provider.RSACipher", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "com.sun.crypto.provider.TlsKeyMaterialGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1" + }, + "name": "com.sun.crypto.provider.TlsKeyMaterialGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "com.sun.crypto.provider.TlsKeyMaterialGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "com.sun.crypto.provider.TlsKeyMaterialGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "com.sun.crypto.provider.TlsKeyMaterialGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "com.sun.crypto.provider.TlsKeyMaterialGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "com.sun.crypto.provider.TlsMasterSecretGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1" + }, + "name": "com.sun.crypto.provider.TlsMasterSecretGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "com.sun.crypto.provider.TlsMasterSecretGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "com.sun.crypto.provider.TlsMasterSecretGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "com.sun.crypto.provider.TlsMasterSecretGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "com.sun.crypto.provider.TlsMasterSecretGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "com.sun.crypto.provider.TlsPrfGenerator$V12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1" + }, + "name": "com.sun.crypto.provider.TlsPrfGenerator$V12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "com.sun.crypto.provider.TlsPrfGenerator$V12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "com.sun.crypto.provider.TlsPrfGenerator$V12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "com.sun.crypto.provider.TlsPrfGenerator$V12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "com.sun.crypto.provider.TlsPrfGenerator$V12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler$SslTasksRunner" + }, + "name": "com.sun.crypto.provider.TlsPrfGenerator$V12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1" + }, + "name": "com.sun.crypto.provider.TlsRsaPremasterSecretGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "com.sun.crypto.provider.TlsRsaPremasterSecretGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "com.sun.crypto.provider.TlsRsaPremasterSecretGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "com.sun.crypto.provider.TlsRsaPremasterSecretGenerator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.bootstrap.ServerBootstrap$1" + }, + "name": "io.grpc.netty.shaded.io.netty.bootstrap.ServerBootstrap$1", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor" + }, + "name": "io.grpc.netty.shaded.io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.buffer.ByteBufAllocator" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.buffer.ByteBufUtil" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.buffer.Unpooled" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultChannelConfig" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalServerChannel$1" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.sctp.DefaultSctpServerChannelConfig" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.socket.DefaultDatagramChannelConfig" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.udt.DefaultUdtServerChannelConfig" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.ReplayingDecoderByteBuf" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpObjectEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.redis.FixedRedisMessagePool" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.smtp.SmtpRequestEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.PemPrivateKey" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractByteBufAllocator", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.buffer.AbstractReferenceCountedByteBuf" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AbstractReferenceCountedByteBuf", + "fields": [ + { + "name": "refCnt" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.buffer.AdvancedLeakAwareByteBuf" + }, + "name": "io.grpc.netty.shaded.io.netty.buffer.AdvancedLeakAwareByteBuf", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.ChannelDuplexHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.ChannelDuplexHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.ChannelHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.ChannelHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.ChannelHandlerAdapter" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.ChannelHandlerAdapter", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.ChannelInboundHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.ChannelInboundHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.ChannelInboundHandlerAdapter" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.ChannelInboundHandlerAdapter", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.ChannelInitializer" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.ChannelInitializer", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.ChannelOutboundHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.ChannelOutboundHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.ChannelOutboundHandlerAdapter" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.ChannelOutboundHandlerAdapter", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.CombinedChannelDuplexHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.CombinedChannelDuplexHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultChannelPipeline$HeadContext" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.DefaultChannelPipeline$HeadContext", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultChannelPipeline$TailContext" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.DefaultChannelPipeline$TailContext", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.DefaultFileRegion" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.SimpleChannelInboundHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.SimpleChannelInboundHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.SimpleUserEventChannelHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.SimpleUserEventChannelHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.embedded.EmbeddedChannel$2" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.embedded.EmbeddedChannel$2", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.bootstrap.Bootstrap" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollSocketChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.pool.SimpleChannelPool" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.pool.SimpleChannelPool$1" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.pool.SimpleChannelPool$1", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.bootstrap.Bootstrap" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioDatagramChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsAddressResolverGroup" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioDatagramChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolver" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioDatagramChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolverBuilder" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioDatagramChannel", + "queriedMethods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioServerSocketChannel" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioServerSocketChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.proxy.ProxyServer" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioServerSocketChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.bootstrap.Bootstrap" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioSocketChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.proxy.ProxyServer$IntermediaryHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioSocketChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioSocketChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolverBuilder" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioSocketChannel", + "queriedMethods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.bootstrap.Bootstrap" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.socket.oio.OioSocketChannel", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.unix.Unix" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.unix.DatagramSocketAddress" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.unix.Unix" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.unix.DomainDatagramSocketAddress" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.channel.unix.PeerCredentials" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.address.DynamicAddressConnectHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.address.DynamicAddressConnectHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.address.ResolveAddressHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.address.ResolveAddressHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageCodec$1" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageCodec$1", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageCodec$Encoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageCodec$Encoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.DatagramPacketDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.DatagramPacketDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.DatagramPacketEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.DatagramPacketEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.DelimiterBasedFrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.DelimiterBasedFrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.FixedLengthFrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.FixedLengthFrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.LengthFieldBasedFrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.LengthFieldBasedFrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.LengthFieldPrepender" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.LengthFieldPrepender", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.LineBasedFrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.LineBasedFrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.MessageAggregator" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.MessageAggregator", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToByteEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToByteEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToMessageCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToMessageCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToMessageCodec$1" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToMessageCodec$1", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToMessageCodec$2" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToMessageCodec$2", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToMessageDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToMessageDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToMessageEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.MessageToMessageEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.ReplayingDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.ReplayingDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.base64.Base64Decoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.base64.Base64Decoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.base64.Base64Encoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.base64.Base64Encoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.bytes.ByteArrayDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.bytes.ByteArrayDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.bytes.ByteArrayEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.bytes.ByteArrayEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.BrotliDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.BrotliDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.BrotliEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.BrotliEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Bzip2Decoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Bzip2Decoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Bzip2Encoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Bzip2Encoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.FastLzFrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.FastLzFrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.FastLzFrameEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.FastLzFrameEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.JZlibDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.JZlibDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.JZlibEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.JZlibEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.JdkZlibDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.JdkZlibDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.JdkZlibEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.JdkZlibEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Lz4FrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Lz4FrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Lz4FrameEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Lz4FrameEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.LzfDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.LzfDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.LzfEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.LzfEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.LzmaFrameEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.LzmaFrameEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.SnappyFrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.SnappyFrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.SnappyFrameEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.SnappyFrameEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.SnappyFramedDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.SnappyFramedDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.SnappyFramedEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.SnappyFramedEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.ZlibDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.ZlibDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.ZlibEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.ZlibEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.ZstdEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.compression.ZstdEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.dns.DatagramDnsQueryDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.dns.DatagramDnsQueryDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.dns.DatagramDnsQueryEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.dns.DatagramDnsQueryEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.dns.DatagramDnsResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.dns.DatagramDnsResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.dns.DatagramDnsResponseEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.dns.DatagramDnsResponseEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.dns.TcpDnsQueryDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.dns.TcpDnsQueryDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.dns.TcpDnsQueryEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.dns.TcpDnsQueryEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.dns.TcpDnsResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.dns.TcpDnsResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.dns.TcpDnsResponseEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.dns.TcpDnsResponseEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.haproxy.HAProxyMessageDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.haproxy.HAProxyMessageDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.haproxy.HAProxyMessageEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.haproxy.HAProxyMessageEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpClientCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpClientCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpClientCodec$Decoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpClientCodec$Decoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpClientCodec$Encoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpClientCodec$Encoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpClientUpgradeHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpClientUpgradeHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpContentCompressor" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpContentCompressor", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpContentDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpContentDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpContentDecompressor" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpContentDecompressor", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpContentEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpContentEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpObjectAggregator" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpObjectAggregator", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpObjectDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpObjectDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpObjectEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpObjectEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpRequestDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpRequestDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpRequestEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpRequestEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpResponseEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpResponseEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerCodec$HttpServerResponseEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerCodec$HttpServerResponseEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerExpectContinueHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerExpectContinueHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerKeepAliveHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerKeepAliveHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerUpgradeHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.HttpServerUpgradeHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.cors.CorsHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.cors.CorsHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.Utf8FrameValidator" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.Utf8FrameValidator", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket00FrameEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket00FrameEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket07FrameEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket07FrameEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket13FrameEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocket13FrameEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketFrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketFrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketFrameEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketFrameEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$2" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$2", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.WebSocketClientCompressionHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.WebSocketClientCompressionHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.WebSocketServerCompressionHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.extensions.compression.WebSocketServerCompressionHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2ChannelDuplexHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2ChannelDuplexHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2ConnectionHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2ConnectionHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2FrameCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2FrameCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2FrameLogger" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2FrameLogger", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2MultiplexCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2MultiplexCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2MultiplexHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2MultiplexHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http2.InboundHttpToHttp2Adapter" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.http2.InboundHttpToHttp2Adapter", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.json.JsonObjectDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.json.JsonObjectDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.CompatibleMarshallingDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.CompatibleMarshallingDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.CompatibleMarshallingEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.CompatibleMarshallingEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.MarshallingDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.MarshallingDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.MarshallingEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.MarshallingEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.AbstractMemcacheObjectAggregator" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.AbstractMemcacheObjectAggregator", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.AbstractMemcacheObjectDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.AbstractMemcacheObjectDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.AbstractMemcacheObjectEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.AbstractMemcacheObjectEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Encoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Encoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.mqtt.MqttDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.mqtt.MqttDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.mqtt.MqttEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.mqtt.MqttEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufDecoderNano" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufDecoderNano", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufEncoderNano" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufEncoderNano", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufVarint32FrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufVarint32FrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.redis.RedisArrayAggregator" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.redis.RedisArrayAggregator", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.redis.RedisBulkStringAggregator" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.redis.RedisBulkStringAggregator", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.redis.RedisDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.redis.RedisDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.redis.RedisEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.redis.RedisEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspObjectDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspObjectDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspObjectEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspObjectEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspRequestDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspRequestDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspRequestEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspRequestEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspResponseEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.rtsp.RtspResponseEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.sctp.SctpInboundByteStreamHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.sctp.SctpInboundByteStreamHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.sctp.SctpMessageCompletionHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.sctp.SctpMessageCompletionHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.sctp.SctpMessageToMessageDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.sctp.SctpMessageToMessageDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.serialization.CompatibleObjectEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.serialization.CompatibleObjectEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.serialization.ObjectDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.serialization.ObjectDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.serialization.ObjectEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.serialization.ObjectEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.smtp.SmtpRequestEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.smtp.SmtpRequestEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.smtp.SmtpResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.smtp.SmtpResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksAuthRequestDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksAuthRequestDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksAuthResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksAuthResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksCmdRequestDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksCmdRequestDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksCmdResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksCmdResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksInitRequestDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksInitRequestDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksInitResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksInitResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksMessageEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socks.SocksMessageEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.SocksPortUnificationServerHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.SocksPortUnificationServerHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v4.Socks4ClientDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v4.Socks4ClientDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v4.Socks4ClientEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v4.Socks4ClientEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v4.Socks4ServerDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v4.Socks4ServerDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v4.Socks4ServerEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v4.Socks4ServerEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5ClientEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5ClientEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5ServerEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.socksx.v5.Socks5ServerEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdyFrameCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdyFrameCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdyHttpCodec" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdyHttpCodec", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdyHttpDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdyHttpDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdyHttpEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdyHttpEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdySessionHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.spdy.SpdySessionHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.stomp.StompSubframeAggregator" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.stomp.StompSubframeAggregator", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.stomp.StompSubframeDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.stomp.StompSubframeDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.stomp.StompSubframeEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.stomp.StompSubframeEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.string.LineEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.string.LineEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.string.StringDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.string.StringDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.string.StringEncoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.string.StringEncoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.xml.XmlDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.xml.XmlDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.xml.XmlFrameDecoder" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.codec.xml.XmlFrameDecoder", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.flow.FlowControlHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.flow.FlowControlHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.flush.FlushConsolidationHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.flush.FlushConsolidationHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ipfilter.AbstractRemoteAddressFilter" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ipfilter.AbstractRemoteAddressFilter", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ipfilter.IpSubnetFilter" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ipfilter.IpSubnetFilter", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ipfilter.RuleBasedIpFilter" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ipfilter.RuleBasedIpFilter", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ipfilter.UniqueIpFilter" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ipfilter.UniqueIpFilter", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.logging.LoggingHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.logging.LoggingHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.pcap.PcapWriteHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.pcap.PcapWriteHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.proxy.HttpProxyHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.proxy.HttpProxyHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.proxy.ProxyHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.proxy.ProxyHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.proxy.Socks4ProxyHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.proxy.Socks4ProxyHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.proxy.Socks5ProxyHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.proxy.Socks5ProxyHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.AbstractSniHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.AbstractSniHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.ApplicationProtocolNegotiationHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.ApplicationProtocolNegotiationHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OptionalSslHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.OptionalSslHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SniHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.SniHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslClientHelloHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.SslClientHelloHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslMasterKeyHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.SslMasterKeyHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.ocsp.OcspClientHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.ssl.ocsp.OcspClientHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.stream.ChunkedWriteHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.stream.ChunkedWriteHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.timeout.IdleStateHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.timeout.IdleStateHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.timeout.ReadTimeoutHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.timeout.ReadTimeoutHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.timeout.WriteTimeoutHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.timeout.WriteTimeoutHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.traffic.AbstractTrafficShapingHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.traffic.AbstractTrafficShapingHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.traffic.ChannelTrafficShapingHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.traffic.ChannelTrafficShapingHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.traffic.GlobalChannelTrafficShapingHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.traffic.GlobalChannelTrafficShapingHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.traffic.GlobalTrafficShapingHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.handler.traffic.GlobalTrafficShapingHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "io.grpc.netty.shaded.io.netty.internal.tcnative.CertificateCallback" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "io.grpc.netty.shaded.io.netty.internal.tcnative.CertificateCallbackTask" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "io.grpc.netty.shaded.io.netty.internal.tcnative.SSLPrivateKeyMethodDecryptTask" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "io.grpc.netty.shaded.io.netty.internal.tcnative.SSLPrivateKeyMethodSignTask" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "io.grpc.netty.shaded.io.netty.internal.tcnative.SSLPrivateKeyMethodTask" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "io.grpc.netty.shaded.io.netty.internal.tcnative.SSLTask" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolver$1" + }, + "name": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolver$1", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolver$3" + }, + "name": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolver$3", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler" + }, + "name": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1" + }, + "name": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1", + "queryAllPublicMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.AbstractReferenceCounted" + }, + "name": "io.grpc.netty.shaded.io.netty.util.AbstractReferenceCounted", + "fields": [ + { + "name": "refCnt" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultChannelPipeline" + }, + "name": "io.grpc.netty.shaded.io.netty.util.ReferenceCountUtil", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe" + }, + "name": "io.grpc.netty.shaded.io.netty.util.ReferenceCountUtil", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalServerChannel" + }, + "name": "io.grpc.netty.shaded.io.netty.util.ReferenceCountUtil", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "io.grpc.netty.shaded.io.netty.util.ReferenceCountUtil", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper" + }, + "name": "io.grpc.netty.shaded.io.netty.util.ReferenceCountUtil", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.ReferenceCountUtil" + }, + "name": "io.grpc.netty.shaded.io.netty.util.ReferenceCountUtil" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.NativeLibraryUtil" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.NativeLibraryLoader" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.NativeLibraryUtil" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.NativeLibraryLoader$1" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.NativeLibraryUtil", + "methods": [ + { + "name": "loadLibrary", + "parameterTypes": [ + "java.lang.String", + "boolean" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueueConsumerNodeRef" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueueConsumerNodeRef", + "fields": [ + { + "name": "consumerNode" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueueProducerNodeRef" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueueProducerNodeRef", + "fields": [ + { + "name": "producerNode" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueColdProducerFields" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueColdProducerFields", + "fields": [ + { + "name": "producerLimit" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields", + "fields": [ + { + "name": "consumerIndex" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields", + "fields": [ + { + "name": "producerIndex" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.LinkedQueueNode" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.LinkedQueueNode", + "fields": [ + { + "name": "next" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueConsumerIndexField" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueConsumerIndexField", + "fields": [ + { + "name": "consumerIndex" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerIndexField" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerIndexField", + "fields": [ + { + "name": "producerIndex" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerLimitField" + }, + "name": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerLimitField", + "fields": [ + { + "name": "producerLimit" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "java.io.FileDescriptor" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "java.io.FilePermission" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.unix.Unix" + }, + "name": "java.io.IOException" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "java.lang.Exception" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "java.lang.IllegalArgumentException" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "java.lang.NullPointerException" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.MarshallingEncoder" + }, + "name": "java.lang.Object", + "allDeclaredFields": true, + "queriedMethods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.unix.Unix" + }, + "name": "java.lang.OutOfMemoryError" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "java.lang.OutOfMemoryError" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultChannelId" + }, + "name": "java.lang.ProcessHandle", + "methods": [ + { + "name": "current", + "parameterTypes": [] + }, + { + "name": "pid", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.unix.Unix" + }, + "name": "java.lang.RuntimeException" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "java.lang.RuntimePermission" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.MarshallingEncoder" + }, + "name": "java.lang.String", + "allDeclaredFields": true, + "queriedMethods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.internal.tcnative.Library" + }, + "name": "java.lang.String" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.CommonsLoggerFactory" + }, + "name": "java.lang.String" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.LocationAwareSlf4JLogger" + }, + "name": "java.lang.Throwable", + "methods": [ + { + "name": "getSuppressed", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultChannelId" + }, + "name": "java.lang.management.ManagementFactory", + "methods": [ + { + "name": "getRuntimeMXBean", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent" + }, + "name": "java.lang.management.ManagementFactory", + "methods": [ + { + "name": "getRuntimeMXBean", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultChannelId" + }, + "name": "java.lang.management.RuntimeMXBean", + "methods": [ + { + "name": "getName", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent" + }, + "name": "java.lang.management.RuntimeMXBean", + "methods": [ + { + "name": "getInputArguments", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.HostsFileEntriesProvider" + }, + "name": "java.lang.reflect.Executable", + "methods": [ + { + "name": "getParameterCount", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsNameResolverBuilder" + }, + "name": "java.lang.reflect.Executable", + "methods": [ + { + "name": "getParameterCount", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.SingleThreadEventExecutor" + }, + "name": "java.lang.reflect.Executable", + "methods": [ + { + "name": "getParameterCount", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider" + }, + "name": "java.lang.reflect.Proxy", + "fields": [ + { + "name": "h" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.unix.Unix" + }, + "name": "java.net.InetSocketAddress" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "java.net.NetPermission" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.unix.Unix" + }, + "name": "java.net.PortUnreachableException" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioDatagramChannelConfig" + }, + "name": "java.net.SocketOption" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "java.net.SocketPermission" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioDatagramChannelConfig" + }, + "name": "java.net.StandardSocketOptions", + "fields": [ + { + "name": "IP_MULTICAST_IF" + }, + { + "name": "IP_MULTICAST_LOOP" + }, + { + "name": "IP_MULTICAST_TTL" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "java.net.URLPermission", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.String", + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent0$6" + }, + "name": "java.nio.Bits", + "fields": [ + { + "name": "UNALIGNED" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent0$4" + }, + "name": "java.nio.Buffer", + "fields": [ + { + "name": "address" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent0" + }, + "name": "java.nio.ByteBuffer", + "methods": [ + { + "name": "alignedSlice", + "parameterTypes": [ + "int" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent0$9" + }, + "name": "java.nio.ByteBuffer", + "queriedMethods": [ + { + "name": "alignedSlice", + "parameterTypes": [ + "int" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent0" + }, + "name": "java.nio.DirectByteBuffer", + "methods": [ + { + "name": "", + "parameterTypes": [ + "long", + "int" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent0$5" + }, + "name": "java.nio.DirectByteBuffer", + "queriedMethods": [ + { + "name": "", + "parameterTypes": [ + "long", + "int" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.unix.Unix" + }, + "name": "java.nio.channels.ClosedChannelException" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "java.nio.channels.FileChannel" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioDatagramChannelConfig" + }, + "name": "java.nio.channels.NetworkChannel", + "methods": [ + { + "name": "getOption", + "parameterTypes": [ + "java.net.SocketOption" + ] + }, + { + "name": "setOption", + "parameterTypes": [ + "java.net.SocketOption", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "java.security.AllPermission" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "java.security.KeyStoreSpi" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils" + }, + "name": "java.security.SecureRandomParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslClientContext" + }, + "name": "java.security.SecureRandomParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "java.security.SecureRandomParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslServerContext" + }, + "name": "java.security.SecureRandomParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslX509TrustManagerWrapper" + }, + "name": "java.security.SecureRandomParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper" + }, + "name": "java.security.SecureRandomParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "java.security.SecureRandomParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslUtils" + }, + "name": "java.security.SecureRandomParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.ThreadLocalInsecureRandom" + }, + "name": "java.security.SecureRandomParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent" + }, + "name": "java.security.SecureRandomParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "java.security.SecurityPermission" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "java.security.cert.CertStoreParameters" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "java.security.interfaces.ECPrivateKey" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "java.security.interfaces.ECPrivateKey" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "java.security.interfaces.ECPublicKey" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "java.security.interfaces.ECPublicKey" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "java.security.interfaces.RSAPrivateKey" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "java.security.interfaces.RSAPrivateKey" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "java.security.interfaces.RSAPublicKey" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "java.security.interfaces.RSAPublicKey" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.serialization.ClassLoaderClassResolver" + }, + "name": "java.util.List" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "java.util.PropertyPermission" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.ByteBufChecksum" + }, + "name": "java.util.zip.Adler32", + "methods": [ + { + "name": "update", + "parameterTypes": [ + "java.nio.ByteBuffer" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.FastLzFrameDecoder" + }, + "name": "java.util.zip.Adler32", + "methods": [ + { + "name": "update", + "parameterTypes": [ + "java.nio.ByteBuffer" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.FastLzFrameEncoder" + }, + "name": "java.util.zip.Adler32", + "methods": [ + { + "name": "update", + "parameterTypes": [ + "java.nio.ByteBuffer" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.ByteBufChecksum" + }, + "name": "java.util.zip.CRC32", + "methods": [ + { + "name": "update", + "parameterTypes": [ + "java.nio.ByteBuffer" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.JdkZlibDecoder" + }, + "name": "java.util.zip.CRC32", + "methods": [ + { + "name": "update", + "parameterTypes": [ + "java.nio.ByteBuffer" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "name": "javax.management.ObjectName" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3" + }, + "name": "javax.net.ssl.SSLContext", + "fields": [ + { + "name": "contextSpi" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils" + }, + "name": "javax.net.ssl.SSLEngine", + "methods": [ + { + "name": "getApplicationProtocol", + "parameterTypes": [] + }, + { + "name": "getHandshakeApplicationProtocol", + "parameterTypes": [] + }, + { + "name": "getHandshakeApplicationProtocolSelector", + "parameterTypes": [] + }, + { + "name": "setHandshakeApplicationProtocolSelector", + "parameterTypes": [ + "java.util.function.BiFunction" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils$1" + }, + "name": "javax.net.ssl.SSLEngine", + "queriedMethods": [ + { + "name": "getHandshakeApplicationProtocol", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils$2" + }, + "name": "javax.net.ssl.SSLEngine", + "queriedMethods": [ + { + "name": "getApplicationProtocol", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils$4" + }, + "name": "javax.net.ssl.SSLEngine", + "queriedMethods": [ + { + "name": "setHandshakeApplicationProtocolSelector", + "parameterTypes": [ + "java.util.function.BiFunction" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils$6" + }, + "name": "javax.net.ssl.SSLEngine", + "queriedMethods": [ + { + "name": "getHandshakeApplicationProtocolSelector", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "javax.net.ssl.SSLParameters", + "methods": [ + { + "name": "setApplicationProtocols", + "parameterTypes": [ + "java.lang.String[]" + ] + } + ], + "queriedMethods": [ + { + "name": "getApplicationProtocols", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils" + }, + "name": "javax.net.ssl.SSLParameters", + "methods": [ + { + "name": "setApplicationProtocols", + "parameterTypes": [ + "java.lang.String[]" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils$3" + }, + "name": "javax.net.ssl.SSLParameters", + "queriedMethods": [ + { + "name": "setApplicationProtocols", + "parameterTypes": [ + "java.lang.String[]" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslUtils" + }, + "name": "javax.net.ssl.SSLParameters", + "methods": [ + { + "name": "setApplicationProtocols", + "parameterTypes": [ + "java.lang.String[]" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "javax.security.auth.x500.X500Principal", + "methods": [ + { + "name": "", + "parameterTypes": [ + "sun.security.x509.X500Name" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "javax.security.auth.x500.X500Principal", + "methods": [ + { + "name": "", + "parameterTypes": [ + "sun.security.x509.X500Name" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession" + }, + "name": "javax.security.auth.x500.X500Principal", + "methods": [ + { + "name": "", + "parameterTypes": [ + "sun.security.x509.X500Name" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.LazyX509Certificate" + }, + "name": "javax.security.auth.x500.X500Principal", + "methods": [ + { + "name": "", + "parameterTypes": [ + "sun.security.x509.X500Name" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable" + }, + "name": "javax.security.auth.x500.X500Principal", + "methods": [ + { + "name": "", + "parameterTypes": [ + "sun.security.x509.X500Name" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent0$7" + }, + "name": "jdk.internal.misc.Unsafe", + "methods": [ + { + "name": "getUnsafe", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.CommonsLoggerFactory" + }, + "name": "org.apache.commons.logging.LogFactory" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.CommonsLoggerFactory" + }, + "name": "org.apache.commons.logging.impl.Log4JLogger", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.String" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.CommonsLoggerFactory" + }, + "name": "org.apache.commons.logging.impl.LogFactoryImpl", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.CommonsLoggerFactory" + }, + "name": "org.apache.commons.logging.impl.WeakHashtable", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.CommonsLoggerFactory" + }, + "name": "org.apache.log4j.Level", + "fields": [ + { + "name": "TRACE" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.CommonsLoggerFactory" + }, + "name": "org.apache.log4j.Priority" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.COMPOSITE$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.DH$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.DSA$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.DSTU4145$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.EC$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.ECGOST$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.EdEC$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.ElGamal$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.GM$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.GOST$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.IES$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.RSA$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.X509$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.SelfSignedCertificate" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.rsa.DigestSignatureSpi$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.asymmetric.x509.CertificateFactory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.Blake2b$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.Blake2s$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.DSTU7564$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.GOST3411$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.Haraka$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.Keccak$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.MD2$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.MD4$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.MD5$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.RIPEMD128$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.RIPEMD160$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.RIPEMD256$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.RIPEMD320$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.SHA1$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.SHA224$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.SHA256$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.SHA3$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.SHA384$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.SHA512$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.SM3$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.Skein$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.Tiger$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.digest.Whirlpool$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.drbg.DRBG$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.keystore.BC$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.keystore.BCFKS$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.keystore.PKCS12$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.AES$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.ARC4$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.ARIA$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Blowfish$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.CAST5$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.CAST6$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Camellia$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.ChaCha$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.DES$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.DESede$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.DSTU7624$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.GOST28147$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.GOST3412_2015$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Grain128$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Grainv1$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.HC128$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.HC256$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.IDEA$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Noekeon$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.OpenSSLPBKDF$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.PBEPBKDF1$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.PBEPBKDF2$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.PBEPKCS12$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Poly1305$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.RC2$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.RC5$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.RC6$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Rijndael$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.SCRYPT$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.SEED$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.SM4$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Salsa20$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Serpent$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Shacal2$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.SipHash$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.SipHash128$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Skipjack$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.TEA$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.TLSKDF$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Threefish$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Twofish$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.VMPC$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.VMPCKSA3$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.XSalsa20$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.XTEA$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "org.bouncycastle.jcajce.provider.symmetric.Zuc$Mappings", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.Conscrypt" + }, + "name": "org.conscrypt.Conscrypt", + "methods": [ + { + "name": "isConscrypt", + "parameterTypes": [ + "javax.net.ssl.SSLEngine" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslUtils" + }, + "name": "org.conscrypt.OpenSSLContextImpl$TLSv13", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "org.hamcrest.number.OrderingComparison", + "queryAllDeclaredMethods": true + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.proxy.HttpProxyServer$HttpIntermediaryHandler" + }, + "name": "org.hamcrest.number.OrderingComparison" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.LzfEncoder" + }, + "name": "sun.misc.Unsafe", + "fields": [ + { + "name": "theUnsafe" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider" + }, + "name": "sun.misc.Unsafe", + "fields": [ + { + "name": "theUnsafe" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.MarshallingEncoder" + }, + "name": "sun.misc.Unsafe", + "fields": [ + { + "name": "theUnsafe" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.CleanerJava9" + }, + "name": "sun.misc.Unsafe", + "methods": [ + { + "name": "invokeCleaner", + "parameterTypes": [ + "java.nio.ByteBuffer" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.CleanerJava9$1" + }, + "name": "sun.misc.Unsafe", + "methods": [ + { + "name": "invokeCleaner", + "parameterTypes": [ + "java.nio.ByteBuffer" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent0$1" + }, + "name": "sun.misc.Unsafe", + "fields": [ + { + "name": "theUnsafe" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent0$2" + }, + "name": "sun.misc.Unsafe", + "queriedMethods": [ + { + "name": "copyMemory", + "parameterTypes": [ + "java.lang.Object", + "long", + "java.lang.Object", + "long", + "long" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent0$3" + }, + "name": "sun.misc.Unsafe", + "queriedMethods": [ + { + "name": "storeFence", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.shaded.org.jctools.util.UnsafeAccess" + }, + "name": "sun.misc.Unsafe", + "fields": [ + { + "name": "theUnsafe" + } + ], + "queriedMethods": [ + { + "name": "getAndAddLong", + "parameterTypes": [ + "java.lang.Object", + "long", + "long" + ] + }, + { + "name": "getAndSetObject", + "parameterTypes": [ + "java.lang.Object", + "long", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop$3" + }, + "name": "sun.nio.ch.SelectorImpl" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop$4" + }, + "name": "sun.nio.ch.SelectorImpl", + "fields": [ + { + "name": "publicSelectedKeys" + }, + { + "name": "selectedKeys" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator" + }, + "name": "sun.security.pkcs12.PKCS12KeyStore", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.pkcs12.PKCS12KeyStore", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslServerContext" + }, + "name": "sun.security.pkcs12.PKCS12KeyStore", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "sun.security.pkcs12.PKCS12KeyStore", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator" + }, + "name": "sun.security.pkcs12.PKCS12KeyStore$DualFormatPKCS12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.pkcs12.PKCS12KeyStore$DualFormatPKCS12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslServerContext" + }, + "name": "sun.security.pkcs12.PKCS12KeyStore$DualFormatPKCS12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "sun.security.pkcs12.PKCS12KeyStore$DualFormatPKCS12", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.provider.DSA$SHA224withDSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.DSA$SHA224withDSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "sun.security.provider.DSA$SHA224withDSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.provider.DSA$SHA256withDSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.DSA$SHA256withDSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator" + }, + "name": "sun.security.provider.JavaKeyStore$JKS", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.provider.JavaKeyStore$JKS", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslServerContext" + }, + "name": "sun.security.provider.JavaKeyStore$JKS", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketUtil$1" + }, + "name": "sun.security.provider.MD5", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils" + }, + "name": "sun.security.provider.NativePRNG", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslClientContext" + }, + "name": "sun.security.provider.NativePRNG", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.provider.NativePRNG", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslServerContext" + }, + "name": "sun.security.provider.NativePRNG", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslX509TrustManagerWrapper" + }, + "name": "sun.security.provider.NativePRNG", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper" + }, + "name": "sun.security.provider.NativePRNG", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "sun.security.provider.NativePRNG", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslUtils" + }, + "name": "sun.security.provider.NativePRNG", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.ThreadLocalInsecureRandom" + }, + "name": "sun.security.provider.NativePRNG", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.PlatformDependent" + }, + "name": "sun.security.provider.NativePRNG", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.ThreadPerChannelEventLoop" + }, + "name": "sun.security.provider.SHA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1" + }, + "name": "sun.security.provider.SHA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.provider.SHA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "name": "sun.security.provider.SHA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.SHA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "sun.security.provider.SHA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.http.websocketx.WebSocketUtil$2" + }, + "name": "sun.security.provider.SHA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.FingerprintTrustManagerFactory" + }, + "name": "sun.security.provider.SHA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable" + }, + "name": "sun.security.provider.SHA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.provider.SHA2$SHA224", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.SHA2$SHA224", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "sun.security.provider.SHA2$SHA224", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.ConscryptAlpnSslEngine" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.PseudoRandomFunction" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler$SslTasksRunner" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.OpenJdkSelfSignedCertGenerator" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable" + }, + "name": "sun.security.provider.SHA2$SHA256", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.provider.SHA5$SHA384", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.SHA5$SHA384", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "sun.security.provider.SHA5$SHA384", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "sun.security.provider.SHA5$SHA512", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.provider.SHA5$SHA512", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "sun.security.provider.SHA5$SHA512", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.SHA5$SHA512", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "sun.security.provider.SHA5$SHA512", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "sun.security.provider.SHA5$SHA512", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslServerContext" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler$SslEngineType$2" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.LazyX509Certificate" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.SelfSignedCertificate" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable" + }, + "name": "sun.security.provider.X509Factory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.certpath.CollectionCertStore", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.security.cert.CertStoreParameters" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.certpath.PKIXCertPathValidator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable" + }, + "name": "sun.security.provider.certpath.PKIXCertPathValidator", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.provider.certpath.SunCertPathBuilder", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.rsa.PSSParameters", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.rsa.PSSParameters", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "sun.security.rsa.PSSParameters", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.rsa.RSAKeyFactory$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.rsa.RSAKeyFactory$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslServerContext" + }, + "name": "sun.security.rsa.RSAKeyFactory$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSsl" + }, + "name": "sun.security.rsa.RSAKeyFactory$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslServerContext" + }, + "name": "sun.security.rsa.RSAKeyFactory$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi" + }, + "name": "sun.security.rsa.RSAKeyFactory$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "sun.security.rsa.RSAKeyFactory$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContextBuilder" + }, + "name": "sun.security.rsa.RSAKeyFactory$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.SelfSignedCertificate" + }, + "name": "sun.security.rsa.RSAKeyFactory$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable" + }, + "name": "sun.security.rsa.RSAKeyFactory$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.SelfSignedCertificate" + }, + "name": "sun.security.rsa.RSAKeyPairGenerator$Legacy", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "sun.security.rsa.RSAPSSSignature", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.rsa.RSAPSSSignature", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "sun.security.rsa.RSAPSSSignature", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.rsa.RSAPSSSignature", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "sun.security.rsa.RSAPSSSignature", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "sun.security.rsa.RSAPSSSignature", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslHandler$SslTasksRunner" + }, + "name": "sun.security.rsa.RSAPSSSignature", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.rsa.RSASignature$SHA224withRSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.rsa.RSASignature$SHA224withRSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslEngine" + }, + "name": "sun.security.rsa.RSASignature$SHA224withRSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.OpenJdkSelfSignedCertGenerator" + }, + "name": "sun.security.rsa.RSASignature$SHA256withRSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.util.SelfSignedCertificate" + }, + "name": "sun.security.rsa.RSASignature$SHA256withRSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.DefaultEventLoop" + }, + "name": "sun.security.rsa.RSASignature$SHA512withRSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "sun.security.rsa.RSASignature$SHA512withRSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.local.LocalChannel" + }, + "name": "sun.security.rsa.RSASignature$SHA512withRSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.rsa.RSASignature$SHA512withRSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.oio.AbstractOioByteChannel" + }, + "name": "sun.security.rsa.RSASignature$SHA512withRSA", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslX509KeyManagerFactory" + }, + "name": "sun.security.ssl.KeyManagerFactoryImpl$SunX509", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslContext" + }, + "name": "sun.security.ssl.KeyManagerFactoryImpl$SunX509", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3" + }, + "name": "sun.security.ssl.SSLContextImpl", + "fields": [ + { + "name": "trustManager" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils" + }, + "name": "sun.security.ssl.SSLContextImpl$TLSContext", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslClientContext" + }, + "name": "sun.security.ssl.SSLContextImpl$TLSContext", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.ssl.SSLContextImpl$TLSContext", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslServerContext" + }, + "name": "sun.security.ssl.SSLContextImpl$TLSContext", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslX509TrustManagerWrapper" + }, + "name": "sun.security.ssl.SSLContextImpl$TLSContext", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslUtils" + }, + "name": "sun.security.ssl.SSLContextImpl$TLSContext", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.SslMasterKeyHandler" + }, + "name": "sun.security.ssl.SSLSessionImpl", + "fields": [ + { + "name": "masterSecret" + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkAlpnSslUtils" + }, + "name": "sun.security.ssl.TrustManagerFactoryImpl$PKIXFactory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslClientContext" + }, + "name": "sun.security.ssl.TrustManagerFactoryImpl$PKIXFactory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.ssl.TrustManagerFactoryImpl$PKIXFactory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslServerContext" + }, + "name": "sun.security.ssl.TrustManagerFactoryImpl$PKIXFactory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.OpenSslServerContext" + }, + "name": "sun.security.ssl.TrustManagerFactoryImpl$PKIXFactory", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.AuthorityInfoAccessExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.x509.AuthorityKeyIdentifierExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.AuthorityKeyIdentifierExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.BasicConstraintsExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.CRLDistributionPointsExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.CertificatePoliciesExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.x509.ExtendedKeyUsageExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.ExtendedKeyUsageExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.IssuerAlternativeNameExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop" + }, + "name": "sun.security.x509.KeyUsageExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.KeyUsageExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.NetscapeCertTypeExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.PrivateKeyUsageExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.SubjectAlternativeNameExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.ssl.JdkSslContext$Defaults" + }, + "name": "sun.security.x509.SubjectKeyIdentifierExtension", + "methods": [ + { + "name": "", + "parameterTypes": [ + "java.lang.Boolean", + "java.lang.Object" + ] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsServerAddressStreamProviders" + }, + "name": "io.grpc.netty.shaded.io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider", + "methods": [ + { + "name": "", + "parameterTypes": [] + } + ] + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.resolver.dns.DnsServerAddressStreamProviders$1" + }, + "name": "io.grpc.netty.shaded.io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider" + }, + { + "name": "io.grpc.netty.shaded.io.netty.channel.socket.nio.NioServerSocketChannel", + "methods": [ + { "name": "", "parameterTypes": [] } + ] + }, + { + "name": "sun.nio.ch.SelectorImpl", + "fields": [ + { "name": "selectedKeys", "allowUnsafeAccess" : true}, + { "name": "publicSelectedKeys", "allowUnsafeAccess" : true} + ] + }, + { + "name": "java.lang.management.ManagementFactory", + "methods": [ + { + "name": "getRuntimeMXBean", + "parameterTypes": [] + } + ] + }, + { + "name": "java.lang.management.RuntimeMXBean", + "methods": [ + { + "name": "getName", + "parameterTypes": [] + } + ] + } +] diff --git a/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/resource-config.json b/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/resource-config.json new file mode 100644 index 00000000000000..f2eb2c2ad105d8 --- /dev/null +++ b/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/resource-config.json @@ -0,0 +1,43 @@ +{ + "bundles": [], + "resources": { + "includes": [ + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.Native" + }, + "pattern": "\\QMETA-INF/native/libnetty_transport_native_epoll_x86_64.so\\E" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.Brotli" + }, + "pattern": "\\Qlib/linux-x86_64/libbrotli.so\\E" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.compression.ZstdEncoder" + }, + "pattern": "\\Qlinux/amd64/libzstd-jni-1.5.0-2.so\\E" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.logging.Slf4JLoggerFactory" + }, + "pattern": "\\Qorg/slf4j/impl/StaticLoggerBinder.class\\E" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.NativeLibraryLoader" + }, + "pattern": "\\QMETA-INF/native/libnetty_resolver_dns_native_macos_aarch_64.jnilib\\E" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.internal.NativeLibraryLoader" + }, + "pattern": "\\QMETA-INF/native/libnetty_resolver_dns_native_macos_x86_64.jnilib\\E" + } + ] + } +} diff --git a/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/serialization-config.json b/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/serialization-config.json new file mode 100644 index 00000000000000..6da9480c578b85 --- /dev/null +++ b/infra/reachability-metadata/src/main/resources/META-INF/native-image/io.grpc/grpc-netty-shaded/1.60.1/serialization-config.json @@ -0,0 +1,37 @@ +{ + "lambdaCapturingTypes": [], + "types": [ + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop" + }, + "name": "java.lang.String" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.MarshallingEncoder" + }, + "name": "java.lang.String" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.MarshallingEncoder" + }, + "name": "java.lang.String", + "customTargetConstructorClass": "java.lang.Object" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.handler.codec.marshalling.MarshallingEncoder" + }, + "name": "java.lang.String", + "customTargetConstructorClass": "java.lang.String" + }, + { + "condition": { + "typeReachable": "io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable" + }, + "name": "java.lang.String" + } + ] +} diff --git a/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/generated-reachability-metadata/reflect-config.json b/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/generated-reachability-metadata/reflect-config.json index 50dce54f451eb4..a89c83daf23986 100644 --- a/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/generated-reachability-metadata/reflect-config.json +++ b/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/generated-reachability-metadata/reflect-config.json @@ -8,7 +8,35 @@ "name":"[Lcom.fasterxml.jackson.databind.ser.BeanSerializerModifier;" }, { - "condition":{"typeReachable":"org.apache.shardingsphere.infra.datasource.pool.CatalogSwitchableDataSource"}, + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.DatabaseTypeEngine"}, + "name":"[Lcom.zaxxer.hikari.util.ConcurrentBag$IConcurrentBagEntry;" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.core.metadata.data.loader.type.TableMetaDataLoader"}, + "name":"[Lcom.zaxxer.hikari.util.ConcurrentBag$IConcurrentBagEntry;" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.h2.metadata.data.loader.H2MetaDataLoader"}, + "name":"[Lcom.zaxxer.hikari.util.ConcurrentBag$IConcurrentBagEntry;" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.mysql.metadata.data.loader.MySQLMetaDataLoader"}, + "name":"[Lcom.zaxxer.hikari.util.ConcurrentBag$IConcurrentBagEntry;" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.opengauss.metadata.data.loader.OpenGaussMetaDataLoader"}, + "name":"[Lcom.zaxxer.hikari.util.ConcurrentBag$IConcurrentBagEntry;" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.postgresql.metadata.data.loader.PostgreSQLMetaDataLoader"}, + "name":"[Lcom.zaxxer.hikari.util.ConcurrentBag$IConcurrentBagEntry;" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.sqlserver.metadata.data.loader.SQLServerMetaDataLoader"}, + "name":"[Lcom.zaxxer.hikari.util.ConcurrentBag$IConcurrentBagEntry;" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.state.datasource.DataSourceStateManager"}, "name":"[Lcom.zaxxer.hikari.util.ConcurrentBag$IConcurrentBagEntry;" }, { @@ -32,6 +60,111 @@ "name":"java.util.Properties", "methods":[{"name":"","parameterTypes":[] }] }, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.script.ScriptEngine", + "queryAllPublicMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.AbstractButton", + "queryAllDeclaredMethods":true, + "methods":[{"name":"addItemListener","parameterTypes":["java.awt.event.ItemListener"] }, {"name":"getSelectedObjects","parameterTypes":[] }, {"name":"removeItemListener","parameterTypes":["java.awt.event.ItemListener"] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.Action", + "queryAllPublicMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.JComponent", + "queryAllDeclaredMethods":true, + "methods":[{"name":"getTransferHandler","parameterTypes":[] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.ListModel", + "queryAllPublicMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.MutableComboBoxModel", + "queryAllPublicMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.SwingConstants", + "queryAllDeclaredMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.TransferHandler$HasGetTransferHandler", + "queryAllDeclaredMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.table.TableColumnModel", + "queryAllPublicMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.table.TableModel", + "queryAllPublicMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.tree.MutableTreeNode", + "queryAllPublicMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"javax.swing.tree.TreeNode", + "queryAllPublicMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.repository.standalone.jdbc.JDBCRepository"}, + "name":"org.apache.derby.jdbc.AutoloadedDriver" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.repository.standalone.jdbc.JDBCRepository"}, + "name":"org.apache.hive.jdbc.HiveDriver" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.driver.jdbc.adapter.AbstractStatementAdapter$$Lambda/0x00007ff2634f7dd0"}, + "name":"org.apache.hive.service.rpc.thrift.TCLIService$Iface", + "methods":[{"name":"CloseOperation","parameterTypes":["org.apache.hive.service.rpc.thrift.TCloseOperationReq"] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.driver.jdbc.core.connection.DriverDatabaseConnectionManager"}, + "name":"org.apache.hive.service.rpc.thrift.TCLIService$Iface", + "methods":[{"name":"GetInfo","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetInfoReq"] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.core.metadata.data.loader.type.ColumnMetaDataLoader"}, + "name":"org.apache.hive.service.rpc.thrift.TCLIService$Iface", + "methods":[{"name":"CloseOperation","parameterTypes":["org.apache.hive.service.rpc.thrift.TCloseOperationReq"] }, {"name":"ExecuteStatement","parameterTypes":["org.apache.hive.service.rpc.thrift.TExecuteStatementReq"] }, {"name":"FetchResults","parameterTypes":["org.apache.hive.service.rpc.thrift.TFetchResultsReq"] }, {"name":"GetColumns","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetColumnsReq"] }, {"name":"GetOperationStatus","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetOperationStatusReq"] }, {"name":"GetPrimaryKeys","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetPrimaryKeysReq"] }, {"name":"GetResultSetMetadata","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetResultSetMetadataReq"] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.core.metadata.data.loader.type.TableMetaDataLoader"}, + "name":"org.apache.hive.service.rpc.thrift.TCLIService$Iface", + "methods":[{"name":"CloseOperation","parameterTypes":["org.apache.hive.service.rpc.thrift.TCloseOperationReq"] }, {"name":"FetchResults","parameterTypes":["org.apache.hive.service.rpc.thrift.TFetchResultsReq"] }, {"name":"GetInfo","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetInfoReq"] }, {"name":"GetResultSetMetadata","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetResultSetMetadataReq"] }, {"name":"GetTables","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetTablesReq"] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.core.metadata.database.DialectDatabaseMetaData"}, + "name":"org.apache.hive.service.rpc.thrift.TCLIService$Iface", + "methods":[{"name":"CloseOperation","parameterTypes":["org.apache.hive.service.rpc.thrift.TCloseOperationReq"] }, {"name":"ExecuteStatement","parameterTypes":["org.apache.hive.service.rpc.thrift.TExecuteStatementReq"] }, {"name":"FetchResults","parameterTypes":["org.apache.hive.service.rpc.thrift.TFetchResultsReq"] }, {"name":"GetOperationStatus","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetOperationStatusReq"] }, {"name":"GetResultSetMetadata","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetResultSetMetadataReq"] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.executor.kernel.ExecutorEngine"}, + "name":"org.apache.hive.service.rpc.thrift.TCLIService$Iface", + "methods":[{"name":"ExecuteStatement","parameterTypes":["org.apache.hive.service.rpc.thrift.TExecuteStatementReq"] }, {"name":"GetOperationStatus","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetOperationStatusReq"] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.stream.JDBCStreamQueryResult"}, + "name":"org.apache.hive.service.rpc.thrift.TCLIService$Iface", + "methods":[{"name":"FetchResults","parameterTypes":["org.apache.hive.service.rpc.thrift.TFetchResultsReq"] }, {"name":"GetOperationStatus","parameterTypes":["org.apache.hive.service.rpc.thrift.TGetOperationStatusReq"] }] +}, { "condition":{"typeReachable":"org.apache.shardingsphere.authority.rule.AuthorityRule"}, "name":"org.apache.shardingsphere.authority.provider.database.DatabasePermittedPrivilegeProvider" @@ -356,6 +489,18 @@ "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.core.type.DatabaseTypeFactory"}, "name":"org.apache.shardingsphere.infra.database.h2.type.H2DatabaseType" }, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.datasource.pool.creator.DataSourcePoolReflection"}, + "name":"org.apache.shardingsphere.infra.database.hive.connector.HiveConnectionPropertiesParser" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.core.type.DatabaseTypeRegistry"}, + "name":"org.apache.shardingsphere.infra.database.hive.metadata.database.HiveDatabaseMetaData" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.core.type.DatabaseTypeFactory"}, + "name":"org.apache.shardingsphere.infra.database.hive.type.HiveDatabaseType" +}, { "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.core.type.DatabaseTypeFactory"}, "name":"org.apache.shardingsphere.infra.database.mariadb.type.MariaDBDatabaseType" @@ -364,6 +509,10 @@ "condition":{"typeReachable":"org.apache.shardingsphere.infra.datasource.pool.creator.DataSourcePoolReflection"}, "name":"org.apache.shardingsphere.infra.database.mysql.connector.MySQLConnectionPropertiesParser" }, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.driver.jdbc.core.statement.ShardingSpherePreparedStatement"}, + "name":"org.apache.shardingsphere.infra.database.mysql.keygen.MySQLGeneratedKeyColumnProvider" +}, { "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.core.metadata.data.loader.MetaDataLoader"}, "name":"org.apache.shardingsphere.infra.database.mysql.metadata.data.loader.MySQLMetaDataLoader" @@ -572,7 +721,7 @@ "queryAllDeclaredMethods":true }, { - "condition":{"typeReachable":"org.apache.shardingsphere.mode.subsciber.EventSubscriberRegistry$$Lambda/0x00007ffa03398208"}, + "condition":{"typeReachable":"org.apache.shardingsphere.mode.subsciber.EventSubscriberRegistry$$Lambda/0x00007ff26339ca00"}, "name":"org.apache.shardingsphere.infra.util.eventbus.EventSubscriber" }, { @@ -930,6 +1079,14 @@ "name":"org.apache.shardingsphere.mode.manager.cluster.coordinator.subscriber.CacheEvictedSubscriber", "methods":[{"name":"onGovernanceEvent","parameterTypes":["org.apache.shardingsphere.infra.rule.event.GovernanceEvent"] }] }, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.util.eventbus.EventBusContext"}, + "name":"org.apache.shardingsphere.mode.manager.cluster.coordinator.subscriber.ResourceMetaDataChangedSubscriber" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.manager.cluster.coordinator.registry.GovernanceWatcherFactory$$Lambda/0x00007ff26390cd50"}, + "name":"org.apache.shardingsphere.mode.manager.cluster.coordinator.subscriber.ResourceMetaDataChangedSubscriber" +}, { "condition":{"typeReachable":"org.apache.shardingsphere.mode.service.PersistServiceFacade"}, "name":"org.apache.shardingsphere.mode.manager.cluster.service.ClusterPersistServiceBuilder", @@ -952,6 +1109,58 @@ "condition":{"typeReachable":"org.apache.shardingsphere.infra.yaml.config.swapper.mode.YamlModeConfigurationSwapper"}, "name":"org.apache.shardingsphere.mode.manager.standalone.yaml.StandaloneYamlPersistRepositoryConfigurationSwapper" }, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.index.AlterIndexStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.index.CreateIndexStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.index.DropIndexStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.schema.AlterSchemaStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.schema.CreateSchemaStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.schema.DropSchemaStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.table.AlterTableStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.table.CreateTableStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.table.DropTableStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.table.RenameTableStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.view.AlterViewStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.view.CreateViewStatementSchemaRefresher" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "name":"org.apache.shardingsphere.mode.metadata.refresher.type.view.DropViewStatementSchemaRefresher" +}, { "condition":{"typeReachable":"org.apache.shardingsphere.mode.manager.cluster.ClusterContextManagerBuilder"}, "name":"org.apache.shardingsphere.mode.repository.cluster.etcd.EtcdRepository", @@ -1527,6 +1736,11 @@ "condition":{"typeReachable":"org.apache.shardingsphere.sql.parser.core.database.cache.ParseTreeCacheBuilder"}, "name":"org.apache.shardingsphere.sql.parser.core.database.cache.ParseTreeCacheLoader" }, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.sql.parser.core.database.visitor.SQLStatementVisitorFactory"}, + "name":"org.apache.shardingsphere.sql.parser.hive.visitor.statement.HiveStatementVisitorFacade", + "methods":[{"name":"","parameterTypes":[] }] +}, { "condition":{"typeReachable":"org.apache.shardingsphere.sql.parser.core.SQLParserFactory"}, "name":"org.apache.shardingsphere.sql.parser.mysql.parser.MySQLLexer", @@ -1622,6 +1836,16 @@ "name":"org.apache.shardingsphere.sql.parser.sql.dialect.statement.clickhouse.dml.ClickHouseSelectStatement", "methods":[{"name":"","parameterTypes":[] }] }, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.binder.statement.dml.DeleteStatementBinder"}, + "name":"org.apache.shardingsphere.sql.parser.sql.dialect.statement.hive.dml.HiveDeleteStatement", + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.driver.jdbc.core.statement.ShardingSpherePreparedStatement"}, + "name":"org.apache.shardingsphere.sql.parser.sql.dialect.statement.hive.dml.HiveSelectStatement", + "methods":[{"name":"","parameterTypes":[] }] +}, { "condition":{"typeReachable":"org.apache.shardingsphere.infra.binder.statement.dml.DeleteStatementBinder"}, "name":"org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dml.MySQLDeleteStatement", @@ -1860,5 +2084,15 @@ { "condition":{"typeReachable":"org.apache.shardingsphere.infra.util.yaml.YamlEngine"}, "name":"org.apache.shardingsphere.transaction.yaml.config.YamlTransactionRuleConfigurationCustomizer" +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"org.w3c.dom.Element", + "queryAllPublicMethods":true +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.infra.expr.groovy.GroovyInlineExpressionParser"}, + "name":"org.w3c.dom.NodeList", + "queryAllPublicMethods":true } ] \ No newline at end of file diff --git a/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/generated-reachability-metadata/resource-config.json b/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/generated-reachability-metadata/resource-config.json index e9293e80b97ee4..a86eb68a094123 100644 --- a/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/generated-reachability-metadata/resource-config.json +++ b/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/generated-reachability-metadata/resource-config.json @@ -123,6 +123,9 @@ }, { "condition":{"typeReachable":"org.apache.shardingsphere.infra.datasource.pool.creator.DataSourcePoolReflection"}, "pattern":"\\QMETA-INF/services/org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser\\E" + }, { + "condition":{"typeReachable":"org.apache.shardingsphere.driver.jdbc.core.statement.ShardingSpherePreparedStatement"}, + "pattern":"\\QMETA-INF/services/org.apache.shardingsphere.infra.database.core.keygen.GeneratedKeyColumnProvider\\E" }, { "condition":{"typeReachable":"org.apache.shardingsphere.infra.database.core.metadata.data.loader.MetaDataLoader"}, "pattern":"\\QMETA-INF/services/org.apache.shardingsphere.infra.database.core.metadata.data.loader.DialectMetaDataLoader\\E" @@ -201,6 +204,9 @@ }, { "condition":{"typeReachable":"org.apache.shardingsphere.driver.jdbc.core.datasource.ShardingSphereDataSource"}, "pattern":"\\QMETA-INF/services/org.apache.shardingsphere.mode.manager.listener.ContextManagerLifecycleListener\\E" + }, { + "condition":{"typeReachable":"org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefreshEngine"}, + "pattern":"\\QMETA-INF/services/org.apache.shardingsphere.mode.metadata.refresher.MetaDataRefresher\\E" }, { "condition":{"typeReachable":"org.apache.shardingsphere.mode.manager.cluster.ClusterContextManagerBuilder"}, "pattern":"\\QMETA-INF/services/org.apache.shardingsphere.mode.repository.cluster.ClusterPersistRepository\\E" @@ -2721,6 +2727,9 @@ }, { "condition":{"typeReachable":"org.apache.shardingsphere.infra.url.classpath.ClassPathURLLoader"}, "pattern":"\\Qtest-native/yaml/databases/clickhouse.yaml\\E" + }, { + "condition":{"typeReachable":"org.apache.shardingsphere.infra.url.classpath.ClassPathURLLoader"}, + "pattern":"\\Qtest-native/yaml/databases/hive.yaml\\E" }, { "condition":{"typeReachable":"org.apache.shardingsphere.infra.url.classpath.ClassPathURLLoader"}, "pattern":"\\Qtest-native/yaml/databases/mysql.yaml\\E" diff --git a/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/shardingsphere-infra-reachability-metadata/reflect-config.json b/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/shardingsphere-infra-reachability-metadata/reflect-config.json index af8a51a75d8e3a..8e087a7f45add6 100644 --- a/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/shardingsphere-infra-reachability-metadata/reflect-config.json +++ b/infra/reachability-metadata/src/main/resources/META-INF/native-image/org.apache.shardingsphere/shardingsphere-infra-reachability-metadata/reflect-config.json @@ -53,5 +53,25 @@ "condition":{"typeReachable":"org.apache.shardingsphere.infra.util.eventbus.EventBusContext"}, "name":"org.apache.shardingsphere.mode.manager.cluster.coordinator.subscriber.StateChangedSubscriber", "methods":[{"name":"renew","parameterTypes":["org.apache.shardingsphere.mode.manager.cluster.coordinator.registry.status.cluster.event.ClusterStateEvent"] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.sql.parser.hive.parser.HiveLexer"}, + "name":"org.apache.shardingsphere.sql.parser.hive.parser.HiveLexer", + "methods":[{"name":"","parameterTypes":["org.antlr.v4.runtime.CharStream"] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.sql.parser.hive.parser.HiveParser"}, + "name":"org.apache.shardingsphere.sql.parser.hive.parser.HiveParser", + "methods":[{"name":"","parameterTypes":["org.antlr.v4.runtime.TokenStream"] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.sql.parser.hive.visitor.statement.type.HiveDMLStatementVisitor"}, + "name":"org.apache.shardingsphere.sql.parser.hive.visitor.statement.type.HiveDMLStatementVisitor", + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "condition":{"typeReachable":"org.apache.shardingsphere.sql.parser.sql.dialect.statement.hive.dml.HiveInsertStatement"}, + "name":"org.apache.shardingsphere.sql.parser.sql.dialect.statement.hive.dml.HiveInsertStatement", + "methods":[{"name":"","parameterTypes":[] }] } ] diff --git a/pom.xml b/pom.xml index d539451795a734..35741c24ff8806 100644 --- a/pom.xml +++ b/pom.xml @@ -126,6 +126,8 @@ 3.1.0-og 2.4.2 0.6.0-patch5 + 4.0.0 + 3.3.6 4.0.3 @@ -479,6 +481,24 @@ http test + + org.apache.hive + hive-jdbc + ${hive.version} + test + + + org.apache.hive + hive-service + ${hive.version} + test + + + org.apache.hadoop + hadoop-client-runtime + ${hadoop.version} + test + com.zaxxer @@ -970,7 +990,8 @@ maven-surefire-plugin false - --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED + + --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED diff --git a/test/native/pom.xml b/test/native/pom.xml index 1266875230cdda..19753024d7ca17 100644 --- a/test/native/pom.xml +++ b/test/native/pom.xml @@ -123,6 +123,12 @@ using Seata Client under GraalVM Native Image requires using the version release ${project.version} test + + org.apache.shardingsphere + shardingsphere-parser-sql-hive + ${project.version} + test + org.awaitility @@ -155,6 +161,47 @@ using Seata Client under GraalVM Native Image requires using the version release http test + + org.apache.hive + hive-jdbc + test + + + org.apache.hive + hive-service + test + + + org.apache.logging.log4j + log4j-slf4j-impl + + + org.slf4j + slf4j-reload4j + + + org.apache.logging.log4j + log4j-web + + + org.apache.logging.log4j + log4j-core + + + org.apache.logging.log4j + log4j-api + + + org.apache.logging.log4j + log4j-1.2-api + + + + + org.apache.hadoop + hadoop-client-runtime + test + org.testcontainers postgresql diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/TestShardingService.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/TestShardingService.java index 8e577b480b3f18..327e2c4baf39b5 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/TestShardingService.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/TestShardingService.java @@ -27,6 +27,7 @@ import javax.sql.DataSource; import java.sql.SQLException; +import java.sql.Statement; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -38,6 +39,7 @@ import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.CoreMatchers.notNullValue; import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; @Getter public final class TestShardingService { @@ -60,7 +62,7 @@ public TestShardingService(final DataSource dataSource) { * @throws SQLException An exception that provides information on a database access error or other errors. */ public void processSuccess() throws SQLException { - final Collection orderIds = insertData(); + final Collection orderIds = insertData(Statement.RETURN_GENERATED_KEYS); Collection orders = orderRepository.selectAll(); assertThat(orders.stream().map(Order::getOrderType).collect(Collectors.toList()), equalTo(Arrays.asList(1, 1, 1, 1, 1, 0, 0, 0, 0, 0))); @@ -89,12 +91,12 @@ public void processSuccess() throws SQLException { /** * Process success in ClickHouse. * ClickHouse has not fully supported transactions. Refer to ClickHouse/clickhouse-docs#2300. - * So ShardingSphere should not use {@code orderItemRepository.assertRollbackWithTransactions()} in the method here. + * So ShardingSphere should not use {@link OrderItemRepository#assertRollbackWithTransactions()} in the method here. * * @throws SQLException An exception that provides information on a database access error or other errors. */ public void processSuccessInClickHouse() throws SQLException { - Collection orderIds = insertDataInClickHouse(); + Collection orderIds = insertData(Statement.NO_GENERATED_KEYS); assertThat(orderIds, notNullValue()); Collection orders = orderRepository.selectAll(); assertThat(orders.stream().map(Order::getOrderType).collect(Collectors.toList()), @@ -121,40 +123,39 @@ public void processSuccessInClickHouse() throws SQLException { } /** - * Insert data. + * Process success in Hive. + * Hive has not fully supported BEGIN, COMMIT, and ROLLBACK. Refer to Hive Transactions. + * So ShardingSphere should not use {@link OrderItemRepository#assertRollbackWithTransactions()} + * TODO It seems that there is no way to force all HiveServer2 insert statements to complete. + * This results in the following assertion always failing, which needs to be investigated on the apache/hive side. + *
+     * insertDataInHive();
+     * assertThat(addressRepository.selectAll(),
+     *     equalTo(LongStream.range(1L, 11L).mapToObj(each -> new Address(each, "address_test_" + each)).collect(Collectors.toList())));
+     * 
+ * TODO It is currently not convenient to operate on the `t_order` and `t_order_item` tables because + * {@link org.apache.hive.jdbc.HiveStatement} does not implement {@link Statement#getGeneratedKeys()} * - * @return orderId of the insert statement. * @throws SQLException An exception that provides information on a database access error or other errors. */ - public Collection insertData() throws SQLException { - Collection result = new ArrayList<>(10); - for (int i = 1; i <= 10; i++) { - Order order = new Order(); - order.setUserId(i); - order.setOrderType(i % 2); - order.setAddressId(i); - order.setStatus("INSERT_TEST"); - orderRepository.insert(order); - OrderItem orderItem = new OrderItem(); - orderItem.setOrderId(order.getOrderId()); - orderItem.setUserId(i); - orderItem.setPhone("13800000001"); - orderItem.setStatus("INSERT_TEST"); - orderItemRepository.insert(orderItem); - Address address = new Address((long) i, "address_test_" + i); - addressRepository.insert(address); - result.add(order.getOrderId()); - } - return result; + public void processSuccessInHive() throws SQLException { + insertDataInHive(); + assertThat(addressRepository.selectAll().isEmpty(), is(false)); + deleteDataInHive(); + assertThat(addressRepository.selectAll(), equalTo(Collections.emptyList())); } /** - * Insert data in ClickHouse. + * Insert data. * + * @param autoGeneratedKeys a flag indicating whether auto-generated keys + * should be returned; one of + * {@code Statement.RETURN_GENERATED_KEYS} or + * {@code Statement.NO_GENERATED_KEYS} * @return orderId of the insert statement. * @throws SQLException An exception that provides information on a database access error or other errors. */ - public Collection insertDataInClickHouse() throws SQLException { + public Collection insertData(final int autoGeneratedKeys) throws SQLException { Collection result = new ArrayList<>(10); for (int i = 1; i <= 10; i++) { Order order = new Order(); @@ -162,13 +163,13 @@ public Collection insertDataInClickHouse() throws SQLException { order.setOrderType(i % 2); order.setAddressId(i); order.setStatus("INSERT_TEST"); - orderRepository.insertWithoutAutoGeneratedKey(order); + orderRepository.insert(order, autoGeneratedKeys); OrderItem orderItem = new OrderItem(); orderItem.setOrderId(order.getOrderId()); orderItem.setUserId(i); orderItem.setPhone("13800000001"); orderItem.setStatus("INSERT_TEST"); - orderItemRepository.insertWithoutAutoGeneratedKey(orderItem); + orderItemRepository.insert(orderItem, autoGeneratedKeys); Address address = new Address((long) i, "address_test_" + i); addressRepository.insert(address); result.add(order.getOrderId()); @@ -176,6 +177,20 @@ public Collection insertDataInClickHouse() throws SQLException { return result; } + /** + * Insert data in Hive. + */ + public void insertDataInHive() { + LongStream.range(1L, 11L).forEach(action -> { + Address address = new Address(action, "address_test_" + action); + try { + addressRepository.insert(address); + } catch (final SQLException ex) { + throw new RuntimeException(ex); + } + }); + } + /** * Delete data. * @@ -206,6 +221,18 @@ public void deleteDataInClickHouse(final Collection orderIds) throws SQLEx } } + /** + * Delete data in Hive. + * + * @throws SQLException An exception that provides information on a database access error or other errors. + */ + public void deleteDataInHive() throws SQLException { + long count = 1L; + for (int i = 1; i <= 10; i++) { + addressRepository.deleteInHive(count++); + } + } + /** * Clean environment. * diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/AddressRepository.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/AddressRepository.java index 1e519f617a7582..ce0712efed868b 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/AddressRepository.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/AddressRepository.java @@ -38,11 +38,11 @@ public AddressRepository(final DataSource dataSource) { } /** - * create table t_address if not exists. + * create table t_address if not exists in MySQL. * * @throws SQLException SQL exception */ - public void createTableIfNotExists() throws SQLException { + public void createTableIfNotExistsInMySQL() throws SQLException { String sql = "CREATE TABLE IF NOT EXISTS t_address (address_id BIGINT NOT NULL, address_name VARCHAR(100) NOT NULL, PRIMARY KEY (address_id))"; try ( Connection connection = dataSource.getConnection(); @@ -62,7 +62,26 @@ public void createTableInSQLServer() throws SQLException { + " address_id bigint NOT NULL,\n" + " address_name varchar(100) NOT NULL,\n" + " PRIMARY KEY (address_id)\n" - + ");"; + + ")"; + try ( + Connection connection = dataSource.getConnection(); + Statement statement = connection.createStatement()) { + statement.executeUpdate(sql); + } + } + + /** + * create table t_address if not exists in Hive. + * + * @throws SQLException SQL exception + */ + public void createTableIfNotExistsInHive() throws SQLException { + String sql = "CREATE TABLE IF NOT EXISTS t_address\n" + + "(\n" + + " address_id BIGINT NOT NULL,\n" + + " address_name VARCHAR(100) NOT NULL,\n" + + " PRIMARY KEY (address_id) disable novalidate\n" + + ") CLUSTERED BY (address_id) INTO 2 BUCKETS STORED AS ORC TBLPROPERTIES ('transactional'='true')"; try ( Connection connection = dataSource.getConnection(); Statement statement = connection.createStatement()) { @@ -133,6 +152,22 @@ public void delete(final Long id) throws SQLException { } } + /** + * delete by id. + * + * @param id id + * @throws SQLException SQL exception + */ + public void deleteInHive(final Long id) throws SQLException { + String sql = "DELETE FROM t_address WHERE address_id=?"; + try ( + Connection connection = dataSource.getConnection(); + PreparedStatement preparedStatement = connection.prepareStatement(sql)) { + preparedStatement.setLong(1, id); + preparedStatement.executeUpdate(); + } + } + /** * delete by id in ClickHouse. * diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/OrderItemRepository.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/OrderItemRepository.java index 8979e284eff261..d9b32cbc462284 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/OrderItemRepository.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/OrderItemRepository.java @@ -52,7 +52,7 @@ public void createTableIfNotExistsInMySQL() throws SQLException { + "user_id INT NOT NULL,\n" + "phone VARCHAR(50),\n" + "status VARCHAR(50),\n" - + "PRIMARY KEY (order_item_id));"; + + "PRIMARY KEY (order_item_id))"; try ( Connection connection = dataSource.getConnection(); Statement statement = connection.createStatement()) { @@ -72,7 +72,7 @@ public void createTableIfNotExistsInPostgres() throws SQLException { + " user_id INTEGER NOT NULL,\n" + " phone VARCHAR(50),\n" + " status VARCHAR(50)\n" - + ");"; + + ")"; try ( Connection connection = dataSource.getConnection(); Statement statement = connection.createStatement()) { @@ -94,7 +94,7 @@ public void createTableInSQLServer() throws SQLException { + " phone varchar(50),\n" + " status varchar(50),\n" + " PRIMARY KEY (order_item_id)\n" - + ");"; + + ")"; try ( Connection connection = dataSource.getConnection(); Statement statement = connection.createStatement()) { @@ -104,6 +104,7 @@ public void createTableInSQLServer() throws SQLException { /** * create table if not exists in ClickHouse. + * ClickHouse does not support `AUTO_INCREMENT`, refer to ClickHouse/ClickHouse#56228 . * * @throws SQLException SQL exception */ @@ -124,6 +125,28 @@ public void createTableIfNotExistsInClickHouse() throws SQLException { } } + /** + * create table if not exists in Hive. + * Hive does not support `AUTO_INCREMENT`, refer to HIVE-6905 . + * + * @throws SQLException SQL exception + */ + public void createTableIfNotExistsInHive() throws SQLException { + String sql = "CREATE TABLE IF NOT EXISTS t_order_item\n" + + "(order_item_id BIGINT,\n" + + " order_id BIGINT NOT NULL,\n" + + " user_id INT NOT NULL,\n" + + " phone VARCHAR(50),\n" + + " status VARCHAR(50),\n" + + " PRIMARY KEY (order_item_id) disable novalidate\n" + + ") CLUSTERED BY (order_item_id) INTO 2 BUCKETS STORED AS ORC TBLPROPERTIES ('transactional'='true')"; + try ( + Connection connection = dataSource.getConnection(); + Statement statement = connection.createStatement()) { + statement.executeUpdate(sql); + } + } + /** * drop table. * @@ -208,7 +231,8 @@ public Long insert(final OrderItem orderItem) throws SQLException { } /** - * insert OrderItem to table. + * insert OrderItem to table. Databases like ClickHouse do not support returning auto generated keys after executing SQL, + * see ClickHouse/ClickHouse#56228 . * * @param orderItem orderItem * @param autoGeneratedKeys a flag indicating whether auto-generated keys @@ -237,17 +261,6 @@ public Long insert(final OrderItem orderItem, final int autoGeneratedKeys) throw return orderItem.getOrderItemId(); } - /** - * insert OrderItem to table without auto generated key. Databases like ClickHouse do not support returning auto generated keys after executing SQL, - * see ClickHouse/ClickHouse#56228 . - * - * @param orderItem orderItem - * @throws SQLException SQL Exception - */ - public void insertWithoutAutoGeneratedKey(final OrderItem orderItem) throws SQLException { - insert(orderItem, Statement.NO_GENERATED_KEYS); - } - /** * delete by orderItemId. * diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/OrderRepository.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/OrderRepository.java index 0919940a716618..b595b672190ba4 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/OrderRepository.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/commons/repository/OrderRepository.java @@ -49,7 +49,7 @@ public void createTableIfNotExistsInMySQL() throws SQLException { + "user_id INT NOT NULL,\n" + "address_id BIGINT NOT NULL,\n" + "status VARCHAR(50),\n" - + "PRIMARY KEY (order_id));"; + + "PRIMARY KEY (order_id))"; try ( Connection connection = dataSource.getConnection(); Statement statement = connection.createStatement()) { @@ -69,7 +69,7 @@ public void createTableIfNotExistsInPostgres() throws SQLException { + " user_id INTEGER NOT NULL,\n" + " address_id BIGINT NOT NULL,\n" + " status VARCHAR(50)\n" - + ");"; + + ")"; try ( Connection connection = dataSource.getConnection(); Statement statement = connection.createStatement()) { @@ -91,7 +91,7 @@ public void createTableInSQLServer() throws SQLException { + " address_id bigint NOT NULL,\n" + " status varchar(50),\n" + " PRIMARY KEY (order_id)\n" - + ");"; + + ")"; try ( Connection connection = dataSource.getConnection(); Statement statement = connection.createStatement()) { @@ -101,6 +101,7 @@ public void createTableInSQLServer() throws SQLException { /** * create table in ClickHouse. + * ClickHouse does not support `AUTO_INCREMENT`, refer to ClickHouse/ClickHouse#56228 . * * @throws SQLException SQL exception */ @@ -113,7 +114,30 @@ public void createTableIfNotExistsInClickHouse() throws SQLException { + "status String\n" + ") engine = MergeTree \n" + "primary key (order_id)\n" - + "order by(order_id); "; + + "order by(order_id)"; + try ( + Connection connection = dataSource.getConnection(); + Statement statement = connection.createStatement()) { + statement.executeUpdate(sql); + } + } + + /** + * create table in Hive. + * Hive does not support `AUTO_INCREMENT`, refer to HIVE-6905 . + * + * @throws SQLException SQL exception + */ + public void createTableIfNotExistsInHive() throws SQLException { + String sql = "CREATE TABLE IF NOT EXISTS t_order\n" + + "(\n" + + " order_id BIGINT,\n" + + " order_type INT,\n" + + " user_id INT NOT NULL,\n" + + " address_id BIGINT NOT NULL,\n" + + " status VARCHAR(50),\n" + + " PRIMARY KEY (order_id) disable novalidate\n" + + ") CLUSTERED BY (order_id) INTO 2 BUCKETS STORED AS ORC TBLPROPERTIES ('transactional'='true')"; try ( Connection connection = dataSource.getConnection(); Statement statement = connection.createStatement()) { @@ -234,7 +258,8 @@ public Long insert(final Order order) throws SQLException { } /** - * insert Order to table. + * insert Order to table. Databases like ClickHouse do not support returning auto generated keys after executing SQL, + * see ClickHouse/ClickHouse#56228 . * * @param order order * @param autoGeneratedKeys a flag indicating whether auto-generated keys @@ -263,17 +288,6 @@ public Long insert(final Order order, final int autoGeneratedKeys) throws SQLExc return order.getOrderId(); } - /** - * insert Order to table without auto generated key. Databases like ClickHouse do not support returning auto generated keys after executing SQL, - * see ClickHouse/ClickHouse#56228 . - * - * @param order order - * @throws SQLException SQL Exception - */ - public void insertWithoutAutoGeneratedKey(final Order order) throws SQLException { - insert(order, Statement.NO_GENERATED_KEYS); - } - /** * delete by orderId. * diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/ClickHouseTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/ClickHouseTest.java index 0c526f833d94df..6b2d46e673b712 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/ClickHouseTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/ClickHouseTest.java @@ -31,8 +31,8 @@ class ClickHouseTest { private TestShardingService testShardingService; /** - * TODO Need to fix `shardingsphere-parser-sql-clickhouse` module to use `testShardingService.cleanEnvironment()` - * after `testShardingService.processSuccessInClickHouse()`. + * TODO Need to fix `shardingsphere-parser-sql-clickhouse` module to use {@link TestShardingService#cleanEnvironment()} + * after {@link TestShardingService#processSuccessInClickHouse()}. * * @throws SQLException An exception that provides information on a database access error or other errors. */ @@ -49,7 +49,7 @@ void assertShardingInLocalTransactions() throws SQLException { /** * TODO Need to fix `shardingsphere-parser-sql-clickhouse` module to use `initEnvironment()` - * before `testShardingService.processSuccess()`. + * before {@link TestShardingService#processSuccessInClickHouse()}. * * @throws SQLException An exception that provides information on a database access error or other errors. */ @@ -57,7 +57,7 @@ void assertShardingInLocalTransactions() throws SQLException { private void initEnvironment() throws SQLException { testShardingService.getOrderRepository().createTableIfNotExistsInClickHouse(); testShardingService.getOrderItemRepository().createTableIfNotExistsInClickHouse(); - testShardingService.getAddressRepository().createTableIfNotExists(); + testShardingService.getAddressRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderRepository().truncateTable(); testShardingService.getOrderItemRepository().truncateTable(); testShardingService.getAddressRepository().truncateTable(); diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/HiveTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/HiveTest.java new file mode 100644 index 00000000000000..3588a1de858886 --- /dev/null +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/HiveTest.java @@ -0,0 +1,124 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.shardingsphere.test.natived.jdbc.databases; + +import com.zaxxer.hikari.HikariConfig; +import com.zaxxer.hikari.HikariDataSource; +import org.apache.shardingsphere.test.natived.jdbc.commons.TestShardingService; +import org.awaitility.Awaitility; +import org.junit.jupiter.api.Test; +import org.testcontainers.containers.GenericContainer; +import org.testcontainers.utility.DockerImageName; + +import javax.sql.DataSource; +import java.nio.file.Paths; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.time.Duration; +import java.util.Properties; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.nullValue; + +@SuppressWarnings("SqlDialectInspection") +class HiveTest { + + private static final String SYSTEM_PROP_KEY_PREFIX = "fixture.test-native.yaml.database.hive."; + + // Due to https://issues.apache.org/jira/browse/HIVE-5867 , the `initFile` parameter of HiveServer2 JDBC Driver must be an absolute path. + private static final String ABSOLUTE_PATH = Paths.get("src/test/resources/test-native/sql/test-native-databases-hive.sql").toAbsolutePath().normalize().toString(); + + private String jdbcUrlPrefix; + + private TestShardingService testShardingService; + + /** + * TODO Need to fix `shardingsphere-parser-sql-hive` module to use {@link TestShardingService#cleanEnvironment()} + * after {@link TestShardingService#processSuccessInHive()}. + * + * @throws SQLException An exception that provides information on a database access error or other errors. + */ + @Test + void assertShardingInLocalTransactions() throws SQLException { + try (GenericContainer container = new GenericContainer<>(DockerImageName.parse("apache/hive:4.0.0"))) { + container.withEnv("SERVICE_NAME", "hiveserver2") + .withExposedPorts(10000, 10002) + .start(); + jdbcUrlPrefix = "jdbc:hive2://localhost:" + container.getMappedPort(10000) + "/"; + DataSource dataSource = createDataSource(); + testShardingService = new TestShardingService(dataSource); + testShardingService.processSuccessInHive(); + } + } + + /** + * TODO Need to fix `shardingsphere-parser-sql-hive` module to use `initEnvironment()` before {@link TestShardingService#processSuccessInHive()}. + * + * @throws SQLException An exception that provides information on a database access error or other errors. + */ + @SuppressWarnings("unused") + private void initEnvironment() throws SQLException { + testShardingService.getOrderRepository().createTableIfNotExistsInHive(); + testShardingService.getOrderItemRepository().createTableIfNotExistsInHive(); + testShardingService.getAddressRepository().createTableIfNotExistsInHive(); + testShardingService.getOrderRepository().truncateTable(); + testShardingService.getOrderItemRepository().truncateTable(); + testShardingService.getAddressRepository().truncateTable(); + } + + private Connection openConnection() throws SQLException { + Properties props = new Properties(); + return DriverManager.getConnection(jdbcUrlPrefix, props); + } + + private DataSource createDataSource() throws SQLException { + Awaitility.await().atMost(Duration.ofMinutes(1L)).ignoreExceptions().until(() -> { + openConnection().close(); + return true; + }); + try ( + Connection connection = openConnection(); + Statement statement = connection.createStatement()) { + statement.execute("set metastore.compactor.initiator.on=true"); + statement.execute("set metastore.compactor.cleaner.on=true"); + statement.execute("set metastore.compactor.worker.threads=5"); + statement.executeUpdate("CREATE DATABASE demo_ds_0"); + statement.executeUpdate("CREATE DATABASE demo_ds_1"); + statement.executeUpdate("CREATE DATABASE demo_ds_2"); + } + HikariConfig config = new HikariConfig(); + config.setDriverClassName("org.apache.shardingsphere.driver.ShardingSphereDriver"); + config.setJdbcUrl("jdbc:shardingsphere:classpath:test-native/yaml/databases/hive.yaml?placeholder-type=system_props"); + try { + assertThat(System.getProperty(SYSTEM_PROP_KEY_PREFIX + "ds0.jdbc-url"), is(nullValue())); + assertThat(System.getProperty(SYSTEM_PROP_KEY_PREFIX + "ds1.jdbc-url"), is(nullValue())); + assertThat(System.getProperty(SYSTEM_PROP_KEY_PREFIX + "ds2.jdbc-url"), is(nullValue())); + System.setProperty(SYSTEM_PROP_KEY_PREFIX + "ds0.jdbc-url", jdbcUrlPrefix + "demo_ds_0" + ";initFile=" + ABSOLUTE_PATH); + System.setProperty(SYSTEM_PROP_KEY_PREFIX + "ds1.jdbc-url", jdbcUrlPrefix + "demo_ds_1" + ";initFile=" + ABSOLUTE_PATH); + System.setProperty(SYSTEM_PROP_KEY_PREFIX + "ds2.jdbc-url", jdbcUrlPrefix + "demo_ds_2" + ";initFile=" + ABSOLUTE_PATH); + return new HikariDataSource(config); + } finally { + System.clearProperty(SYSTEM_PROP_KEY_PREFIX + "ds0.jdbc-url"); + System.clearProperty(SYSTEM_PROP_KEY_PREFIX + "ds1.jdbc-url"); + System.clearProperty(SYSTEM_PROP_KEY_PREFIX + "ds2.jdbc-url"); + } + } +} diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/MySQLTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/MySQLTest.java index 7e1a53706d69d7..6737510ceb8fee 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/MySQLTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/MySQLTest.java @@ -31,6 +31,7 @@ import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; +import java.sql.Statement; import java.time.Duration; import java.util.Properties; @@ -78,7 +79,7 @@ void assertShardingInLocalTransactions() throws SQLException { private void initEnvironment() throws SQLException { testShardingService.getOrderRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderItemRepository().createTableIfNotExistsInMySQL(); - testShardingService.getAddressRepository().createTableIfNotExists(); + testShardingService.getAddressRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderRepository().truncateTable(); testShardingService.getOrderItemRepository().truncateTable(); testShardingService.getAddressRepository().truncateTable(); @@ -98,10 +99,12 @@ private DataSource createDataSource() { openConnection().close(); return true; }); - try (Connection connection = openConnection()) { - connection.createStatement().executeUpdate("CREATE DATABASE demo_ds_0;"); - connection.createStatement().executeUpdate("CREATE DATABASE demo_ds_1;"); - connection.createStatement().executeUpdate("CREATE DATABASE demo_ds_2;"); + try ( + Connection connection = openConnection(); + Statement statement = connection.createStatement()) { + statement.executeUpdate("CREATE DATABASE demo_ds_0"); + statement.executeUpdate("CREATE DATABASE demo_ds_1"); + statement.executeUpdate("CREATE DATABASE demo_ds_2"); } catch (final SQLException ex) { throw new RuntimeException(ex); } diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/OpenGaussTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/OpenGaussTest.java index edff542ce3e589..1f68af1efde6e2 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/OpenGaussTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/OpenGaussTest.java @@ -30,6 +30,7 @@ import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; +import java.sql.Statement; import java.time.Duration; import java.util.Properties; @@ -72,7 +73,7 @@ void assertShardingInLocalTransactions() throws SQLException { private void initEnvironment() throws SQLException { testShardingService.getOrderRepository().createTableIfNotExistsInPostgres(); testShardingService.getOrderItemRepository().createTableIfNotExistsInPostgres(); - testShardingService.getAddressRepository().createTableIfNotExists(); + testShardingService.getAddressRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderRepository().truncateTable(); testShardingService.getOrderItemRepository().truncateTable(); testShardingService.getAddressRepository().truncateTable(); @@ -91,10 +92,12 @@ private DataSource createDataSource() { openConnection().close(); return true; }); - try (Connection connection = openConnection()) { - connection.createStatement().executeUpdate("CREATE DATABASE demo_ds_0;"); - connection.createStatement().executeUpdate("CREATE DATABASE demo_ds_1;"); - connection.createStatement().executeUpdate("CREATE DATABASE demo_ds_2;"); + try ( + Connection connection = openConnection(); + Statement statement = connection.createStatement()) { + statement.executeUpdate("CREATE DATABASE demo_ds_0"); + statement.executeUpdate("CREATE DATABASE demo_ds_1"); + statement.executeUpdate("CREATE DATABASE demo_ds_2"); } catch (final SQLException ex) { throw new RuntimeException(ex); } diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/PostgresTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/PostgresTest.java index a9852c3ca31dac..f2fd80218fbd08 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/PostgresTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/databases/PostgresTest.java @@ -46,7 +46,7 @@ void assertShardingInLocalTransactions() throws SQLException { private void initEnvironment() throws SQLException { testShardingService.getOrderRepository().createTableIfNotExistsInPostgres(); testShardingService.getOrderItemRepository().createTableIfNotExistsInPostgres(); - testShardingService.getAddressRepository().createTableIfNotExists(); + testShardingService.getAddressRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderRepository().truncateTable(); testShardingService.getOrderItemRepository().truncateTable(); testShardingService.getAddressRepository().truncateTable(); diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/EncryptTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/EncryptTest.java index bd6a2874ce42f1..31565acf931981 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/EncryptTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/EncryptTest.java @@ -63,7 +63,7 @@ void assertEncryptInLocalTransactions() throws SQLException { private void initEnvironment() throws SQLException { orderRepository.createTableIfNotExistsInMySQL(); orderItemRepository.createTableIfNotExistsInMySQL(); - addressRepository.createTableIfNotExists(); + addressRepository.createTableIfNotExistsInMySQL(); orderRepository.truncateTable(); orderItemRepository.truncateTable(); addressRepository.truncateTable(); diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/MaskTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/MaskTest.java index f6fbd6320c48cf..660719488731ca 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/MaskTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/MaskTest.java @@ -64,7 +64,7 @@ void assertMaskInLocalTransactions() throws SQLException { private void initEnvironment() throws SQLException { orderRepository.createTableIfNotExistsInMySQL(); orderItemRepository.createTableIfNotExistsInMySQL(); - addressRepository.createTableIfNotExists(); + addressRepository.createTableIfNotExistsInMySQL(); orderRepository.truncateTable(); orderItemRepository.truncateTable(); addressRepository.truncateTable(); diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ReadWriteSplittingTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ReadWriteSplittingTest.java index d2c52b66a6556a..2bb48c20d21a93 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ReadWriteSplittingTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ReadWriteSplittingTest.java @@ -60,7 +60,7 @@ void assertReadWriteSplittingInLocalTransactions() throws SQLException { private void initEnvironment() throws SQLException { orderRepository.createTableIfNotExistsInMySQL(); orderItemRepository.createTableIfNotExistsInMySQL(); - addressRepository.createTableIfNotExists(); + addressRepository.createTableIfNotExistsInMySQL(); orderRepository.truncateTable(); orderItemRepository.truncateTable(); addressRepository.truncateTable(); diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ShadowTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ShadowTest.java index f195e623f0f00e..c7e29830dccf9e 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ShadowTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ShadowTest.java @@ -64,7 +64,7 @@ void assertShadowInLocalTransactions() throws SQLException { private void initEnvironment() throws SQLException { orderRepository.createTableIfNotExistsInMySQL(); orderItemRepository.createTableIfNotExistsInMySQL(); - addressRepository.createTableIfNotExists(); + addressRepository.createTableIfNotExistsInMySQL(); orderRepository.truncateTable(); orderItemRepository.truncateTable(); addressRepository.truncateTable(); diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ShardingTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ShardingTest.java index 99d18af28438bf..32efaef02140c7 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ShardingTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/features/ShardingTest.java @@ -44,7 +44,7 @@ void assertShardingInLocalTransactions() throws SQLException { private void initEnvironment() throws SQLException { testShardingService.getOrderRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderItemRepository().createTableIfNotExistsInMySQL(); - testShardingService.getAddressRepository().createTableIfNotExists(); + testShardingService.getAddressRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderRepository().truncateTable(); testShardingService.getOrderItemRepository().truncateTable(); testShardingService.getAddressRepository().truncateTable(); diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/modes/cluster/EtcdTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/modes/cluster/EtcdTest.java index 325047d48ff760..f8ceff784eb38e 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/modes/cluster/EtcdTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/modes/cluster/EtcdTest.java @@ -21,19 +21,12 @@ import com.zaxxer.hikari.HikariDataSource; import io.etcd.jetcd.launcher.Etcd; import io.etcd.jetcd.launcher.EtcdCluster; -import org.apache.hc.client5.http.classic.methods.HttpGet; -import org.apache.hc.client5.http.impl.classic.CloseableHttpClient; -import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse; -import org.apache.hc.client5.http.impl.classic.HttpClients; -import org.apache.hc.core5.http.HttpStatus; -import org.apache.hc.core5.http.io.entity.EntityUtils; import org.apache.shardingsphere.test.natived.jdbc.commons.TestShardingService; import org.awaitility.Awaitility; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.EnabledInNativeImage; import javax.sql.DataSource; -import java.io.IOException; import java.net.URI; import java.sql.SQLException; import java.time.Duration; @@ -80,7 +73,7 @@ void assertShardingInLocalTransactions() throws SQLException { private void initEnvironment() throws SQLException { testShardingService.getOrderRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderItemRepository().createTableIfNotExistsInMySQL(); - testShardingService.getAddressRepository().createTableIfNotExists(); + testShardingService.getAddressRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderRepository().truncateTable(); testShardingService.getOrderItemRepository().truncateTable(); testShardingService.getAddressRepository().truncateTable(); @@ -88,7 +81,6 @@ private void initEnvironment() throws SQLException { private DataSource createDataSource(final List clientEndpoints) { URI clientEndpoint = clientEndpoints.get(0); - Awaitility.await().atMost(Duration.ofSeconds(30L)).ignoreExceptions().until(() -> verifyEtcdClusterRunning(clientEndpoint)); HikariConfig config = new HikariConfig(); config.setDriverClassName("org.apache.shardingsphere.driver.ShardingSphereDriver"); config.setJdbcUrl("jdbc:shardingsphere:classpath:test-native/yaml/modes/cluster/etcd.yaml?placeholder-type=system_props"); @@ -100,18 +92,4 @@ private DataSource createDataSource(final List clientEndpoints) { System.clearProperty(SYSTEM_PROP_KEY_PREFIX + "server-lists"); } } - - private Boolean verifyEtcdClusterRunning(final URI clientEndpoint) throws IOException { - boolean flag = false; - HttpGet httpGet = new HttpGet(clientEndpoint.toString() + "/health"); - try ( - CloseableHttpClient httpclient = HttpClients.createDefault(); - CloseableHttpResponse response = httpclient.execute(httpGet)) { - if (HttpStatus.SC_OK == response.getCode()) { - flag = true; - } - EntityUtils.consume(response.getEntity()); - } - return flag; - } } diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/modes/cluster/ZookeeperTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/modes/cluster/ZookeeperTest.java index 9c9d1d5617cefe..88836303e1a26c 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/modes/cluster/ZookeeperTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/modes/cluster/ZookeeperTest.java @@ -68,7 +68,7 @@ void assertShardingInLocalTransactions() throws Exception { private void initEnvironment() throws SQLException { testShardingService.getOrderRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderItemRepository().createTableIfNotExistsInMySQL(); - testShardingService.getAddressRepository().createTableIfNotExists(); + testShardingService.getAddressRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderRepository().truncateTable(); testShardingService.getOrderItemRepository().truncateTable(); testShardingService.getAddressRepository().truncateTable(); diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/base/SeataTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/base/SeataTest.java index b3f0b73301adec..b0b4d4d44ddaa9 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/base/SeataTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/base/SeataTest.java @@ -19,7 +19,7 @@ import com.zaxxer.hikari.HikariConfig; import com.zaxxer.hikari.HikariDataSource; -import org.apache.hc.core5.http.HttpStatus; +import org.apache.http.HttpStatus; import org.apache.shardingsphere.test.natived.jdbc.commons.TestShardingService; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.EnabledInNativeImage; @@ -60,7 +60,7 @@ void assertShardingInSeataTransactions() throws SQLException { private void initEnvironment() throws SQLException { testShardingService.getOrderRepository().createTableIfNotExistsInPostgres(); testShardingService.getOrderItemRepository().createTableIfNotExistsInPostgres(); - testShardingService.getAddressRepository().createTableIfNotExists(); + testShardingService.getAddressRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderRepository().truncateTable(); testShardingService.getOrderItemRepository().truncateTable(); testShardingService.getAddressRepository().truncateTable(); diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/xa/AtomikosTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/xa/AtomikosTest.java index 9df766bec81e61..141c4f87d6dfe1 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/xa/AtomikosTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/xa/AtomikosTest.java @@ -44,7 +44,7 @@ void assertShardingInAtomikosTransactions() throws SQLException { private void initEnvironment() throws SQLException { testShardingService.getOrderRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderItemRepository().createTableIfNotExistsInMySQL(); - testShardingService.getAddressRepository().createTableIfNotExists(); + testShardingService.getAddressRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderRepository().truncateTable(); testShardingService.getOrderItemRepository().truncateTable(); testShardingService.getAddressRepository().truncateTable(); diff --git a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/xa/NarayanaTest.java b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/xa/NarayanaTest.java index 87993a52150993..ba7103fd8851a2 100644 --- a/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/xa/NarayanaTest.java +++ b/test/native/src/test/java/org/apache/shardingsphere/test/natived/jdbc/transactions/xa/NarayanaTest.java @@ -47,7 +47,7 @@ void assertShardingInNarayanaTransactions() throws SQLException, CoreEnvironment private void initEnvironment() throws SQLException { testShardingService.getOrderRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderItemRepository().createTableIfNotExistsInMySQL(); - testShardingService.getAddressRepository().createTableIfNotExists(); + testShardingService.getAddressRepository().createTableIfNotExistsInMySQL(); testShardingService.getOrderRepository().truncateTable(); testShardingService.getOrderItemRepository().truncateTable(); testShardingService.getAddressRepository().truncateTable(); diff --git a/test/native/src/test/resources/test-native/sql/test-native-databases-hive.sql b/test/native/src/test/resources/test-native/sql/test-native-databases-hive.sql new file mode 100644 index 00000000000000..d23900f7d799c0 --- /dev/null +++ b/test/native/src/test/resources/test-native/sql/test-native-databases-hive.sql @@ -0,0 +1,54 @@ +-- +-- Licensed to the Apache Software Foundation (ASF) under one or more +-- contributor license agreements. See the NOTICE file distributed with +-- this work for additional information regarding copyright ownership. +-- The ASF licenses this file to You under the Apache License, Version 2.0 +-- (the "License"); you may not use this file except in compliance with +-- the License. You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an "AS IS" BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. +-- + + +-- TODO To execute SQL like `DELETE FROM t_address WHERE address_id=?`, we always need to execute the following Hive Session-level SQL in the current `javax.sql.DataSource`. +-- `shardingsphere-parser-sql-hive` module does not support `CREATE`, `SET`, `TRUNCATE` statements yet. +set hive.support.concurrency=true; +set hive.exec.dynamic.partition.mode=nonstrict; +set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager; + +CREATE TABLE IF NOT EXISTS t_order +( + order_id BIGINT, + order_type INT, + user_id INT NOT NULL, + address_id BIGINT NOT NULL, + status VARCHAR(50), + PRIMARY KEY (order_id) disable novalidate +) CLUSTERED BY (order_id) INTO 2 BUCKETS STORED AS ORC TBLPROPERTIES ('transactional' = 'true'); + +CREATE TABLE IF NOT EXISTS t_order_item +( + order_item_id BIGINT, + order_id BIGINT NOT NULL, + user_id INT NOT NULL, + phone VARCHAR(50), + status VARCHAR(50), + PRIMARY KEY (order_item_id) disable novalidate +) CLUSTERED BY (order_item_id) INTO 2 BUCKETS STORED AS ORC TBLPROPERTIES ('transactional' = 'true'); + +CREATE TABLE IF NOT EXISTS t_address +( + address_id BIGINT NOT NULL, + address_name VARCHAR(100) NOT NULL, + PRIMARY KEY (address_id) disable novalidate +) CLUSTERED BY (address_id) INTO 2 BUCKETS STORED AS ORC TBLPROPERTIES ('transactional' = 'true'); + +TRUNCATE TABLE t_order; +TRUNCATE TABLE t_order_item; +TRUNCATE TABLE t_address; diff --git a/test/native/src/test/resources/test-native/yaml/databases/hive.yaml b/test/native/src/test/resources/test-native/yaml/databases/hive.yaml new file mode 100644 index 00000000000000..c44cd303bb3bc5 --- /dev/null +++ b/test/native/src/test/resources/test-native/yaml/databases/hive.yaml @@ -0,0 +1,72 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +mode: + type: Standalone + repository: + type: JDBC + +dataSources: + ds_0: + dataSourceClassName: com.zaxxer.hikari.HikariDataSource + driverClassName: org.apache.hive.jdbc.HiveDriver + jdbcUrl: $${fixture.test-native.yaml.database.hive.ds0.jdbc-url::} + ds_1: + dataSourceClassName: com.zaxxer.hikari.HikariDataSource + driverClassName: org.apache.hive.jdbc.HiveDriver + jdbcUrl: $${fixture.test-native.yaml.database.hive.ds1.jdbc-url::} + ds_2: + dataSourceClassName: com.zaxxer.hikari.HikariDataSource + driverClassName: org.apache.hive.jdbc.HiveDriver + jdbcUrl: $${fixture.test-native.yaml.database.hive.ds2.jdbc-url::} + +rules: +- !SHARDING + tables: + t_order: + actualDataNodes: + keyGenerateStrategy: + column: order_id + keyGeneratorName: snowflake + t_order_item: + actualDataNodes: + keyGenerateStrategy: + column: order_item_id + keyGeneratorName: snowflake + defaultDatabaseStrategy: + standard: + shardingColumn: user_id + shardingAlgorithmName: inline + shardingAlgorithms: + inline: + type: CLASS_BASED + props: + strategy: STANDARD + algorithmClassName: org.apache.shardingsphere.test.natived.jdbc.commons.algorithm.ClassBasedInlineShardingAlgorithmFixture + keyGenerators: + snowflake: + type: SNOWFLAKE + auditors: + sharding_key_required_auditor: + type: DML_SHARDING_CONDITIONS + +- !BROADCAST + tables: + - t_address + +props: + sql-show: false