diff options
| author | Max Isom <[email protected]> | 2020-03-15 14:36:59 -0500 |
|---|---|---|
| committer | Max Isom <[email protected]> | 2020-03-15 14:36:59 -0500 |
| commit | 3408c7a0c2ee35fc9a47c37b94b9ed789314f4cc (patch) | |
| tree | 2b35d0b2ab90d014ab07f4d2b62e5c225fac07a1 /src/managers/queue.ts | |
| parent | 0cebca7917e66166a3b5d62127555e5ca45e3154 (diff) | |
| download | muse-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.ts | 23 |
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; + } +} |
