@pristine-ts/networking 0.0.161 → 0.0.165

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.
@@ -13,6 +13,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
13
13
  exports.NetworkingModule = void 0;
14
14
  const networking_module_keyname_1 = require("./networking.module.keyname");
15
15
  const security_1 = require("@pristine-ts/security");
16
+ const telemetry_1 = require("@pristine-ts/telemetry");
16
17
  __exportStar(require("./decorators/decorators"), exports);
17
18
  __exportStar(require("./enrichers/enrichers"), exports);
18
19
  //export * from "./enums/enums";
@@ -31,7 +32,8 @@ exports.NetworkingModule = {
31
32
  */
32
33
  providerRegistrations: [],
33
34
  importModules: [
34
- security_1.SecurityModule
35
+ security_1.SecurityModule,
36
+ telemetry_1.TelemetryModule,
35
37
  ],
36
38
  configurationDefinitions: [],
37
39
  };
@@ -1 +1 @@
1
- {"version":3,"file":"networking.module.js","sourceRoot":"","sources":["../../../src/networking.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,2EAAoE;AACpE,oDAAqD;AAErD,0DAAwC;AACxC,wDAAsC;AACtC,gCAAgC;AAChC,kDAAgC;AAChC,0DAAwC;AACxC,kDAAgC;AAChC,gDAA8B;AAC9B,wDAAsC;AACtC,gDAA8B;AAE9B,2CAAyB;AAEZ,QAAA,gBAAgB,GAAoB;IAC7C,OAAO,EAAE,mDAAuB;IAChC;;;OAGG;IACH,qBAAqB,EAAE,EACtB;IAED,aAAa,EAAE;QACX,yBAAc;KACjB;IACD,wBAAwB,EAAE,EAEzB;CACJ,CAAA"}
1
+ {"version":3,"file":"networking.module.js","sourceRoot":"","sources":["../../../src/networking.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,2EAAoE;AACpE,oDAAqD;AACrD,sDAAuD;AAEvD,0DAAwC;AACxC,wDAAsC;AACtC,gCAAgC;AAChC,kDAAgC;AAChC,0DAAwC;AACxC,kDAAgC;AAChC,gDAA8B;AAC9B,wDAAsC;AACtC,gDAA8B;AAE9B,2CAAyB;AAEZ,QAAA,gBAAgB,GAAoB;IAC7C,OAAO,EAAE,mDAAuB;IAChC;;;OAGG;IACH,qBAAqB,EAAE,EACtB;IAED,aAAa,EAAE;QACX,yBAAc;QACd,2BAAe;KAClB;IACD,wBAAwB,EAAE,EAEzB;CACJ,CAAA"}
@@ -11,10 +11,28 @@ require("reflect-metadata");
11
11
  const tsyringe_1 = require("tsyringe");
12
12
  const common_1 = require("@pristine-ts/common");
13
13
  const networking_module_keyname_1 = require("../networking.module.keyname");
14
+ /**
15
+ * The RequestParameterDecoratorResolver resolves the value of the whole request so that it can be injected it into the
16
+ * parameter of the route of the controller that was annotated with the @request decorator.
17
+ * It is tagged as an MethodParameterDecoratorResolver so it can be automatically injected with the all the other MethodParameterDecoratorResolvers.
18
+ */
14
19
  let RequestParameterDecoratorResolver = class RequestParameterDecoratorResolver {
20
+ /**
21
+ * Resolves the value of the whole request.
22
+ * The router than injects that value into the parameter of the controller method.
23
+ * @param methodArgument The method argument created by the decorator.
24
+ * @param request The request
25
+ * @param routeParameters The router parameters
26
+ * @param identity The identity making the request
27
+ */
15
28
  resolve(methodArgument, request, routeParameters, identity) {
16
29
  return Promise.resolve(request !== null && request !== void 0 ? request : null);
17
30
  }
31
+ /**
32
+ * Returns whether or not the resolver support such a method argument.
33
+ * Usually we will check the methodArgument.type field to determine if it is a supported type.
34
+ * @param methodArgument
35
+ */
18
36
  supports(methodArgument) {
19
37
  return methodArgument && methodArgument.hasOwnProperty("type") && methodArgument.type === "request";
20
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"request-parameter-decorator.resolver.js","sourceRoot":"","sources":["../../../../src/resolvers/request-parameter-decorator.resolver.ts"],"names":[],"mappings":";;;;;;;;;AAAA,4BAAyB;AACzB,uCAAoC;AAGpC,gDAAmG;AACnG,4EAAqE;AAKrE,IAAa,iCAAiC,GAA9C,MAAa,iCAAiC;IAC1C,OAAO,CAAC,cAAmB,EACnB,OAAgB,EAChB,eAAwC,EACxC,QAA4B;QAChC,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,QAAQ,CAAC,cAAmB;QACxB,OAAO,cAAc,IAAI,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,CAAC;IACxG,CAAC;CACJ,CAAA;AAXY,iCAAiC;IAH7C,qBAAY,CAAC,mDAAuB,CAAC;IACrC,YAAG,CAAC,iCAAwB,CAAC,gCAAgC,CAAC;IAC9D,qBAAU,EAAE;GACA,iCAAiC,CAW7C;AAXY,8EAAiC"}
1
+ {"version":3,"file":"request-parameter-decorator.resolver.js","sourceRoot":"","sources":["../../../../src/resolvers/request-parameter-decorator.resolver.ts"],"names":[],"mappings":";;;;;;;;;AAAA,4BAAyB;AACzB,uCAAoC;AAGpC,gDAAmG;AACnG,4EAAqE;AAIrE;;;;GAIG;AAIH,IAAa,iCAAiC,GAA9C,MAAa,iCAAiC;IAE1C;;;;;;;OAOG;IACH,OAAO,CAAC,cAAkD,EAClD,OAAgB,EAChB,eAAwC,EACxC,QAA4B;QAChC,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,cAA2C;QAChD,OAAO,cAAc,IAAI,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,CAAC;IACxG,CAAC;CACJ,CAAA;AAzBY,iCAAiC;IAH7C,qBAAY,CAAC,mDAAuB,CAAC;IACrC,YAAG,CAAC,iCAAwB,CAAC,gCAAgC,CAAC;IAC9D,qBAAU,EAAE;GACA,iCAAiC,CAyB7C;AAzBY,8EAAiC"}
@@ -35,6 +35,7 @@ const controller_method_parameter_decorator_resolver_1 = require("./resolvers/co
35
35
  const url_parse_1 = __importDefault(require("url-parse"));
36
36
  const common_1 = require("@pristine-ts/common");
37
37
  const networking_module_keyname_1 = require("./networking.module.keyname");
38
+ const telemetry_1 = require("@pristine-ts/telemetry");
38
39
  let Router = class Router {
39
40
  constructor(loghandler, controllerMethodParameterDecoratorResolver, authorizerManager, authenticationManager) {
40
41
  this.loghandler = loghandler;
@@ -63,13 +64,17 @@ let Router = class Router {
63
64
  * @param container
64
65
  */
65
66
  execute(request, container) {
67
+ const tracingManager = container.resolve("TracingManagerInterface");
68
+ const routerRequestExecutionSpan = tracingManager.startSpan(telemetry_1.SpanKeynameEnum.RouterRequestExecution, telemetry_1.SpanKeynameEnum.RequestExecution);
66
69
  return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
67
70
  // Start by decomposing the URL. Set second parameter to true since we want to parse the query strings
68
71
  const url = new url_parse_1.default(request.url, false);
69
72
  // Split the path name
70
73
  const splitPath = url_util_1.UrlUtil.splitPath(url.pathname);
74
+ const methodNodeSpan = tracingManager.startSpan(telemetry_1.SpanKeynameEnum.RouterFindMethodRouterNode, telemetry_1.SpanKeynameEnum.RouterRequestExecution);
71
75
  // Retrieve the node to have information about the controller
72
76
  const methodNode = this.root.find(splitPath, request.httpMethod);
77
+ methodNodeSpan.end();
73
78
  this.loghandler.debug("Execute request", {
74
79
  rootNode: this.root,
75
80
  request,
@@ -83,19 +88,24 @@ let Router = class Router {
83
88
  request,
84
89
  url,
85
90
  }, networking_module_keyname_1.NetworkingModuleKeyname);
91
+ routerRequestExecutionSpan.end();
86
92
  return reject(new not_found_http_error_1.NotFoundHttpError("No route found for path: '" + url.pathname + "'."));
87
93
  }
88
94
  // Get the route parameters
89
95
  const routeParameters = methodNode.parent.getRouteParameters(splitPath.reverse());
90
96
  // Instantiate the controller
97
+ const routerControllerResolverSpan = tracingManager.startSpan(telemetry_1.SpanKeynameEnum.RouterControllerResolver, telemetry_1.SpanKeynameEnum.RouterRequestExecution);
91
98
  const controller = container.resolve(methodNode.route.controllerInstantiationToken);
99
+ routerControllerResolverSpan.end();
92
100
  this.loghandler.debug("Before calling the authenticationManager", {
93
101
  controller,
94
102
  routeParameters
95
103
  }, networking_module_keyname_1.NetworkingModuleKeyname);
96
104
  let identity;
97
105
  try {
106
+ const routerRequestAuthenticationSpan = tracingManager.startSpan(telemetry_1.SpanKeynameEnum.RouterRequestAuthentication, telemetry_1.SpanKeynameEnum.RouterRequestExecution);
98
107
  identity = yield this.authenticationManager.authenticate(request, methodNode.route.context, container);
108
+ routerRequestAuthenticationSpan.end();
99
109
  this.loghandler.debug("Found identity.", {
100
110
  identity
101
111
  }, networking_module_keyname_1.NetworkingModuleKeyname);
@@ -111,6 +121,7 @@ let Router = class Router {
111
121
  if (error instanceof forbidden_http_error_1.ForbiddenHttpError === false) {
112
122
  error = new forbidden_http_error_1.ForbiddenHttpError("You are not allowed to access this.");
113
123
  }
124
+ routerRequestExecutionSpan.end();
114
125
  return reject(error);
115
126
  }
116
127
  // Call the controller with the resolved Method arguments
@@ -122,9 +133,12 @@ let Router = class Router {
122
133
  container,
123
134
  identity
124
135
  }, networking_module_keyname_1.NetworkingModuleKeyname);
136
+ routerRequestExecutionSpan.end();
125
137
  return reject(new forbidden_http_error_1.ForbiddenHttpError("You are not allowed to access this."));
126
138
  }
139
+ const requestEnrichersSpan = tracingManager.startSpan(telemetry_1.SpanKeynameEnum.RouterRequestEnrichers, telemetry_1.SpanKeynameEnum.RouterRequestExecution);
127
140
  const enrichedRequest = yield this.executeRequestEnrichers(request, container, methodNode);
141
+ requestEnrichersSpan.end();
128
142
  this.loghandler.debug("This request has been enriched", {
129
143
  request,
130
144
  enrichedRequest,
@@ -155,17 +169,21 @@ let Router = class Router {
155
169
  returnedResponse.status = 200;
156
170
  returnedResponse.body = response;
157
171
  }
172
+ const responseEnrichersSpan = tracingManager.startSpan(telemetry_1.SpanKeynameEnum.RouterResponseEnrichers, telemetry_1.SpanKeynameEnum.RouterRequestExecution);
158
173
  const enrichedResponse = yield this.executeResponseEnrichers(returnedResponse, request, container, methodNode);
174
+ responseEnrichersSpan.end();
159
175
  this.loghandler.debug("This response has been enriched", {
160
176
  returnedResponse,
161
177
  enrichedResponse,
162
178
  }, networking_module_keyname_1.NetworkingModuleKeyname);
179
+ routerRequestExecutionSpan.end();
163
180
  return resolve(returnedResponse);
164
181
  }
165
182
  catch (error) {
166
183
  this.loghandler.error("There was an error trying to execute the request in the router", {
167
184
  error,
168
185
  }, networking_module_keyname_1.NetworkingModuleKeyname);
186
+ routerRequestExecutionSpan.end();
169
187
  return reject(error);
170
188
  }
171
189
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/router.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { NetworkingModuleKeyname } from "./networking.module.keyname";
2
2
  import { SecurityModule } from "@pristine-ts/security";
3
+ import { TelemetryModule } from "@pristine-ts/telemetry";
3
4
  export * from "./decorators/decorators";
4
5
  export * from "./enrichers/enrichers";
5
6
  //export * from "./enums/enums";
@@ -18,7 +19,8 @@ export const NetworkingModule = {
18
19
  */
19
20
  providerRegistrations: [],
20
21
  importModules: [
21
- SecurityModule
22
+ SecurityModule,
23
+ TelemetryModule,
22
24
  ],
23
25
  configurationDefinitions: [],
24
26
  };
@@ -1 +1 @@
1
- {"version":3,"file":"networking.module.js","sourceRoot":"","sources":["../../../src/networking.module.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAC,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AAErD,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,gCAAgC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAE9B,cAAc,UAAU,CAAC;AAEzB,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC7C,OAAO,EAAE,uBAAuB;IAChC;;;OAGG;IACH,qBAAqB,EAAE,EACtB;IAED,aAAa,EAAE;QACX,cAAc;KACjB;IACD,wBAAwB,EAAE,EAEzB;CACJ,CAAA"}
1
+ {"version":3,"file":"networking.module.js","sourceRoot":"","sources":["../../../src/networking.module.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAC,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAEvD,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,gCAAgC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAE9B,cAAc,UAAU,CAAC;AAEzB,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC7C,OAAO,EAAE,uBAAuB;IAChC;;;OAGG;IACH,qBAAqB,EAAE,EACtB;IAED,aAAa,EAAE;QACX,cAAc;QACd,eAAe;KAClB;IACD,wBAAwB,EAAE,EAEzB;CACJ,CAAA"}
@@ -8,10 +8,28 @@ import "reflect-metadata";
8
8
  import { injectable } from "tsyringe";
9
9
  import { moduleScoped, ServiceDefinitionTagEnum, tag } from "@pristine-ts/common";
10
10
  import { NetworkingModuleKeyname } from "../networking.module.keyname";
11
+ /**
12
+ * The RequestParameterDecoratorResolver resolves the value of the whole request so that it can be injected it into the
13
+ * parameter of the route of the controller that was annotated with the @request decorator.
14
+ * It is tagged as an MethodParameterDecoratorResolver so it can be automatically injected with the all the other MethodParameterDecoratorResolvers.
15
+ */
11
16
  let RequestParameterDecoratorResolver = class RequestParameterDecoratorResolver {
17
+ /**
18
+ * Resolves the value of the whole request.
19
+ * The router than injects that value into the parameter of the controller method.
20
+ * @param methodArgument The method argument created by the decorator.
21
+ * @param request The request
22
+ * @param routeParameters The router parameters
23
+ * @param identity The identity making the request
24
+ */
12
25
  resolve(methodArgument, request, routeParameters, identity) {
13
26
  return Promise.resolve(request !== null && request !== void 0 ? request : null);
14
27
  }
28
+ /**
29
+ * Returns whether or not the resolver support such a method argument.
30
+ * Usually we will check the methodArgument.type field to determine if it is a supported type.
31
+ * @param methodArgument
32
+ */
15
33
  supports(methodArgument) {
16
34
  return methodArgument && methodArgument.hasOwnProperty("type") && methodArgument.type === "request";
17
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"request-parameter-decorator.resolver.js","sourceRoot":"","sources":["../../../../src/resolvers/request-parameter-decorator.resolver.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,kBAAkB,CAAA;AACzB,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAGpC,OAAO,EAAoB,YAAY,EAAE,wBAAwB,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AACnG,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AAKrE,IAAa,iCAAiC,GAA9C,MAAa,iCAAiC;IAC1C,OAAO,CAAC,cAAmB,EACnB,OAAgB,EAChB,eAAwC,EACxC,QAA4B;QAChC,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,QAAQ,CAAC,cAAmB;QACxB,OAAO,cAAc,IAAI,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,CAAC;IACxG,CAAC;CACJ,CAAA;AAXY,iCAAiC;IAH7C,YAAY,CAAC,uBAAuB,CAAC;IACrC,GAAG,CAAC,wBAAwB,CAAC,gCAAgC,CAAC;IAC9D,UAAU,EAAE;GACA,iCAAiC,CAW7C;SAXY,iCAAiC"}
1
+ {"version":3,"file":"request-parameter-decorator.resolver.js","sourceRoot":"","sources":["../../../../src/resolvers/request-parameter-decorator.resolver.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,kBAAkB,CAAA;AACzB,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAGpC,OAAO,EAAoB,YAAY,EAAE,wBAAwB,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AACnG,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AAIrE;;;;GAIG;AAIH,IAAa,iCAAiC,GAA9C,MAAa,iCAAiC;IAE1C;;;;;;;OAOG;IACH,OAAO,CAAC,cAAkD,EAClD,OAAgB,EAChB,eAAwC,EACxC,QAA4B;QAChC,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,cAA2C;QAChD,OAAO,cAAc,IAAI,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,CAAC;IACxG,CAAC;CACJ,CAAA;AAzBY,iCAAiC;IAH7C,YAAY,CAAC,uBAAuB,CAAC;IACrC,GAAG,CAAC,wBAAwB,CAAC,gCAAgC,CAAC;IAC9D,UAAU,EAAE;GACA,iCAAiC,CAyB7C;SAzBY,iCAAiC"}
@@ -29,6 +29,7 @@ import { ControllerMethodParameterDecoratorResolver } from "./resolvers/controll
29
29
  import Url from 'url-parse';
30
30
  import { ServiceDefinitionTagEnum } from "@pristine-ts/common";
31
31
  import { NetworkingModuleKeyname } from "./networking.module.keyname";
32
+ import { SpanKeynameEnum } from "@pristine-ts/telemetry";
32
33
  let Router = class Router {
33
34
  constructor(loghandler, controllerMethodParameterDecoratorResolver, authorizerManager, authenticationManager) {
34
35
  this.loghandler = loghandler;
@@ -57,13 +58,17 @@ let Router = class Router {
57
58
  * @param container
58
59
  */
59
60
  execute(request, container) {
61
+ const tracingManager = container.resolve("TracingManagerInterface");
62
+ const routerRequestExecutionSpan = tracingManager.startSpan(SpanKeynameEnum.RouterRequestExecution, SpanKeynameEnum.RequestExecution);
60
63
  return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
61
64
  // Start by decomposing the URL. Set second parameter to true since we want to parse the query strings
62
65
  const url = new Url(request.url, false);
63
66
  // Split the path name
64
67
  const splitPath = UrlUtil.splitPath(url.pathname);
68
+ const methodNodeSpan = tracingManager.startSpan(SpanKeynameEnum.RouterFindMethodRouterNode, SpanKeynameEnum.RouterRequestExecution);
65
69
  // Retrieve the node to have information about the controller
66
70
  const methodNode = this.root.find(splitPath, request.httpMethod);
71
+ methodNodeSpan.end();
67
72
  this.loghandler.debug("Execute request", {
68
73
  rootNode: this.root,
69
74
  request,
@@ -77,19 +82,24 @@ let Router = class Router {
77
82
  request,
78
83
  url,
79
84
  }, NetworkingModuleKeyname);
85
+ routerRequestExecutionSpan.end();
80
86
  return reject(new NotFoundHttpError("No route found for path: '" + url.pathname + "'."));
81
87
  }
82
88
  // Get the route parameters
83
89
  const routeParameters = methodNode.parent.getRouteParameters(splitPath.reverse());
84
90
  // Instantiate the controller
91
+ const routerControllerResolverSpan = tracingManager.startSpan(SpanKeynameEnum.RouterControllerResolver, SpanKeynameEnum.RouterRequestExecution);
85
92
  const controller = container.resolve(methodNode.route.controllerInstantiationToken);
93
+ routerControllerResolverSpan.end();
86
94
  this.loghandler.debug("Before calling the authenticationManager", {
87
95
  controller,
88
96
  routeParameters
89
97
  }, NetworkingModuleKeyname);
90
98
  let identity;
91
99
  try {
100
+ const routerRequestAuthenticationSpan = tracingManager.startSpan(SpanKeynameEnum.RouterRequestAuthentication, SpanKeynameEnum.RouterRequestExecution);
92
101
  identity = yield this.authenticationManager.authenticate(request, methodNode.route.context, container);
102
+ routerRequestAuthenticationSpan.end();
93
103
  this.loghandler.debug("Found identity.", {
94
104
  identity
95
105
  }, NetworkingModuleKeyname);
@@ -105,6 +115,7 @@ let Router = class Router {
105
115
  if (error instanceof ForbiddenHttpError === false) {
106
116
  error = new ForbiddenHttpError("You are not allowed to access this.");
107
117
  }
118
+ routerRequestExecutionSpan.end();
108
119
  return reject(error);
109
120
  }
110
121
  // Call the controller with the resolved Method arguments
@@ -116,9 +127,12 @@ let Router = class Router {
116
127
  container,
117
128
  identity
118
129
  }, NetworkingModuleKeyname);
130
+ routerRequestExecutionSpan.end();
119
131
  return reject(new ForbiddenHttpError("You are not allowed to access this."));
120
132
  }
133
+ const requestEnrichersSpan = tracingManager.startSpan(SpanKeynameEnum.RouterRequestEnrichers, SpanKeynameEnum.RouterRequestExecution);
121
134
  const enrichedRequest = yield this.executeRequestEnrichers(request, container, methodNode);
135
+ requestEnrichersSpan.end();
122
136
  this.loghandler.debug("This request has been enriched", {
123
137
  request,
124
138
  enrichedRequest,
@@ -149,17 +163,21 @@ let Router = class Router {
149
163
  returnedResponse.status = 200;
150
164
  returnedResponse.body = response;
151
165
  }
166
+ const responseEnrichersSpan = tracingManager.startSpan(SpanKeynameEnum.RouterResponseEnrichers, SpanKeynameEnum.RouterRequestExecution);
152
167
  const enrichedResponse = yield this.executeResponseEnrichers(returnedResponse, request, container, methodNode);
168
+ responseEnrichersSpan.end();
153
169
  this.loghandler.debug("This response has been enriched", {
154
170
  returnedResponse,
155
171
  enrichedResponse,
156
172
  }, NetworkingModuleKeyname);
173
+ routerRequestExecutionSpan.end();
157
174
  return resolve(returnedResponse);
158
175
  }
159
176
  catch (error) {
160
177
  this.loghandler.error("There was an error trying to execute the request in the router", {
161
178
  error,
162
179
  }, NetworkingModuleKeyname);
180
+ routerRequestExecutionSpan.end();
163
181
  return reject(error);
164
182
  }
165
183
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/router.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,29 @@ import "reflect-metadata";
2
2
  import { ControllerMethodParameterDecoratorResolverInterface } from "../interfaces/controller-method-parameter-decorator-resolver.interface";
3
3
  import { Request } from "../models/request";
4
4
  import { IdentityInterface } from "@pristine-ts/common";
5
+ import { RequestParameterDecoratorInterface } from "../interfaces/request-parameter-decorator.interface";
6
+ import { ParameterDecoratorInterface } from "../interfaces/parameter-decorator.interface";
7
+ /**
8
+ * The RequestParameterDecoratorResolver resolves the value of the whole request so that it can be injected it into the
9
+ * parameter of the route of the controller that was annotated with the @request decorator.
10
+ * It is tagged as an MethodParameterDecoratorResolver so it can be automatically injected with the all the other MethodParameterDecoratorResolvers.
11
+ */
5
12
  export declare class RequestParameterDecoratorResolver implements ControllerMethodParameterDecoratorResolverInterface {
6
- resolve(methodArgument: any, request: Request, routeParameters: {
13
+ /**
14
+ * Resolves the value of the whole request.
15
+ * The router than injects that value into the parameter of the controller method.
16
+ * @param methodArgument The method argument created by the decorator.
17
+ * @param request The request
18
+ * @param routeParameters The router parameters
19
+ * @param identity The identity making the request
20
+ */
21
+ resolve(methodArgument: RequestParameterDecoratorInterface, request: Request, routeParameters: {
7
22
  [p: string]: string;
8
23
  }, identity?: IdentityInterface): Promise<any>;
9
- supports(methodArgument: any): boolean;
24
+ /**
25
+ * Returns whether or not the resolver support such a method argument.
26
+ * Usually we will check the methodArgument.type field to determine if it is a supported type.
27
+ * @param methodArgument
28
+ */
29
+ supports(methodArgument: ParameterDecoratorInterface): boolean;
10
30
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pristine-ts/networking",
3
- "version": "0.0.161",
3
+ "version": "0.0.165",
4
4
  "description": "",
5
5
  "module": "dist/lib/esm/networking.module.js",
6
6
  "main": "dist/lib/cjs/networking.module.js",
@@ -19,8 +19,9 @@
19
19
  "access": "public"
20
20
  },
21
21
  "dependencies": {
22
- "@pristine-ts/common": "^0.0.161",
23
- "@pristine-ts/security": "^0.0.161",
22
+ "@pristine-ts/common": "^0.0.165",
23
+ "@pristine-ts/security": "^0.0.165",
24
+ "@pristine-ts/telemetry": "^0.0.165",
24
25
  "url-parse": "^1.4.7"
25
26
  },
26
27
  "jest": {
@@ -57,5 +58,5 @@
57
58
  "src/*.{js,ts}"
58
59
  ]
59
60
  },
60
- "gitHead": "8799d71a108e83f99a57bad5e0e17853031e02ab"
61
+ "gitHead": "da23f627c5a73c8b1aec0951e4b4f10ceeff44cb"
61
62
  }