@mikw99/node-emberplus-custom 1.0.5
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 +21 -0
- package/README.md +4 -0
- package/lib/ber.d.ts +42 -0
- package/lib/ber.js +237 -0
- package/lib/ber.js.map +1 -0
- package/lib/client/ember-client-logs.d.ts +4 -0
- package/lib/client/ember-client-logs.js +214 -0
- package/lib/client/ember-client-logs.js.map +1 -0
- package/lib/client/ember-client.d.ts +62 -0
- package/lib/client/ember-client.events.d.ts +8 -0
- package/lib/client/ember-client.events.js +12 -0
- package/lib/client/ember-client.events.js.map +1 -0
- package/lib/client/ember-client.js +678 -0
- package/lib/client/ember-client.js.map +1 -0
- package/lib/client/ember-client.request.d.ts +12 -0
- package/lib/client/ember-client.request.js +22 -0
- package/lib/client/ember-client.request.js.map +1 -0
- package/lib/common/command.d.ts +37 -0
- package/lib/common/command.js +95 -0
- package/lib/common/command.js.map +1 -0
- package/lib/common/common.d.ts +71 -0
- package/lib/common/common.js +310 -0
- package/lib/common/common.js.map +1 -0
- package/lib/common/constants.d.ts +10 -0
- package/lib/common/constants.js +13 -0
- package/lib/common/constants.js.map +1 -0
- package/lib/common/element.base.d.ts +13 -0
- package/lib/common/element.base.js +36 -0
- package/lib/common/element.base.js.map +1 -0
- package/lib/common/element.d.ts +6 -0
- package/lib/common/element.js +23 -0
- package/lib/common/element.js.map +1 -0
- package/lib/common/function/function-argument.d.ts +26 -0
- package/lib/common/function/function-argument.js +75 -0
- package/lib/common/function/function-argument.js.map +1 -0
- package/lib/common/function/function-contents.d.ts +30 -0
- package/lib/common/function/function-contents.js +138 -0
- package/lib/common/function/function-contents.js.map +1 -0
- package/lib/common/function/function.d.ts +31 -0
- package/lib/common/function/function.js +75 -0
- package/lib/common/function/function.js.map +1 -0
- package/lib/common/function/qualified-function.d.ts +19 -0
- package/lib/common/function/qualified-function.js +73 -0
- package/lib/common/function/qualified-function.js.map +1 -0
- package/lib/common/invocation-result.d.ts +23 -0
- package/lib/common/invocation-result.js +101 -0
- package/lib/common/invocation-result.js.map +1 -0
- package/lib/common/invocation.d.ts +20 -0
- package/lib/common/invocation.js +73 -0
- package/lib/common/invocation.js.map +1 -0
- package/lib/common/label.d.ts +14 -0
- package/lib/common/label.js +55 -0
- package/lib/common/label.js.map +1 -0
- package/lib/common/matrix/matrix-connection.d.ts +26 -0
- package/lib/common/matrix/matrix-connection.js +123 -0
- package/lib/common/matrix/matrix-connection.js.map +1 -0
- package/lib/common/matrix/matrix-contents.d.ts +38 -0
- package/lib/common/matrix/matrix-contents.js +173 -0
- package/lib/common/matrix/matrix-contents.js.map +1 -0
- package/lib/common/matrix/matrix-disposition.d.ts +9 -0
- package/lib/common/matrix/matrix-disposition.js +14 -0
- package/lib/common/matrix/matrix-disposition.js.map +1 -0
- package/lib/common/matrix/matrix-mode.d.ts +8 -0
- package/lib/common/matrix/matrix-mode.js +23 -0
- package/lib/common/matrix/matrix-mode.js.map +1 -0
- package/lib/common/matrix/matrix-node.d.ts +13 -0
- package/lib/common/matrix/matrix-node.js +90 -0
- package/lib/common/matrix/matrix-node.js.map +1 -0
- package/lib/common/matrix/matrix-operation.d.ts +8 -0
- package/lib/common/matrix/matrix-operation.js +13 -0
- package/lib/common/matrix/matrix-operation.js.map +1 -0
- package/lib/common/matrix/matrix-type.d.ts +9 -0
- package/lib/common/matrix/matrix-type.js +24 -0
- package/lib/common/matrix/matrix-type.js.map +1 -0
- package/lib/common/matrix/matrix.d.ts +91 -0
- package/lib/common/matrix/matrix.js +429 -0
- package/lib/common/matrix/matrix.js.map +1 -0
- package/lib/common/matrix/qualified-matrix.d.ts +17 -0
- package/lib/common/matrix/qualified-matrix.js +97 -0
- package/lib/common/matrix/qualified-matrix.js.map +1 -0
- package/lib/common/node-contents.d.ts +24 -0
- package/lib/common/node-contents.js +87 -0
- package/lib/common/node-contents.js.map +1 -0
- package/lib/common/node.d.ts +27 -0
- package/lib/common/node.js +67 -0
- package/lib/common/node.js.map +1 -0
- package/lib/common/parameter-access.d.ts +10 -0
- package/lib/common/parameter-access.js +25 -0
- package/lib/common/parameter-access.js.map +1 -0
- package/lib/common/parameter-contents.d.ts +55 -0
- package/lib/common/parameter-contents.js +167 -0
- package/lib/common/parameter-contents.js.map +1 -0
- package/lib/common/parameter-type.d.ts +15 -0
- package/lib/common/parameter-type.js +54 -0
- package/lib/common/parameter-type.js.map +1 -0
- package/lib/common/parameter.d.ts +76 -0
- package/lib/common/parameter.js +174 -0
- package/lib/common/parameter.js.map +1 -0
- package/lib/common/qualified-element.d.ts +10 -0
- package/lib/common/qualified-element.js +36 -0
- package/lib/common/qualified-element.js.map +1 -0
- package/lib/common/qualified-node.d.ts +16 -0
- package/lib/common/qualified-node.js +67 -0
- package/lib/common/qualified-node.js.map +1 -0
- package/lib/common/qualified-parameter.d.ts +52 -0
- package/lib/common/qualified-parameter.js +177 -0
- package/lib/common/qualified-parameter.js.map +1 -0
- package/lib/common/qualified-template.d.ts +17 -0
- package/lib/common/qualified-template.js +58 -0
- package/lib/common/qualified-template.js.map +1 -0
- package/lib/common/stream/stream-collection.d.ts +20 -0
- package/lib/common/stream/stream-collection.js +57 -0
- package/lib/common/stream/stream-collection.js.map +1 -0
- package/lib/common/stream/stream-description.d.ts +15 -0
- package/lib/common/stream/stream-description.js +45 -0
- package/lib/common/stream/stream-description.js.map +1 -0
- package/lib/common/stream/stream-entry.d.ts +15 -0
- package/lib/common/stream/stream-entry.js +49 -0
- package/lib/common/stream/stream-entry.js.map +1 -0
- package/lib/common/stream/stream-format.d.ts +23 -0
- package/lib/common/stream/stream-format.js +28 -0
- package/lib/common/stream/stream-format.js.map +1 -0
- package/lib/common/string-integer-collection.d.ts +12 -0
- package/lib/common/string-integer-collection.js +51 -0
- package/lib/common/string-integer-collection.js.map +1 -0
- package/lib/common/string-integer-pair.d.ts +18 -0
- package/lib/common/string-integer-pair.js +67 -0
- package/lib/common/string-integer-pair.js.map +1 -0
- package/lib/common/template-element.d.ts +12 -0
- package/lib/common/template-element.js +53 -0
- package/lib/common/template-element.js.map +1 -0
- package/lib/common/template.d.ts +16 -0
- package/lib/common/template.js +58 -0
- package/lib/common/template.js.map +1 -0
- package/lib/common/tree-node.d.ts +85 -0
- package/lib/common/tree-node.js +461 -0
- package/lib/common/tree-node.js.map +1 -0
- package/lib/error/errors.d.ts +57 -0
- package/lib/error/errors.js +150 -0
- package/lib/error/errors.js.map +1 -0
- package/lib/fixture/utils.d.ts +7 -0
- package/lib/fixture/utils.js +185 -0
- package/lib/fixture/utils.js.map +1 -0
- package/lib/index.d.ts +41 -0
- package/lib/index.js +15 -0
- package/lib/index.js.map +1 -0
- package/lib/logging/logging.service.d.ts +45 -0
- package/lib/logging/logging.service.js +110 -0
- package/lib/logging/logging.service.js.map +1 -0
- package/lib/server/client-request.d.ts +9 -0
- package/lib/server/client-request.js +10 -0
- package/lib/server/client-request.js.map +1 -0
- package/lib/server/element-handlers.d.ts +20 -0
- package/lib/server/element-handlers.js +105 -0
- package/lib/server/element-handlers.js.map +1 -0
- package/lib/server/ember-server.d.ts +84 -0
- package/lib/server/ember-server.events.d.ts +23 -0
- package/lib/server/ember-server.events.js +46 -0
- package/lib/server/ember-server.events.js.map +1 -0
- package/lib/server/ember-server.interface.d.ts +26 -0
- package/lib/server/ember-server.interface.js +3 -0
- package/lib/server/ember-server.interface.js.map +1 -0
- package/lib/server/ember-server.js +422 -0
- package/lib/server/ember-server.js.map +1 -0
- package/lib/server/ember-server.logs.d.ts +4 -0
- package/lib/server/ember-server.logs.js +274 -0
- package/lib/server/ember-server.logs.js.map +1 -0
- package/lib/server/json.parser.d.ts +13 -0
- package/lib/server/json.parser.js +209 -0
- package/lib/server/json.parser.js.map +1 -0
- package/lib/server/matrix.handlers.d.ts +10 -0
- package/lib/server/matrix.handlers.js +103 -0
- package/lib/server/matrix.handlers.js.map +1 -0
- package/lib/server/node.handlers.d.ts +12 -0
- package/lib/server/node.handlers.js +85 -0
- package/lib/server/node.handlers.js.map +1 -0
- package/lib/server/qualified.handlers.d.ts +15 -0
- package/lib/server/qualified.handlers.js +54 -0
- package/lib/server/qualified.handlers.js.map +1 -0
- package/lib/socket/s101.client.d.ts +17 -0
- package/lib/socket/s101.client.js +53 -0
- package/lib/socket/s101.client.js.map +1 -0
- package/lib/socket/s101.codec.d.ts +32 -0
- package/lib/socket/s101.codec.js +301 -0
- package/lib/socket/s101.codec.js.map +1 -0
- package/lib/socket/s101.packet-stats.socket.d.ts +31 -0
- package/lib/socket/s101.packet-stats.socket.js +74 -0
- package/lib/socket/s101.packet-stats.socket.js.map +1 -0
- package/lib/socket/s101.server.d.ts +28 -0
- package/lib/socket/s101.server.js +87 -0
- package/lib/socket/s101.server.js.map +1 -0
- package/lib/socket/s101.socket.d.ts +75 -0
- package/lib/socket/s101.socket.js +300 -0
- package/lib/socket/s101.socket.js.map +1 -0
- package/lib/socket/stats-collector.d.ts +19 -0
- package/lib/socket/stats-collector.js +63 -0
- package/lib/socket/stats-collector.js.map +1 -0
- package/lib/tools/debug.d.ts +2 -0
- package/lib/tools/debug.js +21 -0
- package/lib/tools/debug.js.map +1 -0
- package/lib/tools/jsontree.d.ts +1 -0
- package/lib/tools/jsontree.js +36 -0
- package/lib/tools/jsontree.js.map +1 -0
- package/lib/tools/monitoring-client.d.ts +2 -0
- package/lib/tools/monitoring-client.js +186 -0
- package/lib/tools/monitoring-client.js.map +1 -0
- package/lib/tools/serve.d.ts +1 -0
- package/lib/tools/serve.js +129 -0
- package/lib/tools/serve.js.map +1 -0
- package/package.json +105 -0
@@ -0,0 +1,101 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const ber_1 = require("../ber");
|
4
|
+
const parameter_type_1 = require("./parameter-type");
|
5
|
+
const function_argument_1 = require("./function/function-argument");
|
6
|
+
const errors_1 = require("../error/errors");
|
7
|
+
const element_base_1 = require("./element.base");
|
8
|
+
class InvocationResult extends element_base_1.ElementBase {
|
9
|
+
constructor(invocationId, success, result) {
|
10
|
+
super();
|
11
|
+
this.invocationId = invocationId;
|
12
|
+
this.success = success;
|
13
|
+
this.result = result;
|
14
|
+
}
|
15
|
+
static decode(ber) {
|
16
|
+
const invocationResult = new InvocationResult();
|
17
|
+
ber = ber.getSequence(InvocationResult.BERID);
|
18
|
+
while (ber.remain > 0) {
|
19
|
+
let tag = ber.peek();
|
20
|
+
const seq = ber.getSequence(tag);
|
21
|
+
if (tag === ber_1.CONTEXT(0)) {
|
22
|
+
invocationResult.invocationId = seq.readInt();
|
23
|
+
}
|
24
|
+
else if (tag === ber_1.CONTEXT(1)) {
|
25
|
+
invocationResult.success = seq.readBoolean();
|
26
|
+
}
|
27
|
+
else if (tag === ber_1.CONTEXT(2)) {
|
28
|
+
invocationResult.result = [];
|
29
|
+
const res = seq.getSequence(ber_1.EMBER_SEQUENCE);
|
30
|
+
while (res.remain > 0) {
|
31
|
+
tag = res.peek();
|
32
|
+
if (tag === ber_1.CONTEXT(0)) {
|
33
|
+
const resTag = res.getSequence(ber_1.CONTEXT(0));
|
34
|
+
tag = resTag.peek();
|
35
|
+
invocationResult.result.push(new function_argument_1.FunctionArgument(parameter_type_1.ParameterTypeFromBERTAG(tag), resTag.readValue()));
|
36
|
+
}
|
37
|
+
else {
|
38
|
+
throw new errors_1.UnimplementedEmberTypeError(tag);
|
39
|
+
}
|
40
|
+
}
|
41
|
+
continue;
|
42
|
+
}
|
43
|
+
else {
|
44
|
+
throw new errors_1.UnimplementedEmberTypeError(tag);
|
45
|
+
}
|
46
|
+
}
|
47
|
+
return invocationResult;
|
48
|
+
}
|
49
|
+
encode(ber) {
|
50
|
+
ber.startSequence(InvocationResult.BERID);
|
51
|
+
if (this.invocationId != null) {
|
52
|
+
ber.startSequence(ber_1.CONTEXT(0));
|
53
|
+
ber.writeInt(this.invocationId);
|
54
|
+
ber.endSequence();
|
55
|
+
}
|
56
|
+
if (this.success != null) {
|
57
|
+
ber.startSequence(ber_1.CONTEXT(1));
|
58
|
+
ber.writeBoolean(this.success);
|
59
|
+
ber.endSequence();
|
60
|
+
}
|
61
|
+
if (this.result != null && this.result.length) {
|
62
|
+
ber.startSequence(ber_1.CONTEXT(2));
|
63
|
+
ber.startSequence(ber_1.EMBER_SEQUENCE);
|
64
|
+
for (let i = 0; i < this.result.length; i++) {
|
65
|
+
ber.startSequence(ber_1.CONTEXT(0));
|
66
|
+
ber.writeValue(this.result[i].value, parameter_type_1.ParameterTypeToBERTAG(this.result[i].type));
|
67
|
+
ber.endSequence();
|
68
|
+
}
|
69
|
+
ber.endSequence();
|
70
|
+
ber.endSequence();
|
71
|
+
}
|
72
|
+
ber.endSequence();
|
73
|
+
}
|
74
|
+
isInvocationResult() {
|
75
|
+
return true;
|
76
|
+
}
|
77
|
+
setFailure() {
|
78
|
+
this.success = false;
|
79
|
+
}
|
80
|
+
setSuccess() {
|
81
|
+
this.success = true;
|
82
|
+
}
|
83
|
+
setResult(result) {
|
84
|
+
this.result = result;
|
85
|
+
}
|
86
|
+
toJSON() {
|
87
|
+
return {
|
88
|
+
invocationId: this.invocationId,
|
89
|
+
success: this.success,
|
90
|
+
result: this.result == null ? [] : this.result.map(r => r.toJSON())
|
91
|
+
};
|
92
|
+
}
|
93
|
+
toQualified() {
|
94
|
+
return this;
|
95
|
+
}
|
96
|
+
static get BERID() {
|
97
|
+
return ber_1.APPLICATION(23);
|
98
|
+
}
|
99
|
+
}
|
100
|
+
exports.InvocationResult = InvocationResult;
|
101
|
+
//# sourceMappingURL=invocation-result.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"invocation-result.js","sourceRoot":"","sources":["../../src/common/invocation-result.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import { ExtendedReader as Reader, ExtendedWriter as Writer } from '../ber';
|
2
|
+
import { FunctionArgument, IFunctionArgument, JFunctionArgument } from './function/function-argument';
|
3
|
+
export interface IInvocation {
|
4
|
+
id: number;
|
5
|
+
arguments: IFunctionArgument[];
|
6
|
+
}
|
7
|
+
export interface JInvocation {
|
8
|
+
id: number;
|
9
|
+
arguments: JFunctionArgument[];
|
10
|
+
}
|
11
|
+
export declare class Invocation {
|
12
|
+
id?: number;
|
13
|
+
arguments: FunctionArgument[];
|
14
|
+
constructor(id?: number, args?: FunctionArgument[]);
|
15
|
+
static decode(ber: Reader): Invocation;
|
16
|
+
static newInvocationID(): number;
|
17
|
+
encode(ber: Writer): void;
|
18
|
+
toJSON(): JInvocation;
|
19
|
+
static get BERID(): number;
|
20
|
+
}
|
@@ -0,0 +1,73 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const ber_1 = require("../ber");
|
4
|
+
const function_argument_1 = require("./function/function-argument");
|
5
|
+
const parameter_type_1 = require("./parameter-type");
|
6
|
+
const errors_1 = require("../error/errors");
|
7
|
+
let _id = 1;
|
8
|
+
class Invocation {
|
9
|
+
constructor(id, args) {
|
10
|
+
this.id = id;
|
11
|
+
this.arguments = args;
|
12
|
+
}
|
13
|
+
static decode(ber) {
|
14
|
+
const invocation = new Invocation();
|
15
|
+
ber = ber.getSequence(Invocation.BERID);
|
16
|
+
while (ber.remain > 0) {
|
17
|
+
let tag = ber.peek();
|
18
|
+
let seq = ber.getSequence(tag);
|
19
|
+
if (tag === ber_1.CONTEXT(0)) {
|
20
|
+
invocation.id = seq.readInt();
|
21
|
+
}
|
22
|
+
else if (tag === ber_1.CONTEXT(1)) {
|
23
|
+
invocation.arguments = [];
|
24
|
+
seq = seq.getSequence(ber_1.EMBER_SEQUENCE);
|
25
|
+
while (seq.remain > 0) {
|
26
|
+
const dataSeq = seq.getSequence(ber_1.CONTEXT(0));
|
27
|
+
tag = dataSeq.peek();
|
28
|
+
const val = dataSeq.readValue();
|
29
|
+
invocation.arguments.push(new function_argument_1.FunctionArgument(parameter_type_1.ParameterTypeFromBERTAG(tag), val));
|
30
|
+
}
|
31
|
+
}
|
32
|
+
else {
|
33
|
+
throw new errors_1.UnimplementedEmberTypeError(tag);
|
34
|
+
}
|
35
|
+
}
|
36
|
+
return invocation;
|
37
|
+
}
|
38
|
+
static newInvocationID() {
|
39
|
+
return _id++;
|
40
|
+
}
|
41
|
+
encode(ber) {
|
42
|
+
ber.startSequence(Invocation.BERID);
|
43
|
+
if (this.id != null) {
|
44
|
+
ber.startSequence(ber_1.CONTEXT(0));
|
45
|
+
ber.writeInt(this.id);
|
46
|
+
ber.endSequence();
|
47
|
+
}
|
48
|
+
if (this.arguments != null) {
|
49
|
+
ber.startSequence(ber_1.CONTEXT(1));
|
50
|
+
ber.startSequence(ber_1.EMBER_SEQUENCE);
|
51
|
+
for (let i = 0; i < this.arguments.length; i++) {
|
52
|
+
ber.startSequence(ber_1.CONTEXT(0));
|
53
|
+
ber.writeValue(this.arguments[i].value, parameter_type_1.ParameterTypeToBERTAG(this.arguments[i].type));
|
54
|
+
ber.endSequence();
|
55
|
+
}
|
56
|
+
ber.endSequence();
|
57
|
+
ber.endSequence();
|
58
|
+
}
|
59
|
+
ber.endSequence();
|
60
|
+
}
|
61
|
+
toJSON() {
|
62
|
+
var _a;
|
63
|
+
return {
|
64
|
+
id: this.id,
|
65
|
+
arguments: (_a = this.arguments) === null || _a === void 0 ? void 0 : _a.map(a => a.toJSON())
|
66
|
+
};
|
67
|
+
}
|
68
|
+
static get BERID() {
|
69
|
+
return ber_1.APPLICATION(22);
|
70
|
+
}
|
71
|
+
}
|
72
|
+
exports.Invocation = Invocation;
|
73
|
+
//# sourceMappingURL=invocation.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"invocation.js","sourceRoot":"","sources":["../../src/common/invocation.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { ExtendedReader as Reader, ExtendedWriter as Writer } from '../ber';
|
2
|
+
export interface LabelInterface {
|
3
|
+
basePath: string;
|
4
|
+
description: string;
|
5
|
+
}
|
6
|
+
export declare class Label {
|
7
|
+
basePath: string;
|
8
|
+
description: string;
|
9
|
+
static get BERID(): number;
|
10
|
+
constructor(basePath: string, description: string);
|
11
|
+
static decode(ber: Reader): Label;
|
12
|
+
encode(ber: Writer): void;
|
13
|
+
toJSON(): LabelInterface;
|
14
|
+
}
|
@@ -0,0 +1,55 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const ber_1 = require("../ber");
|
4
|
+
const errors_1 = require("../error/errors");
|
5
|
+
class Label {
|
6
|
+
constructor(basePath, description) {
|
7
|
+
this.basePath = basePath;
|
8
|
+
this.description = description;
|
9
|
+
}
|
10
|
+
static get BERID() {
|
11
|
+
return ber_1.APPLICATION(18);
|
12
|
+
}
|
13
|
+
static decode(ber) {
|
14
|
+
const l = { basePath: '', description: '' };
|
15
|
+
ber = ber.getSequence(Label.BERID);
|
16
|
+
while (ber.remain > 0) {
|
17
|
+
const tag = ber.peek();
|
18
|
+
const seq = ber.getSequence(tag);
|
19
|
+
if (tag === ber_1.CONTEXT(0)) {
|
20
|
+
l.basePath = seq.readRelativeOID(ber_1.EMBER_RELATIVE_OID);
|
21
|
+
}
|
22
|
+
else if (tag === ber_1.CONTEXT(1)) {
|
23
|
+
l.description = seq.readString(ber_1.EMBER_STRING);
|
24
|
+
}
|
25
|
+
else {
|
26
|
+
throw new errors_1.UnimplementedEmberTypeError(tag);
|
27
|
+
}
|
28
|
+
}
|
29
|
+
return new Label(l.basePath, l.description);
|
30
|
+
}
|
31
|
+
encode(ber) {
|
32
|
+
ber.startSequence(Label.BERID);
|
33
|
+
if (this.basePath == null) {
|
34
|
+
throw new errors_1.InvalidEmberNodeError('', 'Missing label base path');
|
35
|
+
}
|
36
|
+
ber.startSequence(ber_1.CONTEXT(0));
|
37
|
+
ber.writeRelativeOID(this.basePath, ber_1.EMBER_RELATIVE_OID);
|
38
|
+
ber.endSequence();
|
39
|
+
if (this.description == null) {
|
40
|
+
throw new errors_1.InvalidEmberNodeError('', 'Missing label description');
|
41
|
+
}
|
42
|
+
ber.startSequence(ber_1.CONTEXT(1));
|
43
|
+
ber.writeString(this.description, ber_1.EMBER_STRING);
|
44
|
+
ber.endSequence();
|
45
|
+
ber.endSequence();
|
46
|
+
}
|
47
|
+
toJSON() {
|
48
|
+
return {
|
49
|
+
basePath: this.basePath,
|
50
|
+
description: this.description
|
51
|
+
};
|
52
|
+
}
|
53
|
+
}
|
54
|
+
exports.Label = Label;
|
55
|
+
//# sourceMappingURL=label.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"label.js","sourceRoot":"","sources":["../../src/common/label.ts"],"names":[],"mappings":";;AAAA,gCAAoI;AACpI,4CAAqF;AAOrF,MAAa,KAAK;IAKd,YAAmB,QAAgB,EAAS,WAAmB;QAA5C,aAAQ,GAAR,QAAQ,CAAQ;QAAS,gBAAW,GAAX,WAAW,CAAQ;IAC/D,CAAC;IAJD,MAAM,KAAK,KAAK;QACZ,OAAO,iBAAW,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;IAID,MAAM,CAAC,MAAM,CAAC,GAAW;QACrB,MAAM,CAAC,GAAmB,EAAC,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAC,CAAC;QAE1D,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEnC,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,GAAG,KAAK,aAAO,CAAC,CAAC,CAAC,EAAE;gBACpB,CAAC,CAAC,QAAQ,GAAG,GAAG,CAAC,eAAe,CAAC,wBAAkB,CAAC,CAAC;aACxD;iBAAM,IAAI,GAAG,KAAK,aAAO,CAAC,CAAC,CAAC,EAAE;gBAC3B,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC,kBAAY,CAAC,CAAC;aAChD;iBAAM;gBACH,MAAM,IAAI,oCAA2B,CAAC,GAAG,CAAC,CAAC;aAC9C;SACJ;QACD,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,GAAW;QACd,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAE;YACvB,MAAM,IAAI,8BAAqB,CAAC,EAAE,EAAE,yBAAyB,CAAC,CAAC;SAClE;QACD,GAAG,CAAC,aAAa,CAAC,aAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,wBAAkB,CAAC,CAAC;QACxD,GAAG,CAAC,WAAW,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE;YAC1B,MAAM,IAAI,8BAAqB,CAAC,EAAE,EAAE,2BAA2B,CAAC,CAAC;SACpE;QACD,GAAG,CAAC,aAAa,CAAC,aAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,kBAAY,CAAC,CAAC;QAChD,GAAG,CAAC,WAAW,EAAE,CAAC;QAClB,GAAG,CAAC,WAAW,EAAE,CAAC;IACtB,CAAC;IAED,MAAM;QACF,OAAO;YACH,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;SAChC,CAAC;IACN,CAAC;CACJ;AAlDD,sBAkDC"}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import { ExtendedReader as Reader, ExtendedWriter as Writer } from '../../ber';
|
2
|
+
import { MatrixDisposition } from './matrix-disposition';
|
3
|
+
import { MatrixOperation } from './matrix-operation';
|
4
|
+
export interface JMatrixConnection {
|
5
|
+
target: number;
|
6
|
+
sources?: number[];
|
7
|
+
}
|
8
|
+
export declare class MatrixConnection {
|
9
|
+
target?: number;
|
10
|
+
sources?: number[];
|
11
|
+
operation: MatrixOperation;
|
12
|
+
disposition?: MatrixDisposition;
|
13
|
+
private _locked;
|
14
|
+
constructor(target?: number);
|
15
|
+
static decode(ber: Reader): MatrixConnection;
|
16
|
+
connectSources(sources: number[]): void;
|
17
|
+
disconnectSources(sources: number[]): void;
|
18
|
+
encode(ber: Writer): void;
|
19
|
+
isDifferent(sources: number[]): boolean;
|
20
|
+
isLocked(): boolean;
|
21
|
+
lock(): void;
|
22
|
+
setSources(sources: number[]): void;
|
23
|
+
validateSources(sources?: number[]): null | number[];
|
24
|
+
unlock(): void;
|
25
|
+
static get BERID(): number;
|
26
|
+
}
|
@@ -0,0 +1,123 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const ber_1 = require("../../ber");
|
4
|
+
const errors_1 = require("../../error/errors");
|
5
|
+
class MatrixConnection {
|
6
|
+
constructor(target) {
|
7
|
+
this.target = target;
|
8
|
+
if (target == null) {
|
9
|
+
this.target = 0;
|
10
|
+
}
|
11
|
+
this._locked = false;
|
12
|
+
}
|
13
|
+
static decode(ber) {
|
14
|
+
const c = new MatrixConnection();
|
15
|
+
ber = ber.getSequence(MatrixConnection.BERID);
|
16
|
+
while (ber.remain > 0) {
|
17
|
+
const tag = ber.peek();
|
18
|
+
const seq = ber.getSequence(tag);
|
19
|
+
if (tag === ber_1.CONTEXT(0)) {
|
20
|
+
c.target = seq.readInt();
|
21
|
+
}
|
22
|
+
else if (tag === ber_1.CONTEXT(1)) {
|
23
|
+
const sources = seq.readRelativeOID(ber_1.EMBER_RELATIVE_OID);
|
24
|
+
if (sources === '') {
|
25
|
+
c.sources = [];
|
26
|
+
}
|
27
|
+
else {
|
28
|
+
c.sources = sources.split('.').map(i => Number(i));
|
29
|
+
}
|
30
|
+
}
|
31
|
+
else if (tag === ber_1.CONTEXT(2)) {
|
32
|
+
c.operation = seq.readInt();
|
33
|
+
}
|
34
|
+
else if (tag === ber_1.CONTEXT(3)) {
|
35
|
+
c.disposition = seq.readInt();
|
36
|
+
}
|
37
|
+
else {
|
38
|
+
throw new errors_1.UnimplementedEmberTypeError(tag);
|
39
|
+
}
|
40
|
+
}
|
41
|
+
return c;
|
42
|
+
}
|
43
|
+
connectSources(sources) {
|
44
|
+
this.sources = this.validateSources(sources);
|
45
|
+
}
|
46
|
+
disconnectSources(sources) {
|
47
|
+
if (sources == null) {
|
48
|
+
return;
|
49
|
+
}
|
50
|
+
const s = new Set(this.sources);
|
51
|
+
for (const item of sources) {
|
52
|
+
s.delete(item);
|
53
|
+
}
|
54
|
+
this.sources = [...s].sort();
|
55
|
+
}
|
56
|
+
encode(ber) {
|
57
|
+
ber.startSequence(MatrixConnection.BERID);
|
58
|
+
ber.startSequence(ber_1.CONTEXT(0));
|
59
|
+
ber.writeInt(this.target);
|
60
|
+
ber.endSequence();
|
61
|
+
if (this.sources != null) {
|
62
|
+
ber.startSequence(ber_1.CONTEXT(1));
|
63
|
+
ber.writeRelativeOID(this.sources.join('.'), ber_1.EMBER_RELATIVE_OID);
|
64
|
+
ber.endSequence();
|
65
|
+
}
|
66
|
+
if (this.operation != null) {
|
67
|
+
ber.startSequence(ber_1.CONTEXT(2));
|
68
|
+
ber.writeInt(this.operation);
|
69
|
+
ber.endSequence();
|
70
|
+
}
|
71
|
+
if (this.disposition != null) {
|
72
|
+
ber.startSequence(ber_1.CONTEXT(3));
|
73
|
+
ber.writeInt(this.disposition);
|
74
|
+
ber.endSequence();
|
75
|
+
}
|
76
|
+
ber.endSequence();
|
77
|
+
}
|
78
|
+
isDifferent(sources) {
|
79
|
+
const newSources = this.validateSources(sources);
|
80
|
+
if (this.sources == null && newSources == null) {
|
81
|
+
return false;
|
82
|
+
}
|
83
|
+
if ((this.sources == null && newSources != null) ||
|
84
|
+
(this.sources != null && newSources == null) ||
|
85
|
+
(this.sources.length !== newSources.length)) {
|
86
|
+
return true;
|
87
|
+
}
|
88
|
+
for (let i = 0; i < this.sources.length; i++) {
|
89
|
+
if (this.sources[i] !== newSources[i]) {
|
90
|
+
return true;
|
91
|
+
}
|
92
|
+
}
|
93
|
+
return false;
|
94
|
+
}
|
95
|
+
isLocked() {
|
96
|
+
return this._locked;
|
97
|
+
}
|
98
|
+
lock() {
|
99
|
+
this._locked = true;
|
100
|
+
}
|
101
|
+
setSources(sources) {
|
102
|
+
if (sources == null) {
|
103
|
+
delete this.sources;
|
104
|
+
return;
|
105
|
+
}
|
106
|
+
this.sources = this.validateSources(sources);
|
107
|
+
}
|
108
|
+
validateSources(sources) {
|
109
|
+
if (sources == null) {
|
110
|
+
return null;
|
111
|
+
}
|
112
|
+
const s = new Set(sources.map(i => Number(i)));
|
113
|
+
return [...s].sort();
|
114
|
+
}
|
115
|
+
unlock() {
|
116
|
+
this._locked = false;
|
117
|
+
}
|
118
|
+
static get BERID() {
|
119
|
+
return ber_1.APPLICATION(16);
|
120
|
+
}
|
121
|
+
}
|
122
|
+
exports.MatrixConnection = MatrixConnection;
|
123
|
+
//# sourceMappingURL=matrix-connection.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"matrix-connection.js","sourceRoot":"","sources":["../../../src/common/matrix/matrix-connection.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
import { MatrixType } from './matrix-type';
|
2
|
+
import { MatrixMode } from './matrix-mode';
|
3
|
+
import { ExtendedReader as Reader, ExtendedWriter as Writer } from '../../ber';
|
4
|
+
import { Label, LabelInterface } from '../label';
|
5
|
+
export interface JMatrixContents {
|
6
|
+
identifier?: string;
|
7
|
+
description?: string;
|
8
|
+
targetCount?: number;
|
9
|
+
sourceCount?: number;
|
10
|
+
maximumTotalConnects?: number;
|
11
|
+
maximumConnectsPerTarget?: number;
|
12
|
+
parametersLocation?: number | string;
|
13
|
+
gainParameterNumber?: number;
|
14
|
+
labels?: LabelInterface[];
|
15
|
+
schemaIdentifiers?: string;
|
16
|
+
templateReference?: string;
|
17
|
+
}
|
18
|
+
export declare class MatrixContents {
|
19
|
+
type: MatrixType;
|
20
|
+
mode: MatrixMode;
|
21
|
+
identifier?: string;
|
22
|
+
description?: string;
|
23
|
+
targetCount?: number;
|
24
|
+
sourceCount?: number;
|
25
|
+
maximumTotalConnects?: number;
|
26
|
+
maximumConnectsPerTarget?: number;
|
27
|
+
parametersLocation?: number | string;
|
28
|
+
gainParameterNumber?: number;
|
29
|
+
labels?: Label[];
|
30
|
+
schemaIdentifiers?: string;
|
31
|
+
templateReference?: string;
|
32
|
+
constructor(type?: MatrixType, mode?: MatrixMode);
|
33
|
+
static decode(ber: Reader): MatrixContents;
|
34
|
+
encode(ber: Writer): void;
|
35
|
+
toJSON(res?: {
|
36
|
+
[index: string]: any;
|
37
|
+
}): JMatrixContents;
|
38
|
+
}
|
@@ -0,0 +1,173 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const matrix_type_1 = require("./matrix-type");
|
4
|
+
const matrix_mode_1 = require("./matrix-mode");
|
5
|
+
const ber_1 = require("../../ber");
|
6
|
+
const label_1 = require("../label");
|
7
|
+
const errors_1 = require("../../error/errors");
|
8
|
+
class MatrixContents {
|
9
|
+
constructor(type = matrix_type_1.MatrixType.oneToN, mode = matrix_mode_1.MatrixMode.linear) {
|
10
|
+
this.type = type;
|
11
|
+
this.mode = mode;
|
12
|
+
}
|
13
|
+
static decode(ber) {
|
14
|
+
const mc = new MatrixContents();
|
15
|
+
ber = ber.getSequence(ber_1.EMBER_SET);
|
16
|
+
while (ber.remain > 0) {
|
17
|
+
let tag = ber.peek();
|
18
|
+
let seq = ber.getSequence(tag);
|
19
|
+
if (tag === ber_1.CONTEXT(0)) {
|
20
|
+
mc.identifier = seq.readString(ber_1.EMBER_STRING);
|
21
|
+
}
|
22
|
+
else if (tag === ber_1.CONTEXT(1)) {
|
23
|
+
mc.description = seq.readString(ber_1.EMBER_STRING);
|
24
|
+
}
|
25
|
+
else if (tag === ber_1.CONTEXT(2)) {
|
26
|
+
mc.type = seq.readInt();
|
27
|
+
}
|
28
|
+
else if (tag === ber_1.CONTEXT(3)) {
|
29
|
+
mc.mode = seq.readInt();
|
30
|
+
}
|
31
|
+
else if (tag === ber_1.CONTEXT(4)) {
|
32
|
+
mc.targetCount = seq.readInt();
|
33
|
+
}
|
34
|
+
else if (tag === ber_1.CONTEXT(5)) {
|
35
|
+
mc.sourceCount = seq.readInt();
|
36
|
+
}
|
37
|
+
else if (tag === ber_1.CONTEXT(6)) {
|
38
|
+
mc.maximumTotalConnects = seq.readInt();
|
39
|
+
}
|
40
|
+
else if (tag === ber_1.CONTEXT(7)) {
|
41
|
+
mc.maximumConnectsPerTarget = seq.readInt();
|
42
|
+
}
|
43
|
+
else if (tag === ber_1.CONTEXT(8)) {
|
44
|
+
tag = seq.peek();
|
45
|
+
if (tag === ber_1.EMBER_RELATIVE_OID) {
|
46
|
+
mc.parametersLocation = seq.readRelativeOID(ber_1.EMBER_RELATIVE_OID);
|
47
|
+
}
|
48
|
+
else {
|
49
|
+
mc.parametersLocation = seq.readInt();
|
50
|
+
}
|
51
|
+
}
|
52
|
+
else if (tag === ber_1.CONTEXT(9)) {
|
53
|
+
mc.gainParameterNumber = seq.readInt();
|
54
|
+
}
|
55
|
+
else if (tag === ber_1.CONTEXT(10)) {
|
56
|
+
mc.labels = [];
|
57
|
+
seq = seq.getSequence(ber_1.EMBER_SEQUENCE);
|
58
|
+
while (seq.remain > 0) {
|
59
|
+
const lSeq = seq.getSequence(ber_1.CONTEXT(0));
|
60
|
+
mc.labels.push(label_1.Label.decode(lSeq));
|
61
|
+
}
|
62
|
+
}
|
63
|
+
else if (tag === ber_1.CONTEXT(11)) {
|
64
|
+
mc.schemaIdentifiers = seq.readString(ber_1.EMBER_STRING);
|
65
|
+
}
|
66
|
+
else if (tag === ber_1.CONTEXT(12)) {
|
67
|
+
mc.templateReference = seq.readRelativeOID(ber_1.EMBER_RELATIVE_OID);
|
68
|
+
}
|
69
|
+
else {
|
70
|
+
throw new errors_1.UnimplementedEmberTypeError(tag);
|
71
|
+
}
|
72
|
+
}
|
73
|
+
return mc;
|
74
|
+
}
|
75
|
+
encode(ber) {
|
76
|
+
ber.startSequence(ber_1.EMBER_SET);
|
77
|
+
if (this.identifier != null) {
|
78
|
+
ber.startSequence(ber_1.CONTEXT(0));
|
79
|
+
ber.writeString(this.identifier, ber_1.EMBER_STRING);
|
80
|
+
ber.endSequence();
|
81
|
+
}
|
82
|
+
if (this.description != null) {
|
83
|
+
ber.startSequence(ber_1.CONTEXT(1));
|
84
|
+
ber.writeString(this.description, ber_1.EMBER_STRING);
|
85
|
+
ber.endSequence();
|
86
|
+
}
|
87
|
+
if (this.type != null) {
|
88
|
+
ber.startSequence(ber_1.CONTEXT(2));
|
89
|
+
ber.writeInt(this.type);
|
90
|
+
ber.endSequence();
|
91
|
+
}
|
92
|
+
if (this.mode != null) {
|
93
|
+
ber.startSequence(ber_1.CONTEXT(3));
|
94
|
+
ber.writeInt(this.mode);
|
95
|
+
ber.endSequence();
|
96
|
+
}
|
97
|
+
if (this.targetCount != null) {
|
98
|
+
ber.startSequence(ber_1.CONTEXT(4));
|
99
|
+
ber.writeInt(this.targetCount);
|
100
|
+
ber.endSequence();
|
101
|
+
}
|
102
|
+
if (this.sourceCount != null) {
|
103
|
+
ber.startSequence(ber_1.CONTEXT(5));
|
104
|
+
ber.writeInt(this.sourceCount);
|
105
|
+
ber.endSequence();
|
106
|
+
}
|
107
|
+
if (this.maximumTotalConnects != null) {
|
108
|
+
ber.startSequence(ber_1.CONTEXT(6));
|
109
|
+
ber.writeInt(this.maximumTotalConnects);
|
110
|
+
ber.endSequence();
|
111
|
+
}
|
112
|
+
if (this.maximumConnectsPerTarget != null) {
|
113
|
+
ber.startSequence(ber_1.CONTEXT(7));
|
114
|
+
ber.writeInt(this.maximumConnectsPerTarget);
|
115
|
+
ber.endSequence();
|
116
|
+
}
|
117
|
+
if (this.parametersLocation != null) {
|
118
|
+
ber.startSequence(ber_1.CONTEXT(8));
|
119
|
+
const param = Number(this.parametersLocation);
|
120
|
+
if (isNaN(param)) {
|
121
|
+
ber.writeRelativeOID(String(this.parametersLocation), ber_1.EMBER_RELATIVE_OID);
|
122
|
+
}
|
123
|
+
else {
|
124
|
+
ber.writeInt(param);
|
125
|
+
}
|
126
|
+
ber.endSequence();
|
127
|
+
}
|
128
|
+
if (this.gainParameterNumber != null) {
|
129
|
+
ber.startSequence(ber_1.CONTEXT(9));
|
130
|
+
ber.writeInt(this.gainParameterNumber);
|
131
|
+
ber.endSequence();
|
132
|
+
}
|
133
|
+
if (this.labels != null) {
|
134
|
+
ber.startSequence(ber_1.CONTEXT(10));
|
135
|
+
ber.startSequence(ber_1.EMBER_SEQUENCE);
|
136
|
+
for (let i = 0; i < this.labels.length; i++) {
|
137
|
+
ber.startSequence(ber_1.CONTEXT(0));
|
138
|
+
this.labels[i].encode(ber);
|
139
|
+
ber.endSequence();
|
140
|
+
}
|
141
|
+
ber.endSequence();
|
142
|
+
ber.endSequence();
|
143
|
+
}
|
144
|
+
if (this.schemaIdentifiers != null) {
|
145
|
+
ber.startSequence(ber_1.CONTEXT(11));
|
146
|
+
ber.writeString(this.schemaIdentifiers, ber_1.EMBER_STRING);
|
147
|
+
ber.endSequence();
|
148
|
+
}
|
149
|
+
if (this.templateReference != null) {
|
150
|
+
ber.startSequence(ber_1.CONTEXT(12));
|
151
|
+
ber.writeRelativeOID(this.templateReference, ber_1.EMBER_RELATIVE_OID);
|
152
|
+
ber.endSequence();
|
153
|
+
}
|
154
|
+
ber.endSequence();
|
155
|
+
}
|
156
|
+
toJSON(res) {
|
157
|
+
const response = (res || {});
|
158
|
+
response.identifier = this.identifier;
|
159
|
+
response.description = this.description;
|
160
|
+
response.targetCount = this.targetCount;
|
161
|
+
response.sourceCount = this.sourceCount;
|
162
|
+
response.maximumTotalConnects = this.maximumTotalConnects;
|
163
|
+
response.maximumConnectsPerTarget = this.maximumConnectsPerTarget;
|
164
|
+
response.parametersLocation = this.parametersLocation;
|
165
|
+
response.gainParameterNumber = this.gainParameterNumber;
|
166
|
+
response.labels = this.labels == null || this.labels.length === 0 ? [] : this.labels.map(l => l.toJSON());
|
167
|
+
response.schemaIdentifiers = this.schemaIdentifiers;
|
168
|
+
response.templateReference = this.templateReference;
|
169
|
+
return response;
|
170
|
+
}
|
171
|
+
}
|
172
|
+
exports.MatrixContents = MatrixContents;
|
173
|
+
//# sourceMappingURL=matrix-contents.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"matrix-contents.js","sourceRoot":"","sources":["../../../src/common/matrix/matrix-contents.ts"],"names":[],"mappings":"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"}
|