aboutsummaryrefslogtreecommitdiff
path: root/src/managers/queue.ts
diff options
context:
space:
mode:
authorMax Isom <[email protected]>2020-03-15 14:36:59 -0500
committerMax Isom <[email protected]>2020-03-15 14:36:59 -0500
commit3408c7a0c2ee35fc9a47c37b94b9ed789314f4cc (patch)
tree2b35d0b2ab90d014ab07f4d2b62e5c225fac07a1 /src/managers/queue.ts
parent0cebca7917e66166a3b5d62127555e5ca45e3154 (diff)
downloadmuse-3408c7a0c2ee35fc9a47c37b94b9ed789314f4cc.tar.xz
muse-3408c7a0c2ee35fc9a47c37b94b9ed789314f4cc.zip
Use manager instances for guild services
Diffstat (limited to 'src/managers/queue.ts')
-rw-r--r--src/managers/queue.ts23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/managers/queue.ts b/src/managers/queue.ts
new file mode 100644
index 0000000..6c12232
--- /dev/null
+++ b/src/managers/queue.ts
@@ -0,0 +1,23 @@
+import {injectable} from 'inversify';
+import Queue from '../services/queue';
+
+@injectable()
+export default class {
+ private readonly guildQueues: Map<string, Queue>;
+
+ constructor() {
+ this.guildQueues = new Map();
+ }
+
+ get(guildId: string): Queue {
+ let queue = this.guildQueues.get(guildId);
+
+ if (!queue) {
+ queue = new Queue();
+
+ this.guildQueues.set(guildId, queue);
+ }
+
+ return queue;
+ }
+}