ddm-plugin-dubbo-support 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -201
- package/README.md +49 -49
- package/dist/index.js +70 -42
- package/dist/renderer.js +208 -74
- package/package.json +144 -51
- package/dist/renderIndex.js +0 -292
- package/public/.DS_Store +0 -0
- package/public/jar/.DS_Store +0 -0
package/dist/index.js
CHANGED
|
@@ -29,12 +29,12 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
class TelnetInvoker {
|
|
32
|
-
/**
|
|
33
|
-
* 调用Dubbo接口
|
|
34
|
-
* @param {Provider} provder 提供者信息
|
|
35
|
-
* @param {*} methodInfo 方法名
|
|
36
|
-
* @param {*} code 参数信息
|
|
37
|
-
* @returns
|
|
32
|
+
/**
|
|
33
|
+
* 调用Dubbo接口
|
|
34
|
+
* @param {Provider} provder 提供者信息
|
|
35
|
+
* @param {*} methodInfo 方法名
|
|
36
|
+
* @param {*} code 参数信息
|
|
37
|
+
* @returns
|
|
38
38
|
*/
|
|
39
39
|
invokeMethod(provder, methodInfo, code) {
|
|
40
40
|
const telnetPort = provder.qosPort || provder.port;
|
|
@@ -88,16 +88,16 @@ class TelnetInvoker {
|
|
|
88
88
|
});
|
|
89
89
|
tSocket.write(_common_TelnetUtils_js__WEBPACK_IMPORTED_MODULE_5__["default"].buildInvokeCommand({
|
|
90
90
|
serviceName,
|
|
91
|
-
method: methodInfo.
|
|
91
|
+
method: methodInfo.methodName,
|
|
92
92
|
params
|
|
93
93
|
}));
|
|
94
94
|
});
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
/**
|
|
98
|
-
* 解析响应信息
|
|
99
|
-
* @param {String} result
|
|
100
|
-
* @returns
|
|
97
|
+
/**
|
|
98
|
+
* 解析响应信息
|
|
99
|
+
* @param {String} result
|
|
100
|
+
* @returns
|
|
101
101
|
*/
|
|
102
102
|
resolveResponse(result) {
|
|
103
103
|
// dubbo返回格式分为三部分,第一部分为
|
|
@@ -661,7 +661,7 @@ class AppProxy {
|
|
|
661
661
|
/***/ ((module) => {
|
|
662
662
|
|
|
663
663
|
"use strict";
|
|
664
|
-
module.exports = /*#__PURE__*/JSON.parse('{"name":"ddm-plugin-dubbo-support","version":"0.0.
|
|
664
|
+
module.exports = /*#__PURE__*/JSON.parse('{"name":"ddm-plugin-dubbo-support","version":"0.0.6","description":"Dubbo-Desktop-Manager插件-支持Dubbo框架","main":"dist/index.js","rendererMain":"dist/renderer.js","i18nMain":"dist/i18n.js","files":["README.md","logo.png","public/**","dist/**","docs/**","java-invoke/**"],"scripts":{"dev":"webpack","gen:keywords":"node ./scripts/gen-keywords.js","prepublishOnly":"npm run gen:keywords","publish":"webpack && npm publish"},"keywords":["Dubbo-Desktop-Manager","ddm-plugin","ddm","dubbo","dubbo service invoke","dubbo manager","dubbo console","dubbo admin","-","-s","-su","-sup","-supp","-suppo","-suppor","-support","b","bb","bbo","bbo-","bbo-s","bbo-su","bbo-sup","bbo-supp","bbo-suppo","bbo-suppor","bbo-support","bo","bo-","bo-s","bo-su","bo-sup","bo-supp","bo-suppo","bo-suppor","bo-support","d","du","dub","dubb","dubbo-","dubbo-s","dubbo-su","dubbo-sup","dubbo-supp","dubbo-suppo","dubbo-suppor","dubbo-support","o","o-","o-s","o-su","o-sup","o-supp","o-suppo","o-suppor","o-support","or","ort","p","po","por","port","pp","ppo","ppor","pport","r","rt","s","su","sup","supp","suppo","suppor","support","t","u","ub","ubb","ubbo","ubbo-","ubbo-s","ubbo-su","ubbo-sup","ubbo-supp","ubbo-suppo","ubbo-suppor","ubbo-support","up","upp","uppo","uppor","upport"],"homepage":"https://github.com/ddm-plugin/ddm-plugin-dubbo-support","author":"qiaolin","license":"Apache 2.0","devDependencies":{"@babel/core":"^7.24.7","babel-cli":"^6.26.0","babel-loader":"^8.2.5","css-loader":"^6.11.0","js-yaml":"^4.1.0","json-bigint":"^1.0.0","moment":"^2.29.1","node-zookeeper-client":"^1.1.1","qs":"^6.11.0","style-loader":"^3.3.4","telnet-stream":"^1.0.5","urijs":"^1.19.11","vue":"^2.6.11","vue-loader":"15.11.1","vue-style-loader":"^4.1.3","vue-template-compiler":"^2.6.11","webpack":"^5.92.1","webpack-cli":"^5.1.4"},"engines":{"ddm":">=1.1.0 <3.0.0"}}');
|
|
665
665
|
|
|
666
666
|
/***/ }),
|
|
667
667
|
/* 16 */
|
|
@@ -4505,10 +4505,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
4505
4505
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
4506
4506
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
4507
4507
|
/* harmony export */ });
|
|
4508
|
-
/**
|
|
4509
|
-
* 执行结果
|
|
4510
|
-
* @param {String}} data 响应的数据
|
|
4511
|
-
* @param {*} elapsedTime 耗时
|
|
4508
|
+
/**
|
|
4509
|
+
* 执行结果
|
|
4510
|
+
* @param {String}} data 响应的数据
|
|
4511
|
+
* @param {*} elapsedTime 耗时
|
|
4512
4512
|
*/
|
|
4513
4513
|
class InvokeResult {
|
|
4514
4514
|
constructor(data, elapsedTime) {
|
|
@@ -4529,8 +4529,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
4529
4529
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
4530
4530
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
4531
4531
|
/* harmony export */ });
|
|
4532
|
-
/**
|
|
4533
|
-
* 构建invoke命令
|
|
4532
|
+
/**
|
|
4533
|
+
* 构建invoke命令
|
|
4534
4534
|
*/
|
|
4535
4535
|
function buildInvokeCommand({
|
|
4536
4536
|
serviceName,
|
|
@@ -4607,7 +4607,7 @@ class JavaInvoker {
|
|
|
4607
4607
|
protocol: provder.protocol,
|
|
4608
4608
|
address: `${ip}:${port}`,
|
|
4609
4609
|
version: provder.version,
|
|
4610
|
-
method: methodInfo.
|
|
4610
|
+
method: methodInfo.methodName,
|
|
4611
4611
|
argsList: this.getMethodParameterTypes(methodInfo),
|
|
4612
4612
|
dataList: dataList
|
|
4613
4613
|
};
|
|
@@ -4781,6 +4781,8 @@ class ZookeeperDataSource {
|
|
|
4781
4781
|
metadata.methods.forEach(method => {
|
|
4782
4782
|
methodList.push({
|
|
4783
4783
|
...method,
|
|
4784
|
+
name: `${method.name}(${method.parameterTypes.map(pp => pp.substring(pp.lastIndexOf(".") + 1))})`,
|
|
4785
|
+
methodName: method.name,
|
|
4784
4786
|
defaultParameter: JSON.stringify(_main_generator_ParamGeneratorAdapter__WEBPACK_IMPORTED_MODULE_5__["default"].generateParam(metadata, method.name), null, 2) || "[]"
|
|
4785
4787
|
});
|
|
4786
4788
|
});
|
|
@@ -4864,7 +4866,7 @@ class ZookeeperDataSource {
|
|
|
4864
4866
|
weight: urlData.params.weight,
|
|
4865
4867
|
deprecated: urlData.params.deprecated,
|
|
4866
4868
|
protocol: urlData.protocol,
|
|
4867
|
-
methods: urlData.params.methods.split(","),
|
|
4869
|
+
methods: Array.from(new Set((urlData.params.methods || "").split(",").filter(Boolean))),
|
|
4868
4870
|
generic: urlData.params.generic,
|
|
4869
4871
|
providerVersion: urlData.params.revision,
|
|
4870
4872
|
dubboVersion: urlData.params.release,
|
|
@@ -27032,10 +27034,10 @@ class DubboConfigurationUtils {
|
|
|
27032
27034
|
return doc;
|
|
27033
27035
|
}
|
|
27034
27036
|
|
|
27035
|
-
/**
|
|
27036
|
-
* 获取被禁用的提供者地址列表
|
|
27037
|
-
* @param {string} serviceName
|
|
27038
|
-
* @param {string[]} versions 多个版本
|
|
27037
|
+
/**
|
|
27038
|
+
* 获取被禁用的提供者地址列表
|
|
27039
|
+
* @param {string} serviceName
|
|
27040
|
+
* @param {string[]} versions 多个版本
|
|
27039
27041
|
*/
|
|
27040
27042
|
async getDisableAddresses(doc) {
|
|
27041
27043
|
if (!doc || !doc.configs) {
|
|
@@ -27072,8 +27074,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
27072
27074
|
|
|
27073
27075
|
|
|
27074
27076
|
class ParamGeneratorAdapter {
|
|
27075
|
-
/**
|
|
27076
|
-
* 生成参数
|
|
27077
|
+
/**
|
|
27078
|
+
* 生成参数
|
|
27077
27079
|
*/
|
|
27078
27080
|
generateParam(mateData, methodName) {
|
|
27079
27081
|
// 当前提供者使用的dubbo版本
|
|
@@ -27098,12 +27100,12 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
27098
27100
|
/* harmony import */ var _ValueGenerator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(221);
|
|
27099
27101
|
|
|
27100
27102
|
|
|
27101
|
-
/**
|
|
27102
|
-
* Dubbo2.7+版本 参数生成器
|
|
27103
|
+
/**
|
|
27104
|
+
* Dubbo2.7+版本 参数生成器
|
|
27103
27105
|
*/
|
|
27104
27106
|
class ParamGeneratorDubbo2_7 {
|
|
27105
|
-
/**
|
|
27106
|
-
* 生成参数
|
|
27107
|
+
/**
|
|
27108
|
+
* 生成参数
|
|
27107
27109
|
*/
|
|
27108
27110
|
generateParam(mateData, methodName) {
|
|
27109
27111
|
const method = this.findMethodInfo(mateData, methodName);
|
|
@@ -48657,13 +48659,13 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
48657
48659
|
/* harmony import */ var _ValueGenerator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(221);
|
|
48658
48660
|
|
|
48659
48661
|
|
|
48660
|
-
/**
|
|
48661
|
-
* Dubbo3+版本 参数生成器
|
|
48662
|
+
/**
|
|
48663
|
+
* Dubbo3+版本 参数生成器
|
|
48662
48664
|
*/
|
|
48663
48665
|
|
|
48664
48666
|
class ParamGeneratorDubbo3 {
|
|
48665
|
-
/**
|
|
48666
|
-
* 生成参数
|
|
48667
|
+
/**
|
|
48668
|
+
* 生成参数
|
|
48667
48669
|
*/
|
|
48668
48670
|
generateParam(mateData, methodName) {
|
|
48669
48671
|
let method = mateData.methods.find(m => methodName == m.name);
|
|
@@ -48842,13 +48844,15 @@ class NacosDataSource {
|
|
|
48842
48844
|
constructor(appCore, invoker) {
|
|
48843
48845
|
this.appCore = appCore;
|
|
48844
48846
|
this.invoker = invoker;
|
|
48847
|
+
this.tokenCache = new Map();
|
|
48845
48848
|
}
|
|
48846
48849
|
async getServiceList(dataSourceInfo) {
|
|
48847
48850
|
const params = {
|
|
48848
48851
|
pageNo: 1,
|
|
48849
48852
|
pageSize: 100,
|
|
48850
48853
|
namespaceId: dataSourceInfo.namespaceId || "",
|
|
48851
|
-
groupName: dataSourceInfo.groupName || ""
|
|
48854
|
+
groupName: dataSourceInfo.groupName || "",
|
|
48855
|
+
accessToken: this.getAccessToken(dataSourceInfo)
|
|
48852
48856
|
};
|
|
48853
48857
|
// `http://127.0.0.1:8848/nacos/v1/ns/service/list?pageNo=1&pageSize=20`
|
|
48854
48858
|
const url = `${dataSourceInfo.address}/nacos/v1/ns/service/list`;
|
|
@@ -48894,7 +48898,8 @@ class NacosDataSource {
|
|
|
48894
48898
|
const params = {
|
|
48895
48899
|
serviceName: serviceInfo.uniqueServiceName,
|
|
48896
48900
|
namespaceId: dataSourceInfo.namespaceId || "",
|
|
48897
|
-
groupName: dataSourceInfo.groupName || ""
|
|
48901
|
+
groupName: dataSourceInfo.groupName || "",
|
|
48902
|
+
accessToken: this.getAccessToken(dataSourceInfo)
|
|
48898
48903
|
};
|
|
48899
48904
|
const response = await this.appCore.axios.get(url, {
|
|
48900
48905
|
params
|
|
@@ -48917,6 +48922,8 @@ class NacosDataSource {
|
|
|
48917
48922
|
metadata.methods.forEach(method => {
|
|
48918
48923
|
methodList.push({
|
|
48919
48924
|
...method,
|
|
48925
|
+
name: `${method.name}(${method.parameterTypes.map(pp => pp.substring(pp.lastIndexOf(".") + 1))})`,
|
|
48926
|
+
methodName: method.name,
|
|
48920
48927
|
defaultParameter: JSON.stringify(_main_generator_ParamGeneratorAdapter__WEBPACK_IMPORTED_MODULE_4__["default"].generateParam(metadata, method.name), null, 2) || "[]"
|
|
48921
48928
|
});
|
|
48922
48929
|
});
|
|
@@ -48941,7 +48948,8 @@ class NacosDataSource {
|
|
|
48941
48948
|
let params = {
|
|
48942
48949
|
serviceName: serviceInfo.uniqueServiceName,
|
|
48943
48950
|
namespaceId: dataSourceInfo.namespaceId || "",
|
|
48944
|
-
groupName: dataSourceInfo.groupName || ""
|
|
48951
|
+
groupName: dataSourceInfo.groupName || "",
|
|
48952
|
+
accessToken: this.getAccessToken(dataSourceInfo)
|
|
48945
48953
|
};
|
|
48946
48954
|
let response = await this.appCore.axios.get(url, {
|
|
48947
48955
|
params
|
|
@@ -48985,7 +48993,8 @@ class NacosDataSource {
|
|
|
48985
48993
|
dataId: this.buildDataId(providerInfo),
|
|
48986
48994
|
group: dataSourceInfo.group || 'dubbo',
|
|
48987
48995
|
namespaceId: dataSourceInfo.namespaceId || "",
|
|
48988
|
-
tenant: dataSourceInfo.namespaceId || ""
|
|
48996
|
+
tenant: dataSourceInfo.namespaceId || "",
|
|
48997
|
+
accessToken: this.getAccessToken(dataSourceInfo)
|
|
48989
48998
|
};
|
|
48990
48999
|
|
|
48991
49000
|
// 有配置项,保存,反之删除
|
|
@@ -49009,7 +49018,8 @@ class NacosDataSource {
|
|
|
49009
49018
|
group: dataSourceInfo.group || 'dubbo',
|
|
49010
49019
|
namespaceId: dataSourceInfo.namespaceId || "",
|
|
49011
49020
|
tenant: dataSourceInfo.namespaceId || "",
|
|
49012
|
-
show: 'all'
|
|
49021
|
+
show: 'all',
|
|
49022
|
+
accessToken: this.getAccessToken(dataSourceInfo)
|
|
49013
49023
|
};
|
|
49014
49024
|
const response = await this.appCore.axios.get(url, {
|
|
49015
49025
|
params
|
|
@@ -49019,6 +49029,22 @@ class NacosDataSource {
|
|
|
49019
49029
|
}
|
|
49020
49030
|
return null;
|
|
49021
49031
|
}
|
|
49032
|
+
async getAccessToken(dataSourceInfo) {
|
|
49033
|
+
if (!dataSourceInfo.username) {
|
|
49034
|
+
return null;
|
|
49035
|
+
}
|
|
49036
|
+
|
|
49037
|
+
// http://127.0.0.1:8848/nacos/v1/auth/login
|
|
49038
|
+
let url = `${dataSourceInfo.address}/nacos/v1/auth/login`;
|
|
49039
|
+
let params = {
|
|
49040
|
+
username: dataSourceInfo.username,
|
|
49041
|
+
password: dataSourceInfo.password
|
|
49042
|
+
};
|
|
49043
|
+
|
|
49044
|
+
// 调用登录接口
|
|
49045
|
+
const response = await this.appCore.axios.post(url, qs__WEBPACK_IMPORTED_MODULE_5___default().stringify(params));
|
|
49046
|
+
return response.data.accessToken;
|
|
49047
|
+
}
|
|
49022
49048
|
buildMataDataPath(providerInfo) {
|
|
49023
49049
|
let {
|
|
49024
49050
|
application,
|
|
@@ -49052,7 +49078,7 @@ class NacosDataSource {
|
|
|
49052
49078
|
weight: data.weight,
|
|
49053
49079
|
disabled: !data.enabled,
|
|
49054
49080
|
generic: metadata.generic,
|
|
49055
|
-
methods: metadata.methods.split(","),
|
|
49081
|
+
methods: Array.from(new Set((metadata.methods || "").split(",").filter(Boolean))),
|
|
49056
49082
|
// 2.7x就是dubbo端口,3.0之后是指定的端口
|
|
49057
49083
|
protocol: metadata.protocol,
|
|
49058
49084
|
qosPort: data.qosPort || data.port
|
|
@@ -51707,6 +51733,8 @@ class DubboAdminDataSource {
|
|
|
51707
51733
|
data.metadata.methods.forEach(method => {
|
|
51708
51734
|
methodList.push({
|
|
51709
51735
|
...method,
|
|
51736
|
+
name: `${method.name}(${method.parameterTypes.map(pp => pp.substring(pp.lastIndexOf(".") + 1))})`,
|
|
51737
|
+
methodName: method.name,
|
|
51710
51738
|
defaultParameter: JSON.stringify(_main_generator_ParamGeneratorAdapter__WEBPACK_IMPORTED_MODULE_4__["default"].generateParam(data.metadata, method.name), null, 2) || "[]"
|
|
51711
51739
|
});
|
|
51712
51740
|
});
|
|
@@ -51805,7 +51833,7 @@ class DubboAdminDataSource {
|
|
|
51805
51833
|
const startTime = new Date().getTime();
|
|
51806
51834
|
const data = {
|
|
51807
51835
|
service: serviceInfo.uniqueServiceName,
|
|
51808
|
-
method: methodInfo.
|
|
51836
|
+
method: methodInfo.methodName,
|
|
51809
51837
|
parameterTypes: this.getMethodParameterTypes(methodInfo),
|
|
51810
51838
|
params: JSON.parse(code)
|
|
51811
51839
|
};
|
|
@@ -51850,7 +51878,7 @@ class DubboAdminDataSource {
|
|
|
51850
51878
|
group: "",
|
|
51851
51879
|
providerVersion: urlData.params.revision,
|
|
51852
51880
|
dubboVersion: urlData.params.release,
|
|
51853
|
-
methods: urlData.params.methods.split(","),
|
|
51881
|
+
methods: Array.from(new Set((urlData.params.methods || "").split(",").filter(Boolean))),
|
|
51854
51882
|
protocol: urlData.protocol,
|
|
51855
51883
|
generic: urlData.params.generic,
|
|
51856
51884
|
deprecated: urlData.params.deprecated,
|