This is an automated email from the ASF dual-hosted git repository. albumenj pushed a commit to branch 3.2 in repository https://gitbox.apache.org/repos/asf/dubbo.git
commit 8e3af257b1358b8484511f0a28c9ff78ac363bb6 Merge: 14f2d79693 d0a1bd0143 Author: Albumen Kevin <[email protected]> AuthorDate: Fri Mar 10 16:54:15 2023 +0800 Merge branch 'apache-3.1' into apache-3.2 # Conflicts: # dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java .../apache/dubbo/config/ReferenceConfigTest.java | 10 ++- .../dubbo/rpc/protocol/InvokerCountWrapper.java | 57 ++++++++++++++ .../rpc/protocol/ReferenceCountInvokerWrapper.java | 87 ++++++++++++++++++++++ .../dubbo/internal/org.apache.dubbo.rpc.Protocol | 1 + 4 files changed, 151 insertions(+), 4 deletions(-) diff --cc dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java index e810e35af9,815b6800e0..5e9f49c822 --- a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java +++ b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java @@@ -480,20 -480,11 +481,21 @@@ class ReferenceConfigTest referenceConfig.init(); Assertions.assertTrue(referenceConfig.getInvoker() instanceof MockClusterInvoker); - Invoker<?> withFilter = ((MockClusterInvoker<?>) referenceConfig.getInvoker()).getDirectory().getAllInvokers().get(0); - Assertions.assertTrue(withFilter instanceof ListenerInvokerWrapper + Invoker<?> withCount = ((MockClusterInvoker<?>) referenceConfig.getInvoker()).getDirectory().getAllInvokers().get(0); + Assertions.assertTrue(withCount instanceof ReferenceCountInvokerWrapper); - Assertions.assertTrue(((ReferenceCountInvokerWrapper<?>) withCount).getInvoker() instanceof ListenerInvokerWrapper); - Assertions.assertTrue(((ListenerInvokerWrapper<?>)(((ReferenceCountInvokerWrapper<?>) withCount).getInvoker())).getInvoker() instanceof InjvmInvoker); ++ Assertions.assertTrue(((ReferenceCountInvokerWrapper<?>) withCount).getInvoker() instanceof ListenerInvokerWrapper + || withFilter instanceof FilterChainBuilder.CallbackRegistrationInvoker); + if (withFilter instanceof ListenerInvokerWrapper) { - Assertions.assertTrue(((ListenerInvokerWrapper<?>) withFilter).getInvoker() instanceof InjvmInvoker); ++ Assertions.assertTrue(((ListenerInvokerWrapper<?>)(((ReferenceCountInvokerWrapper<?>) withCount).getInvoker())).getInvoker() instanceof InjvmInvoker); + } + if (withFilter instanceof FilterChainBuilder.CallbackRegistrationInvoker) { + Invoker filterInvoker = ((FilterChainBuilder.CallbackRegistrationInvoker) withFilter).getFilterInvoker(); + FilterChainBuilder.CopyOfFilterChainNode filterInvoker1 = (FilterChainBuilder.CopyOfFilterChainNode) filterInvoker; + ListenerInvokerWrapper originalInvoker = (ListenerInvokerWrapper) filterInvoker1.getOriginalInvoker(); + Invoker invoker = originalInvoker.getInvoker(); + Assertions.assertTrue(invoker instanceof InjvmInvoker); + } - URL url = withFilter.getUrl(); + URL url = withCount.getUrl(); Assertions.assertEquals("application1", url.getParameter("application")); Assertions.assertEquals("value1", url.getParameter("key1")); Assertions.assertEquals("value2", url.getParameter("key2"));
