diff --git a/src/app.module.ts b/src/app.module.ts
index bc20acf..040bf33 100644
--- a/src/app.module.ts
+++ b/src/app.module.ts
@@ -22,7 +22,6 @@ import { TelegramBotService } from './telegram-bot/telegram-bot.service';
import { UserMetaInfoService } from './user-meta-info/user-meta-info.service';
import { UserMetaInfo } from './couchdb-datasources/user-meta-info';
import { PersonalNotificationAdapterService } from './notifications/adapters/personal-notification.adapter/personal-notification.adapter.service';
-import { PublicUrlAdapterService } from './notifications/adapters/public-url.adapter.service';
import { StatusChangeAdapterService } from './notifications/adapters/status-change.adapter.service';
@Module({
@@ -49,7 +48,6 @@ import { StatusChangeAdapterService } from './notifications/adapters/status-chan
UserMetaInfoService,
UserMetaInfo,
PersonalNotificationAdapterService,
- PublicUrlAdapterService,
StatusChangeAdapterService,
],
})
diff --git a/src/converters/redmine-public-url.converter.ts b/src/converters/redmine-public-url.converter.ts
index 1abf0b1..da7b4d2 100644
--- a/src/converters/redmine-public-url.converter.ts
+++ b/src/converters/redmine-public-url.converter.ts
@@ -1,3 +1,4 @@
+import { RedmineTypes } from '@app/event-emitter/models/redmine-types';
import { Injectable } from '@nestjs/common';
import { ConfigService } from '@nestjs/config';
@@ -14,4 +15,13 @@ export class RedminePublicUrlConverter {
convert(issueId: number | string): string {
return `${this.redminePublicUrlPrefix}/issues/${issueId}`;
}
+
+ getUrl(issueId: number | string): string {
+ return this.convert(issueId);
+ }
+
+ getHtmlHref(issue: RedmineTypes.Issue): string {
+ const url = this.getUrl(issue.id);
+ return `${issue.tracker.name} #${issue.id}`;
+ }
}
diff --git a/src/notifications/adapters/personal-notification.adapter/personal-notification.adapter.service.ts b/src/notifications/adapters/personal-notification.adapter/personal-notification.adapter.service.ts
index 83c645a..6d946ea 100644
--- a/src/notifications/adapters/personal-notification.adapter/personal-notification.adapter.service.ts
+++ b/src/notifications/adapters/personal-notification.adapter/personal-notification.adapter.service.ts
@@ -4,7 +4,7 @@ import { ConfigService } from '@nestjs/config';
import { IssueAndPersonalParsedMessageModel } from 'src/models/issue-and-personal-parsed-message.model';
import { TelegramBotService } from 'src/telegram-bot/telegram-bot.service';
import Handlebars from 'handlebars';
-import { PublicUrlAdapterService } from '../public-url.adapter.service';
+import { RedminePublicUrlConverter } from 'src/converters/redmine-public-url.converter';
@Injectable()
export class PersonalNotificationAdapterService {
@@ -14,7 +14,7 @@ export class PersonalNotificationAdapterService {
private telegramBotService: TelegramBotService,
private configService: ConfigService,
private usersService: UsersService,
- private publicUrlAdapterService: PublicUrlAdapterService,
+ private redminePublicUrlConverter: RedminePublicUrlConverter,
) {
const template = this.configService.get('personalMessageTemplate');
this.personalMessageTemplate = Handlebars.compile(template);
@@ -26,7 +26,7 @@ export class PersonalNotificationAdapterService {
const promises = issueAndMessages.personalParsedMessage.recipients.map(
async (recipient) => {
const redmineId = recipient;
- const issueUrlHtml = this.publicUrlAdapterService.getHtmlHref(
+ const issueUrlHtml = this.redminePublicUrlConverter.getHtmlHref(
issueAndMessages.issue,
);
const sender = await this.usersService.getUser(
diff --git a/src/notifications/adapters/public-url.adapter.service.ts b/src/notifications/adapters/public-url.adapter.service.ts
deleted file mode 100644
index fe2b4de..0000000
--- a/src/notifications/adapters/public-url.adapter.service.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-import { RedmineTypes } from '@app/event-emitter/models/redmine-types';
-import { Injectable } from '@nestjs/common';
-import { ConfigService } from '@nestjs/config';
-
-@Injectable()
-export class PublicUrlAdapterService {
- private publicUrl: string;
-
- constructor(private configService: ConfigService) {
- this.publicUrl = this.configService.get('redmineUrlPublic');
- }
-
- getUrl(issueId: number): string {
- return `${this.publicUrl}/issues/${issueId}`;
- }
-
- getHtmlHref(issue: RedmineTypes.Issue): string {
- const url = this.getUrl(issue.id);
- return `${issue.tracker.name} #${issue.id}`;
- }
-}