aboutsummaryrefslogtreecommitdiff
path: root/src/background/infrastructures
diff options
context:
space:
mode:
authorShin'ya Ueoka <ueokande@i-beam.org>2019-05-22 20:16:21 +0900
committerGitHub <noreply@github.com>2019-05-22 20:16:21 +0900
commitc1f64927b63d18048790abd3ba907083dbca3084 (patch)
tree3a64b677763f62094c49527d8182f8756a52fbd1 /src/background/infrastructures
parentced89134e32d793d8e091113cfb20867e1c3b572 (diff)
parent7be8bc71784b8dedd0fee03dd72dd8936e2f3929 (diff)
Merge pull request #588 from ueokande/tsyringe
Use tsyringe for DI container
Diffstat (limited to 'src/background/infrastructures')
-rw-r--r--src/background/infrastructures/ConsoleClient.ts2
-rw-r--r--src/background/infrastructures/ContentMessageClient.ts2
-rw-r--r--src/background/infrastructures/ContentMessageListener.ts34
3 files changed, 15 insertions, 23 deletions
diff --git a/src/background/infrastructures/ConsoleClient.ts b/src/background/infrastructures/ConsoleClient.ts
index c162634..1385fe7 100644
--- a/src/background/infrastructures/ConsoleClient.ts
+++ b/src/background/infrastructures/ConsoleClient.ts
@@ -1,5 +1,7 @@
+import { injectable } from 'tsyringe';
import * as messages from '../../shared/messages';
+@injectable()
export default class ConsoleClient {
showCommand(tabId: number, command: string): Promise<any> {
return browser.tabs.sendMessage(tabId, {
diff --git a/src/background/infrastructures/ContentMessageClient.ts b/src/background/infrastructures/ContentMessageClient.ts
index 2215330..2983409 100644
--- a/src/background/infrastructures/ContentMessageClient.ts
+++ b/src/background/infrastructures/ContentMessageClient.ts
@@ -1,5 +1,7 @@
+import { injectable } from 'tsyringe';
import * as messages from '../../shared/messages';
+@injectable()
export default class ContentMessageClient {
async broadcastSettingsChanged(): Promise<void> {
let tabs = await browser.tabs.query({});
diff --git a/src/background/infrastructures/ContentMessageListener.ts b/src/background/infrastructures/ContentMessageListener.ts
index 1cc2696..3d24741 100644
--- a/src/background/infrastructures/ContentMessageListener.ts
+++ b/src/background/infrastructures/ContentMessageListener.ts
@@ -1,3 +1,4 @@
+import { injectable } from 'tsyringe';
import * as messages from '../../shared/messages';
import CompletionGroup from '../domains/CompletionGroup';
import CommandController from '../controllers/CommandController';
@@ -8,32 +9,19 @@ import LinkController from '../controllers/LinkController';
import OperationController from '../controllers/OperationController';
import MarkController from '../controllers/MarkController';
+@injectable()
export default class ContentMessageListener {
- private settingController: SettingController;
-
- private commandController: CommandController;
-
- private findController: FindController;
-
- private addonEnabledController: AddonEnabledController;
-
- private linkController: LinkController;
-
- private backgroundOperationController: OperationController;
-
- private markController: MarkController;
-
private consolePorts: {[tabId: number]: browser.runtime.Port};
- constructor() {
- this.settingController = new SettingController();
- this.commandController = new CommandController();
- this.findController = new FindController();
- this.addonEnabledController = new AddonEnabledController();
- this.linkController = new LinkController();
- this.backgroundOperationController = new OperationController();
- this.markController = new MarkController();
-
+ constructor(
+ private settingController: SettingController,
+ private commandController: CommandController,
+ private findController: FindController,
+ private addonEnabledController: AddonEnabledController,
+ private linkController: LinkController,
+ private backgroundOperationController: OperationController,
+ private markController: MarkController,
+ ) {
this.consolePorts = {};
}