whatap 0.4.79 → 0.4.80
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/.vscode/keep-context.json +3 -3
- package/README.md +51 -51
- package/bindings/darwin/x64/whatap.node +0 -0
- package/bindings/linux/ia32/whatap.node +0 -0
- package/bindings/linux/x64/whatap.node +0 -0
- package/help.txt +10 -10
- package/index.js +8 -8
- package/lib/conf/conf-sys-mon.js +100 -100
- package/lib/conf/config-default.js +238 -238
- package/lib/conf/configure.js +423 -423
- package/lib/conf/license.js +41 -41
- package/lib/control/cmd-config.js +23 -23
- package/lib/control/control-handler.js +344 -344
- package/lib/control/packagectr-helper.js +149 -149
- package/lib/core/agent.js +329 -328
- package/lib/core/interceptor.js +142 -142
- package/lib/core/request-agent.js +26 -26
- package/lib/counter/counter-manager.js +127 -127
- package/lib/counter/meter/meter-activex.js +66 -66
- package/lib/counter/meter/meter-httpc.js +57 -57
- package/lib/counter/meter/meter-resource.js +9 -9
- package/lib/counter/meter/meter-service.js +167 -167
- package/lib/counter/meter/meter-socket.io.js +50 -50
- package/lib/counter/meter/meter-sql.js +70 -70
- package/lib/counter/meter/meter-users.js +57 -57
- package/lib/counter/meter.js +183 -183
- package/lib/counter/task/activetransaction.js +93 -93
- package/lib/counter/task/agentinfo.js +105 -105
- package/lib/counter/task/counter-task.js +9 -9
- package/lib/counter/task/gcstat.js +34 -34
- package/lib/counter/task/heapmem.js +24 -24
- package/lib/counter/task/httpc.js +75 -75
- package/lib/counter/task/proc-cpu.js +28 -28
- package/lib/counter/task/realtimeuser.js +30 -30
- package/lib/counter/task/res/systemECSTask.js +54 -54
- package/lib/counter/task/res/systemKubeTask.js +52 -52
- package/lib/counter/task/res/util/awsEcsClientThread.js +166 -166
- package/lib/counter/task/res/util/linuxProcStatUtil.js +13 -13
- package/lib/counter/task/res-sys-cpu.js +61 -61
- package/lib/counter/task/service.js +201 -201
- package/lib/counter/task/socketio.js +29 -29
- package/lib/counter/task/sql.js +104 -104
- package/lib/counter/task/systemperf.js +42 -42
- package/lib/data/datapack-sender.js +256 -256
- package/lib/data/dataprofile-agent.js +136 -136
- package/lib/data/datatext-agent.js +135 -135
- package/lib/data/event-level.js +15 -15
- package/lib/data/test.js +48 -48
- package/lib/env/constants.js +20 -20
- package/lib/kube/kube-client.js +143 -143
- package/lib/lang/text-types.js +58 -58
- package/lib/logger.js +319 -319
- package/lib/net/netflag.js +54 -54
- package/lib/net/paramdef.js +40 -40
- package/lib/net/receiver.js +65 -65
- package/lib/net/security-master.js +182 -173
- package/lib/net/sender.js +140 -140
- package/lib/net/tcp-return.js +17 -17
- package/lib/net/tcp-session.js +285 -285
- package/lib/net/tcpreq-client-proxy.js +69 -69
- package/lib/net/tcprequest-mgr.js +57 -57
- package/lib/observers/cluster-observer.js +21 -21
- package/lib/observers/express-observer.js +214 -214
- package/lib/observers/file-observer.js +184 -184
- package/lib/observers/global-observer.js +30 -30
- package/lib/observers/http-observer.js +704 -704
- package/lib/observers/maria-observer.js +382 -382
- package/lib/observers/memcached-observer.js +55 -55
- package/lib/observers/mongo-observer.js +262 -265
- package/lib/observers/mongodb-observer.js +197 -197
- package/lib/observers/mongoose-observer.js +83 -83
- package/lib/observers/mssql-observer.js +205 -205
- package/lib/observers/mysql-observer.js +436 -394
- package/lib/observers/net-observer.js +72 -72
- package/lib/observers/pgsql-observer.js +295 -295
- package/lib/observers/process-observer.js +25 -25
- package/lib/observers/promise-observer.js +31 -31
- package/lib/observers/redis-observer.js +156 -109
- package/lib/observers/schedule-observer.js +66 -66
- package/lib/observers/socket.io-observer.js +54 -54
- package/lib/observers/stream-observer.js +19 -19
- package/lib/observers/thrift-observer.js +196 -196
- package/lib/pack/activestack-pack.js +54 -54
- package/lib/pack/counter-pack.js +649 -649
- package/lib/pack/errorsnap-pack.js +68 -68
- package/lib/pack/event-pack.js +53 -53
- package/lib/pack/hitmap-pack.js +62 -62
- package/lib/pack/hitmap-pack1.js +146 -146
- package/lib/pack/netstat.js +14 -14
- package/lib/pack/pack.js +49 -49
- package/lib/pack/packenum.js +60 -60
- package/lib/pack/param-pack.js +213 -213
- package/lib/pack/profile-pack.js +48 -48
- package/lib/pack/realtimeuser-pack.js +40 -40
- package/lib/pack/stat-general-pack.js +95 -95
- package/lib/pack/staterror-pack.js +119 -119
- package/lib/pack/stathttpc-pack.js +66 -66
- package/lib/pack/stathttpc-rec.js +78 -78
- package/lib/pack/statremote-pack.js +45 -45
- package/lib/pack/statservice-pack.js +62 -62
- package/lib/pack/statservice-pack1.js +87 -87
- package/lib/pack/statservice-rec.js +292 -292
- package/lib/pack/statservice-rec_dep.js +151 -151
- package/lib/pack/statsql-pack.js +69 -69
- package/lib/pack/statsql-rec.js +100 -100
- package/lib/pack/statuseragent-pack.js +43 -43
- package/lib/pack/tagcount-pack.js +398 -398
- package/lib/pack/tagctr.js +14 -14
- package/lib/pack/text-pack.js +49 -49
- package/lib/pack/time-count.js +25 -25
- package/lib/pack/websocket.js +14 -14
- package/lib/plugin/plugin-loadermanager.js +56 -56
- package/lib/plugin/plugin.js +75 -75
- package/lib/requestlog.js +326 -326
- package/lib/service/tx-record.js +288 -288
- package/lib/stat/stat-error.js +116 -116
- package/lib/stat/stat-httpc.js +97 -97
- package/lib/stat/stat-remoteip.js +46 -46
- package/lib/stat/stat-sql.js +112 -112
- package/lib/stat/stat-tranx.js +57 -57
- package/lib/stat/stat-tx-caller.js +159 -159
- package/lib/stat/stat-tx-domain.js +110 -110
- package/lib/stat/stat-tx-referer.js +111 -111
- package/lib/stat/stat-useragent.js +48 -48
- package/lib/stat/timingsender.js +72 -72
- package/lib/step/activestack-step.js +37 -37
- package/lib/step/dbc-step.js +35 -35
- package/lib/step/http-stepx.js +66 -66
- package/lib/step/message-step.js +39 -39
- package/lib/step/method-stepx.js +46 -46
- package/lib/step/resultset-step.js +39 -39
- package/lib/step/securemsg-step.js +43 -43
- package/lib/step/socket-step.js +46 -46
- package/lib/step/sql-stepx.js +67 -67
- package/lib/step/sqlxtype.js +15 -15
- package/lib/step/step.js +65 -65
- package/lib/step/stepenum.js +53 -53
- package/lib/trace/local-context.js +13 -13
- package/lib/trace/parsed-sql.js +13 -13
- package/lib/trace/profile-collector.js +70 -70
- package/lib/trace/serviceurl-pattern-detector.js +117 -117
- package/lib/trace/trace-context-manager.js +195 -195
- package/lib/trace/trace-context.js +134 -134
- package/lib/util/anylist.js +102 -102
- package/lib/util/array-util.js +100 -100
- package/lib/util/bitutil.js +27 -27
- package/lib/util/cardinality/hyperloglog.js +105 -105
- package/lib/util/cardinality/murmurhash.js +31 -31
- package/lib/util/cardinality/registerset.js +74 -74
- package/lib/util/config-util.js +17 -17
- package/lib/util/cypher.js +89 -89
- package/lib/util/datetimehelper.js +237 -229
- package/lib/util/dateutil.js +110 -106
- package/lib/util/errordata.js +20 -20
- package/lib/util/escape-literal-sql.js +342 -342
- package/lib/util/hashutil2.js +126 -126
- package/lib/util/hexa32.js +57 -57
- package/lib/util/index.js +78 -78
- package/lib/util/intint-map.js +47 -47
- package/lib/util/intkey-linkedmap.js +26 -26
- package/lib/util/intkey-map.js +25 -25
- package/lib/util/intset.js +82 -82
- package/lib/util/iputil.js +119 -119
- package/lib/util/iputil_x.js +526 -526
- package/lib/util/keygen.js +17 -17
- package/lib/util/kube-util.js +72 -72
- package/lib/util/longint-linkedmap.js +35 -35
- package/lib/util/longkey-linkedmap.js +25 -25
- package/lib/util/longlong-linkedmap.js +37 -37
- package/lib/util/nodeutil.js +67 -67
- package/lib/util/oidutil.js +96 -93
- package/lib/util/paramsecurity.js +78 -78
- package/lib/util/pathtree.js +172 -172
- package/lib/util/pre-process.js +13 -13
- package/lib/util/process-seq.js +165 -165
- package/lib/util/property-util.js +35 -35
- package/lib/util/request-queue.js +42 -42
- package/lib/util/requestdouble-queue.js +72 -72
- package/lib/util/resourceprofile.js +156 -156
- package/lib/util/seedrandom.js +242 -242
- package/lib/util/stop-watch.js +29 -29
- package/lib/util/string-util.js +9 -9
- package/lib/util/stringkey-linkedmap.js +28 -28
- package/lib/util/stringnum-linkedmap.js +31 -31
- package/lib/util/stringset.js +65 -65
- package/lib/util/system-util.js +9 -9
- package/lib/util/userid-util.js +57 -57
- package/lib/util/utils.js +67 -67
- package/lib/value/blob-value.js +61 -61
- package/lib/value/boolean-value.js +51 -51
- package/lib/value/decimal-value.js +71 -71
- package/lib/value/double-summary.js +105 -105
- package/lib/value/double-value.js +50 -50
- package/lib/value/float-array.js +59 -59
- package/lib/value/float-value.js +64 -64
- package/lib/value/int-array.js +59 -59
- package/lib/value/int-map-value.js +151 -151
- package/lib/value/int-value.js +64 -64
- package/lib/value/ip4-value.js +83 -83
- package/lib/value/list-value.js +136 -136
- package/lib/value/long-array.js +59 -59
- package/lib/value/long-summary.js +105 -105
- package/lib/value/map-value.js +175 -175
- package/lib/value/metric-value.js +157 -157
- package/lib/value/null-value.js +42 -42
- package/lib/value/number-value.js +34 -34
- package/lib/value/summary-value.js +29 -29
- package/lib/value/text-array.js +117 -117
- package/lib/value/text-value.js +59 -59
- package/lib/value/texthash-value.js +49 -49
- package/lib/value/value.js +14 -14
- package/lib/value/valueenum.js +99 -99
- package/logs/whatap-20230906.log +54 -0
- package/package.json +28 -28
- package/whatap.conf +1 -1
- package/logs/whatap-20230616.log +0 -13
package/lib/value/text-array.js
CHANGED
|
@@ -1,118 +1,118 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright 2016 the WHATAP project authors. All rights reserved.
|
|
3
|
-
* Use of this source code is governed by a license that
|
|
4
|
-
* can be found in the LICENSE file.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
var Value = require('./value'),
|
|
8
|
-
ValueEnum = require('./valueenum');
|
|
9
|
-
|
|
10
|
-
function TextArray(value) {
|
|
11
|
-
Value.call(this);
|
|
12
|
-
this._hash = 0;
|
|
13
|
-
this.value = value || [];
|
|
14
|
-
|
|
15
|
-
this.compareTo = function(object) {
|
|
16
|
-
if(object instanceof TextArray) {
|
|
17
|
-
if(object.value == null && this.value == null) {
|
|
18
|
-
return 0;
|
|
19
|
-
}
|
|
20
|
-
if(this.value == null) {
|
|
21
|
-
return -1;
|
|
22
|
-
}
|
|
23
|
-
if(object.value == null) {
|
|
24
|
-
return 1;
|
|
25
|
-
}
|
|
26
|
-
var l_len = this.length,
|
|
27
|
-
r_len = object.length;
|
|
28
|
-
for(var i=0; i<l_len.length && i < r_len.length; i++) {
|
|
29
|
-
if(this.value[i] > object.value[i]) {
|
|
30
|
-
return 1;
|
|
31
|
-
}
|
|
32
|
-
if(this.value[i] < object.value[i]) {
|
|
33
|
-
return -1;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
return l_len - r_len;
|
|
37
|
-
}
|
|
38
|
-
return 1;
|
|
39
|
-
};
|
|
40
|
-
this.equals = function(object) {
|
|
41
|
-
if(object instanceof TextArray) {
|
|
42
|
-
if(object.value == null && this.value == null) {
|
|
43
|
-
return 0;
|
|
44
|
-
}
|
|
45
|
-
if(this.value == null) {
|
|
46
|
-
return -1;
|
|
47
|
-
}
|
|
48
|
-
if(object.value == null) {
|
|
49
|
-
return 1;
|
|
50
|
-
}
|
|
51
|
-
var l_len = this.length,
|
|
52
|
-
r_len = object.length;
|
|
53
|
-
for(var i=0; i<l_len.length && i < r_len.length; i++) {
|
|
54
|
-
if(this.value[i].equals(object.value[i])===false) {
|
|
55
|
-
return false;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
return l_len - r_len;
|
|
59
|
-
}
|
|
60
|
-
return false;
|
|
61
|
-
};
|
|
62
|
-
this.hashCode = function() {
|
|
63
|
-
if(this._hash == 0) {
|
|
64
|
-
if(this.value == null) {
|
|
65
|
-
return 0;
|
|
66
|
-
}
|
|
67
|
-
var result = 1,
|
|
68
|
-
len = this.value.length;
|
|
69
|
-
for(var j=0; j<len; j++) {
|
|
70
|
-
var element = this.value[j];
|
|
71
|
-
var hashtmp = 0,
|
|
72
|
-
i, chr, len;
|
|
73
|
-
if (element.length === 0) {
|
|
74
|
-
hashtmp = 0;
|
|
75
|
-
} else {
|
|
76
|
-
for (i = 0, len = element.length; i < len; i++) {
|
|
77
|
-
chr = element.charCodeAt(i);
|
|
78
|
-
hashtmp = ((hashtmp << 5) - hashtmp) + chr;
|
|
79
|
-
hashtmp |= 0; // Convert to 32bit integer
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
result = 31 * result + hashtmp;
|
|
83
|
-
}
|
|
84
|
-
this._hash = result;
|
|
85
|
-
}
|
|
86
|
-
return this._hash;
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
TextArray.prototype = new Value();
|
|
91
|
-
TextArray.prototype.constructor = TextArray;
|
|
92
|
-
TextArray.prototype.write = function(dout) {
|
|
93
|
-
if(this.value == null) {
|
|
94
|
-
dout.writeShort(0);
|
|
95
|
-
} else {
|
|
96
|
-
var len = this.value.length;
|
|
97
|
-
dout.writeShort(len);
|
|
98
|
-
for(var i=0; i<len; i++) {
|
|
99
|
-
dout.writeText(this.value[i]);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
TextArray.prototype.read = function(din) {
|
|
104
|
-
var length = din.readShort();
|
|
105
|
-
this.value = new Array(length);
|
|
106
|
-
for(var i=0; i<length; i++) {
|
|
107
|
-
this.value[i] = din.readText();
|
|
108
|
-
}
|
|
109
|
-
return this;
|
|
110
|
-
};
|
|
111
|
-
TextArray.prototype.getValueType = function () {
|
|
112
|
-
return ValueEnum.ARRAY_TEXT;
|
|
113
|
-
};
|
|
114
|
-
TextArray.prototype.toObject = function () {
|
|
115
|
-
return this.value;
|
|
116
|
-
};
|
|
117
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2016 the WHATAP project authors. All rights reserved.
|
|
3
|
+
* Use of this source code is governed by a license that
|
|
4
|
+
* can be found in the LICENSE file.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
var Value = require('./value'),
|
|
8
|
+
ValueEnum = require('./valueenum');
|
|
9
|
+
|
|
10
|
+
function TextArray(value) {
|
|
11
|
+
Value.call(this);
|
|
12
|
+
this._hash = 0;
|
|
13
|
+
this.value = value || [];
|
|
14
|
+
|
|
15
|
+
this.compareTo = function(object) {
|
|
16
|
+
if(object instanceof TextArray) {
|
|
17
|
+
if(object.value == null && this.value == null) {
|
|
18
|
+
return 0;
|
|
19
|
+
}
|
|
20
|
+
if(this.value == null) {
|
|
21
|
+
return -1;
|
|
22
|
+
}
|
|
23
|
+
if(object.value == null) {
|
|
24
|
+
return 1;
|
|
25
|
+
}
|
|
26
|
+
var l_len = this.length,
|
|
27
|
+
r_len = object.length;
|
|
28
|
+
for(var i=0; i<l_len.length && i < r_len.length; i++) {
|
|
29
|
+
if(this.value[i] > object.value[i]) {
|
|
30
|
+
return 1;
|
|
31
|
+
}
|
|
32
|
+
if(this.value[i] < object.value[i]) {
|
|
33
|
+
return -1;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return l_len - r_len;
|
|
37
|
+
}
|
|
38
|
+
return 1;
|
|
39
|
+
};
|
|
40
|
+
this.equals = function(object) {
|
|
41
|
+
if(object instanceof TextArray) {
|
|
42
|
+
if(object.value == null && this.value == null) {
|
|
43
|
+
return 0;
|
|
44
|
+
}
|
|
45
|
+
if(this.value == null) {
|
|
46
|
+
return -1;
|
|
47
|
+
}
|
|
48
|
+
if(object.value == null) {
|
|
49
|
+
return 1;
|
|
50
|
+
}
|
|
51
|
+
var l_len = this.length,
|
|
52
|
+
r_len = object.length;
|
|
53
|
+
for(var i=0; i<l_len.length && i < r_len.length; i++) {
|
|
54
|
+
if(this.value[i].equals(object.value[i])===false) {
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return l_len - r_len;
|
|
59
|
+
}
|
|
60
|
+
return false;
|
|
61
|
+
};
|
|
62
|
+
this.hashCode = function() {
|
|
63
|
+
if(this._hash == 0) {
|
|
64
|
+
if(this.value == null) {
|
|
65
|
+
return 0;
|
|
66
|
+
}
|
|
67
|
+
var result = 1,
|
|
68
|
+
len = this.value.length;
|
|
69
|
+
for(var j=0; j<len; j++) {
|
|
70
|
+
var element = this.value[j];
|
|
71
|
+
var hashtmp = 0,
|
|
72
|
+
i, chr, len;
|
|
73
|
+
if (element.length === 0) {
|
|
74
|
+
hashtmp = 0;
|
|
75
|
+
} else {
|
|
76
|
+
for (i = 0, len = element.length; i < len; i++) {
|
|
77
|
+
chr = element.charCodeAt(i);
|
|
78
|
+
hashtmp = ((hashtmp << 5) - hashtmp) + chr;
|
|
79
|
+
hashtmp |= 0; // Convert to 32bit integer
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
result = 31 * result + hashtmp;
|
|
83
|
+
}
|
|
84
|
+
this._hash = result;
|
|
85
|
+
}
|
|
86
|
+
return this._hash;
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
TextArray.prototype = new Value();
|
|
91
|
+
TextArray.prototype.constructor = TextArray;
|
|
92
|
+
TextArray.prototype.write = function(dout) {
|
|
93
|
+
if(this.value == null) {
|
|
94
|
+
dout.writeShort(0);
|
|
95
|
+
} else {
|
|
96
|
+
var len = this.value.length;
|
|
97
|
+
dout.writeShort(len);
|
|
98
|
+
for(var i=0; i<len; i++) {
|
|
99
|
+
dout.writeText(this.value[i]);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
TextArray.prototype.read = function(din) {
|
|
104
|
+
var length = din.readShort();
|
|
105
|
+
this.value = new Array(length);
|
|
106
|
+
for(var i=0; i<length; i++) {
|
|
107
|
+
this.value[i] = din.readText();
|
|
108
|
+
}
|
|
109
|
+
return this;
|
|
110
|
+
};
|
|
111
|
+
TextArray.prototype.getValueType = function () {
|
|
112
|
+
return ValueEnum.ARRAY_TEXT;
|
|
113
|
+
};
|
|
114
|
+
TextArray.prototype.toObject = function () {
|
|
115
|
+
return this.value;
|
|
116
|
+
};
|
|
117
|
+
|
|
118
118
|
module.exports = TextArray;
|
package/lib/value/text-value.js
CHANGED
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright 2016 the WHATAP project authors. All rights reserved.
|
|
3
|
-
* Use of this source code is governed by a license that
|
|
4
|
-
* can be found in the LICENSE file.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
var Value = require('./value'),
|
|
8
|
-
ValueEnum = require('./valueenum');
|
|
9
|
-
|
|
10
|
-
function TextValue(value) {
|
|
11
|
-
this.value = value || '';
|
|
12
|
-
|
|
13
|
-
this.compareTo = function(object) {
|
|
14
|
-
if(object instanceof TextValue) {
|
|
15
|
-
if(this.value == null) {
|
|
16
|
-
return object.value == null ? 0 : -1;
|
|
17
|
-
}
|
|
18
|
-
if(this.value != object.value) {
|
|
19
|
-
return this.value > object.value ? 1 : -1;
|
|
20
|
-
} else {
|
|
21
|
-
return 0;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
return 1;
|
|
25
|
-
};
|
|
26
|
-
this.equals = function(object) {
|
|
27
|
-
if(object instanceof TextValue) {
|
|
28
|
-
return this.value === object.value;
|
|
29
|
-
}
|
|
30
|
-
return false;
|
|
31
|
-
}
|
|
32
|
-
this.hashCode = function() {
|
|
33
|
-
var hash = 0, i, chr, len;
|
|
34
|
-
if (this.value.length === 0) return hash;
|
|
35
|
-
for (i = 0, len = this.value.length; i < len; i++) {
|
|
36
|
-
chr = this.charCodeAt(i);
|
|
37
|
-
hash = ((hash << 5) - hash) + chr;
|
|
38
|
-
hash |= 0; // Convert to 32bit integer
|
|
39
|
-
}
|
|
40
|
-
return hash;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
TextValue.prototype = new Value();
|
|
45
|
-
TextValue.prototype.constructor = TextValue;
|
|
46
|
-
TextValue.prototype.write = function(dout) {
|
|
47
|
-
dout.writeText(this.value);
|
|
48
|
-
};
|
|
49
|
-
TextValue.prototype.read = function(din) {
|
|
50
|
-
this.value = din.readText();
|
|
51
|
-
return this;
|
|
52
|
-
};
|
|
53
|
-
TextValue.prototype.getValueType = function() {
|
|
54
|
-
return ValueEnum.TEXT;
|
|
55
|
-
};
|
|
56
|
-
TextValue.prototype.toObject = function() {
|
|
57
|
-
return this.value;
|
|
58
|
-
};
|
|
59
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2016 the WHATAP project authors. All rights reserved.
|
|
3
|
+
* Use of this source code is governed by a license that
|
|
4
|
+
* can be found in the LICENSE file.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
var Value = require('./value'),
|
|
8
|
+
ValueEnum = require('./valueenum');
|
|
9
|
+
|
|
10
|
+
function TextValue(value) {
|
|
11
|
+
this.value = value || '';
|
|
12
|
+
|
|
13
|
+
this.compareTo = function(object) {
|
|
14
|
+
if(object instanceof TextValue) {
|
|
15
|
+
if(this.value == null) {
|
|
16
|
+
return object.value == null ? 0 : -1;
|
|
17
|
+
}
|
|
18
|
+
if(this.value != object.value) {
|
|
19
|
+
return this.value > object.value ? 1 : -1;
|
|
20
|
+
} else {
|
|
21
|
+
return 0;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return 1;
|
|
25
|
+
};
|
|
26
|
+
this.equals = function(object) {
|
|
27
|
+
if(object instanceof TextValue) {
|
|
28
|
+
return this.value === object.value;
|
|
29
|
+
}
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
this.hashCode = function() {
|
|
33
|
+
var hash = 0, i, chr, len;
|
|
34
|
+
if (this.value.length === 0) return hash;
|
|
35
|
+
for (i = 0, len = this.value.length; i < len; i++) {
|
|
36
|
+
chr = this.charCodeAt(i);
|
|
37
|
+
hash = ((hash << 5) - hash) + chr;
|
|
38
|
+
hash |= 0; // Convert to 32bit integer
|
|
39
|
+
}
|
|
40
|
+
return hash;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
TextValue.prototype = new Value();
|
|
45
|
+
TextValue.prototype.constructor = TextValue;
|
|
46
|
+
TextValue.prototype.write = function(dout) {
|
|
47
|
+
dout.writeText(this.value);
|
|
48
|
+
};
|
|
49
|
+
TextValue.prototype.read = function(din) {
|
|
50
|
+
this.value = din.readText();
|
|
51
|
+
return this;
|
|
52
|
+
};
|
|
53
|
+
TextValue.prototype.getValueType = function() {
|
|
54
|
+
return ValueEnum.TEXT;
|
|
55
|
+
};
|
|
56
|
+
TextValue.prototype.toObject = function() {
|
|
57
|
+
return this.value;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
60
|
module.exports = TextValue;
|
|
@@ -1,50 +1,50 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright 2016 the WHATAP project authors. All rights reserved.
|
|
3
|
-
* Use of this source code is governed by a license that
|
|
4
|
-
* can be found in the LICENSE file.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
var Value = require('./value'),
|
|
8
|
-
ValueEnum = require('./valueenum'),
|
|
9
|
-
HashUtil = require('../util/hashutil');
|
|
10
|
-
|
|
11
|
-
function TextHashValue(value) {
|
|
12
|
-
Value.call(this);
|
|
13
|
-
this.value = value; /*number*/
|
|
14
|
-
|
|
15
|
-
this.compareTo = function(object) {
|
|
16
|
-
if(object instanceof TextHashValue) {
|
|
17
|
-
return this.value < object.value ? -1 : (this.value === object.value ? 0 : 1);
|
|
18
|
-
}
|
|
19
|
-
return 1;
|
|
20
|
-
};
|
|
21
|
-
this.equals = function(object) {
|
|
22
|
-
if(object instanceof TextHashValue) {
|
|
23
|
-
return this.value === object.value;
|
|
24
|
-
}
|
|
25
|
-
return false;
|
|
26
|
-
};
|
|
27
|
-
this.hashCode = function() {
|
|
28
|
-
return this.value;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
TextHashValue.prototype = new Value();
|
|
35
|
-
TextHashValue.prototype.constructor = TextHashValue;
|
|
36
|
-
TextHashValue.prototype.getValueType = function () {
|
|
37
|
-
return ValueEnum.TEXT_HASH;
|
|
38
|
-
};
|
|
39
|
-
TextHashValue.prototype.write = function(dout) {
|
|
40
|
-
dout.writeInt(this.value);
|
|
41
|
-
};
|
|
42
|
-
TextHashValue.prototype.read = function(din) {
|
|
43
|
-
this.value = din.readInt();
|
|
44
|
-
return this;
|
|
45
|
-
};
|
|
46
|
-
TextHashValue.prototype.toObject = function () {
|
|
47
|
-
return this.value;
|
|
48
|
-
};
|
|
49
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2016 the WHATAP project authors. All rights reserved.
|
|
3
|
+
* Use of this source code is governed by a license that
|
|
4
|
+
* can be found in the LICENSE file.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
var Value = require('./value'),
|
|
8
|
+
ValueEnum = require('./valueenum'),
|
|
9
|
+
HashUtil = require('../util/hashutil');
|
|
10
|
+
|
|
11
|
+
function TextHashValue(value) {
|
|
12
|
+
Value.call(this);
|
|
13
|
+
this.value = value; /*number*/
|
|
14
|
+
|
|
15
|
+
this.compareTo = function(object) {
|
|
16
|
+
if(object instanceof TextHashValue) {
|
|
17
|
+
return this.value < object.value ? -1 : (this.value === object.value ? 0 : 1);
|
|
18
|
+
}
|
|
19
|
+
return 1;
|
|
20
|
+
};
|
|
21
|
+
this.equals = function(object) {
|
|
22
|
+
if(object instanceof TextHashValue) {
|
|
23
|
+
return this.value === object.value;
|
|
24
|
+
}
|
|
25
|
+
return false;
|
|
26
|
+
};
|
|
27
|
+
this.hashCode = function() {
|
|
28
|
+
return this.value;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
TextHashValue.prototype = new Value();
|
|
35
|
+
TextHashValue.prototype.constructor = TextHashValue;
|
|
36
|
+
TextHashValue.prototype.getValueType = function () {
|
|
37
|
+
return ValueEnum.TEXT_HASH;
|
|
38
|
+
};
|
|
39
|
+
TextHashValue.prototype.write = function(dout) {
|
|
40
|
+
dout.writeInt(this.value);
|
|
41
|
+
};
|
|
42
|
+
TextHashValue.prototype.read = function(din) {
|
|
43
|
+
this.value = din.readInt();
|
|
44
|
+
return this;
|
|
45
|
+
};
|
|
46
|
+
TextHashValue.prototype.toObject = function () {
|
|
47
|
+
return this.value;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
50
|
module.exports = TextHashValue;
|
package/lib/value/value.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright 2016 the WHATAP project authors. All rights reserved.
|
|
3
|
-
* Use of this source code is governed by a license that
|
|
4
|
-
* can be found in the LICENSE file.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
function Value() {
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
Value.prototype.write = function(dout) {};
|
|
11
|
-
Value.prototype.read = function(din) {return this;};
|
|
12
|
-
Value.prototype.getValueType = function() {};
|
|
13
|
-
Value.prototype.toObject = function() {return this;};
|
|
14
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2016 the WHATAP project authors. All rights reserved.
|
|
3
|
+
* Use of this source code is governed by a license that
|
|
4
|
+
* can be found in the LICENSE file.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
function Value() {
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
Value.prototype.write = function(dout) {};
|
|
11
|
+
Value.prototype.read = function(din) {return this;};
|
|
12
|
+
Value.prototype.getValueType = function() {};
|
|
13
|
+
Value.prototype.toObject = function() {return this;};
|
|
14
|
+
|
|
15
15
|
module.exports = Value;
|