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"));

Reply via email to