This is an automated email from the ASF dual-hosted git repository.

guohao pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/dubbo.git


The following commit(s) were added to refs/heads/3.0 by this push:
     new bb273ff  [ISSUE#8961] Inject applicationModel into TripleHttp2Protocol 
by ScopeModelAware (#8984)
bb273ff is described below

commit bb273ff86932de5cfb806a6c1b7a1ea5abe73c28
Author: plusmancn <[email protected]>
AuthorDate: Sat Oct 9 11:00:25 2021 +0800

    [ISSUE#8961] Inject applicationModel into TripleHttp2Protocol by 
ScopeModelAware (#8984)
    
    * feat: add ApplicationModelAware in TripleHttp2Protocol
    
    * fix: stop the DubboBootstrap instance in ConfigTest
    
    * chore: invoke ci again
    
    * test: clean resource after testDisableShutdownHook
---
 .../test/java/org/apache/dubbo/config/spring/ConfigTest.java  |  1 +
 .../java/org/apache/dubbo/config/spring/ShutdownHookTest.java |  1 +
 .../apache/dubbo/rpc/protocol/tri/TripleHttp2Protocol.java    | 11 +++++++++--
 3 files changed, 11 insertions(+), 2 deletions(-)

diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ConfigTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ConfigTest.java
index 83104fc..ff03bd8 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ConfigTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ConfigTest.java
@@ -845,6 +845,7 @@ public class ConfigTest {
             assertEquals(1234, defaultConsumer.getTimeout());
             assertEquals(false, defaultConsumer.isCheck());
         } finally {
+            // If we don't stop here, somewhere else will throw 
BeanCreationException of duplication.
             DubboBootstrap.getInstance().stop();
         }
     }
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ShutdownHookTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ShutdownHookTest.java
index 2612ad7..2516b51 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ShutdownHookTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/ShutdownHookTest.java
@@ -62,6 +62,7 @@ public class ShutdownHookTest {
             Assertions.assertEquals(true, 
DubboBootstrap.getInstance().isStarted());
             Assertions.assertEquals(false, 
DubboBootstrap.getInstance().isStopped());
         } finally {
+            DubboBootstrap.getInstance().stop();
             SysProps.clear();
         }
     }
diff --git 
a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleHttp2Protocol.java
 
b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleHttp2Protocol.java
index 455175d..e815521 100644
--- 
a/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleHttp2Protocol.java
+++ 
b/dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/TripleHttp2Protocol.java
@@ -21,6 +21,7 @@ import org.apache.dubbo.common.config.Configuration;
 import org.apache.dubbo.common.config.ConfigurationUtils;
 import org.apache.dubbo.common.extension.Activate;
 import org.apache.dubbo.remoting.api.Http2WireProtocol;
+import org.apache.dubbo.rpc.model.ApplicationModel;
 import org.apache.dubbo.rpc.model.FrameworkModel;
 import org.apache.dubbo.rpc.model.ScopeModelAware;
 
@@ -41,6 +42,7 @@ import static 
org.apache.dubbo.rpc.Constants.H2_SETTINGS_MAX_HEADER_LIST_SIZE_KE
 @Activate
 public class TripleHttp2Protocol extends Http2WireProtocol implements 
ScopeModelAware {
     private FrameworkModel frameworkModel;
+    private ApplicationModel applicationModel;
 
     @Override
     public void setFrameworkModel(FrameworkModel frameworkModel) {
@@ -48,13 +50,18 @@ public class TripleHttp2Protocol extends Http2WireProtocol 
implements ScopeModel
     }
 
     @Override
+    public void setApplicationModel(ApplicationModel applicationModel) {
+        this.applicationModel = applicationModel;
+    }
+
+    @Override
     public void close() {
         super.close();
     }
 
     @Override
     public void configServerPipeline(URL url, ChannelPipeline pipeline, 
SslContext sslContext) {
-        final Configuration config = 
ConfigurationUtils.getGlobalConfiguration(url.getScopeModel());
+        final Configuration config = 
ConfigurationUtils.getGlobalConfiguration(applicationModel);
         final Http2FrameCodec codec = Http2FrameCodecBuilder.forServer()
                 .gracefulShutdownTimeoutMillis(10000)
                 .initialSettings(new Http2Settings()
@@ -71,7 +78,7 @@ public class TripleHttp2Protocol extends Http2WireProtocol 
implements ScopeModel
 
     @Override
     public void configClientPipeline(URL url, ChannelPipeline pipeline, 
SslContext sslContext) {
-        final Configuration config = 
ConfigurationUtils.getGlobalConfiguration(url.getScopeModel());
+        final Configuration config = 
ConfigurationUtils.getGlobalConfiguration(applicationModel);
         final Http2FrameCodec codec = Http2FrameCodecBuilder.forClient()
                 .gracefulShutdownTimeoutMillis(10000)
                 .initialSettings(new Http2Settings()

Reply via email to