1 | import amqpLib = require("amqplib/callback_api")
|
2 | import { AMQPEventEmitter as eventManager } from "./EventEmitter"
|
3 |
|
4 | import taskManager = require("./TaskManager")
|
5 | import async = require("async")
|
6 | import { channelManager, ChannelManager } from './ChannelManager'
|
7 | import { TaskManager } from "./TaskManager";
|
8 | import { Event } from "./Event";
|
9 | import { EventListener } from "./EventListener";
|
10 | import { EventListenerConstructorOptions } from "./EventListener";
|
11 | import { EventConstructorOptions } from "./Event";
|
12 | import { RPCManager } from "./RPCManager"
|
13 |
|
14 | export class AMQPManager {
|
15 | private taskManager: TaskManager;
|
16 |
|
17 | get events() {
|
18 | return eventManager;
|
19 | }
|
20 |
|
21 | get rpc() {
|
22 | return RPCManager;
|
23 | }
|
24 |
|
25 | get channelManager(): ChannelManager {
|
26 | return channelManager;
|
27 | }
|
28 |
|
29 | get tasks():TaskManager {
|
30 | if (!this.taskManager) {
|
31 | this.taskManager = new TaskManager();
|
32 | }
|
33 | return this.taskManager;
|
34 | }
|
35 |
|
36 | createEvent(options: EventConstructorOptions) {
|
37 | return new Event(options);
|
38 | }
|
39 |
|
40 | createEventListener(options: EventListenerConstructorOptions) {
|
41 | return new EventListener(options);
|
42 | }
|
43 |
|
44 | setConnectionURI(uri) {
|
45 | channelManager.setConnectionURI(uri);
|
46 | }
|
47 |
|
48 | disconnect(cb) {
|
49 | channelManager.disconnect(cb);
|
50 | }
|
51 |
|
52 | reconnect(cb?) {
|
53 | channelManager.reconnect(cb);
|
54 | }
|
55 | } |
\ | No newline at end of file |