aboutsummaryrefslogtreecommitdiff
path: root/src/server/RouteManager.ts
diff options
context:
space:
mode:
authorSam Wilkins <samwilkins333@gmail.com>2019-12-02 12:12:58 -0500
committerSam Wilkins <samwilkins333@gmail.com>2019-12-02 12:12:58 -0500
commit77ee66de66a411f79bbbc036d379d09be38d172f (patch)
treeddb0936a3adbe6821d44906d46ac9cd0182b4d15 /src/server/RouteManager.ts
parentee1ac7b8c9550cc842e91985c1a92d79ce0e5235 (diff)
further cleanup
Diffstat (limited to 'src/server/RouteManager.ts')
-rw-r--r--src/server/RouteManager.ts14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/server/RouteManager.ts b/src/server/RouteManager.ts
index 3a20d5af5..7c49485f1 100644
--- a/src/server/RouteManager.ts
+++ b/src/server/RouteManager.ts
@@ -26,6 +26,8 @@ export interface RouteInitializer {
onError?: OnError;
}
+const registered = new Map<string, Set<Method>>();
+
export default class RouteManager {
private server: express.Express;
private _isRelease: boolean;
@@ -89,6 +91,18 @@ export default class RouteManager {
} else {
route = subscriber.build;
}
+ const existing = registered.get(route);
+ if (existing) {
+ if (existing.has(method)) {
+ console.log(ConsoleColors.Red, `\nDuplicate registration error: already registered ${route} with Method[${method}]`);
+ console.log('Please remove duplicate registrations before continuing...\n');
+ process.exit(0);
+ }
+ } else {
+ const specific = new Set<Method>();
+ specific.add(method);
+ registered.set(route, specific);
+ }
switch (method) {
case Method.GET:
this.server.get(route, supervised);