mirror of
https://gitee.com/durcframework/SOP.git
synced 2025-08-11 12:56:28 +08:00
优化dubbo filter
This commit is contained in:
@@ -15,11 +15,6 @@
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.alibaba</groupId>
|
||||
<artifactId>transmittable-thread-local</artifactId>
|
||||
<version>2.14.5</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.dubbo</groupId>
|
||||
<artifactId>dubbo</artifactId>
|
||||
|
@@ -1,7 +1,5 @@
|
||||
package com.gitee.sop.support.context;
|
||||
|
||||
import com.alibaba.ttl.TransmittableThreadLocal;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
/**
|
||||
@@ -9,7 +7,7 @@ import java.util.Locale;
|
||||
*/
|
||||
public abstract class OpenContext {
|
||||
|
||||
private static final ThreadLocal<OpenContext> THREAD_LOCAL = new TransmittableThreadLocal<>();
|
||||
private static final ThreadLocal<OpenContext> THREAD_LOCAL = new InheritableThreadLocal<>();
|
||||
|
||||
/**
|
||||
* 获取appId
|
||||
|
@@ -1,7 +1,5 @@
|
||||
package com.gitee.sop.support.context;
|
||||
|
||||
import com.alibaba.ttl.TransmittableThreadLocal;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
@@ -11,7 +9,7 @@ import java.util.Map;
|
||||
*/
|
||||
public abstract class WebContext {
|
||||
|
||||
private static final ThreadLocal<WebContext> THREAD_LOCAL = new TransmittableThreadLocal<>();
|
||||
private static final ThreadLocal<WebContext> THREAD_LOCAL = new InheritableThreadLocal<>();
|
||||
|
||||
|
||||
public abstract String getMethod();
|
||||
|
@@ -0,0 +1,34 @@
|
||||
package com.gitee.sop.support.dubbo;
|
||||
|
||||
import com.gitee.sop.support.constant.SopConstants;
|
||||
import org.apache.dubbo.rpc.Invocation;
|
||||
import org.apache.dubbo.rpc.PenetrateAttachmentSelector;
|
||||
import org.apache.dubbo.rpc.RpcContextAttachment;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author 六如
|
||||
*/
|
||||
public class SopPenetrateAttachmentSelector implements PenetrateAttachmentSelector {
|
||||
@Override
|
||||
public Map<String, Object> select(Invocation invocation, RpcContextAttachment clientAttachment, RpcContextAttachment serverAttachment) {
|
||||
Map<String, Object> map = new HashMap<>(4);
|
||||
Object openContext = serverAttachment.getObjectAttachment(SopConstants.OPEN_CONTEXT);
|
||||
if (openContext != null) {
|
||||
map.put(SopConstants.OPEN_CONTEXT, openContext);
|
||||
}
|
||||
Object webContext = serverAttachment.getObjectAttachment(SopConstants.WEB_CONTEXT);
|
||||
if (webContext != null) {
|
||||
map.put(SopConstants.WEB_CONTEXT, webContext);
|
||||
}
|
||||
return map;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> selectReverse(Invocation invocation, RpcContextAttachment clientResponseContext, RpcContextAttachment serverResponseContext) {
|
||||
return Collections.emptyMap();
|
||||
}
|
||||
}
|
@@ -0,0 +1 @@
|
||||
sopPenetrateAttachmentSelector=com.gitee.sop.support.dubbo.SopPenetrateAttachmentSelector
|
Reference in New Issue
Block a user