Merge branch 'v3.0.0'
diff --git a/packages/dubbo/src/directly-dubbo.ts b/packages/dubbo/src/directly-dubbo.ts
index 99a7b93..1c2250c 100644
--- a/packages/dubbo/src/directly-dubbo.ts
+++ b/packages/dubbo/src/directly-dubbo.ts
@@ -81,10 +81,17 @@
}
proxyService<T extends Object>(invokeParam: IInvokeParam): T {
- const {dubboInterface, methods, timeout, group, version} = invokeParam;
+ const {
+ dubboInterface,
+ methods,
+ timeout,
+ group,
+ version,
+ attachments = {},
+ } = invokeParam;
const proxy = Object.create(null);
- Object.keys(methods).forEach(methodName => {
+ Object.keys(methods).forEach((methodName) => {
proxy[methodName] = (...args: Array<IHessianType>) => {
return go(
new Promise((resolve, reject) => {
@@ -102,6 +109,7 @@
ctx.group = group;
ctx.timeout = timeout;
ctx.version = version;
+ ctx.attachments = attachments;
//check param
//param should be hessian data type
diff --git a/packages/dubbo/src/types.ts b/packages/dubbo/src/types.ts
index 13c75f9..9da0c8c 100644
--- a/packages/dubbo/src/types.ts
+++ b/packages/dubbo/src/types.ts
@@ -75,6 +75,7 @@
group?: string;
version?: string;
timeout?: number;
+ attachments?: object;
}
export interface IDubboProps {
@@ -109,6 +110,7 @@
timeout?: number;
group?: string;
methods: {[methodName: string]: Function};
+ attachment: object;
}
// zookeeper acl shemes must be one of [ 'world', 'ip', 'host', 'auth', 'digest' ]