Просмотр исходного кода

using 'extensible-custom-error' successful

kaori 4 лет назад
Родитель
Сommit
abf8dcf503

+ 4 - 0
packages/slackbot-proxy/src/controllers/slack.ts

@@ -20,6 +20,7 @@ import { AuthorizeCommandMiddleware, AuthorizeInteractionMiddleware } from '~/mi
 import { InstallerService } from '~/services/InstallerService';
 import { RegisterService } from '~/services/RegisterService';
 import { UnregisterService } from '~/services/UnregisterService';
+import { InvalidUrlError } from '../models/errors';
 import loggerFactory from '~/utils/logger';
 
 
@@ -191,6 +192,9 @@ export class SlackCtrl {
         await this.registerService.insertOrderRecord(this.orderRepository, installation, authorizeResult, payload);
       }
       catch (err) {
+        if (err instanceof InvalidUrlError) {
+          console.log('InvalidUrlErrorきた');
+        }
         logger.error(err);
         return;
       }

+ 2 - 8
packages/slackbot-proxy/src/models/errors.ts

@@ -1,9 +1,3 @@
-export class MyError extends Error {
+import ExtensibleCustomError from 'extensible-custom-error';
 
-  constructor(e?: string) {
-    super(e);
-    this.name = new.target.name;
-    Object.setPrototypeOf(this, new.target.prototype);
-  }
-
-}
+export class InvalidUrlError extends ExtensibleCustomError {}

+ 2 - 1
packages/slackbot-proxy/src/services/RegisterService.ts

@@ -5,6 +5,7 @@ import { AuthorizeResult } from '@slack/oauth';
 import { GrowiCommandProcessor } from '~/interfaces/slack-to-growi/growi-command-processor';
 import { OrderRepository } from '~/repositories/order';
 import { Installation } from '~/entities/installation';
+import { InvalidUrlError } from '../models/errors';
 
 const isProduction = process.env.NODE_ENV === 'production';
 
@@ -79,7 +80,7 @@ export class RegisterService implements GrowiCommandProcessor {
     }
     catch (error) {
       postInvalidUrlErr();
-      throw new Error('Invalid URL');
+      throw new InvalidUrlError();
     }
 
     orderRepository.save({