]> git.somenet.org - pub/jan/dst18.git/blob - ass3-messaging/src/main/java/dst/ass3/messaging/IQueueManager.java
Add ass3-elastic profile
[pub/jan/dst18.git] / ass3-messaging / src / main / java / dst / ass3 / messaging / IQueueManager.java
1 package dst.ass3.messaging;
2
3 import java.io.Closeable;
4 import java.io.IOException;
5
6 /**
7  * Responsible for creating and tearing down all necessary RabbitMQ queues or exchanges necessary for running the system.
8  */
9 public interface IQueueManager extends Closeable {
10
11     /**
12      * Initializes all queues or topic exchanges necessary for running the system.
13      */
14     void setUp();
15
16     /**
17      * Removes all queues or topic exchanged associated with the system.
18      */
19     void tearDown();
20
21     /**
22      * Closes underlying conection or resources, if any.
23      *
24      * @throws IOException propagated exceptions
25      */
26     @Override
27     void close() throws IOException;
28 }