blob: b749848d01e7c8db2f7d78834bb2258e460a40ec [file] [log] [blame]
package brooklyn.entity.messaging
import brooklyn.event.basic.BasicAttributeSensor
import brooklyn.event.basic.BasicAttributeSensorAndConfigKey
/**
* An interface that describes a messaging queue.
*/
public interface Queue {
BasicAttributeSensorAndConfigKey<String> QUEUE_NAME = [ String, "queue.name", "Queue name" ]
BasicAttributeSensor<Integer> QUEUE_DEPTH_BYTES = [ Integer, "queue.depth.bytes", "Queue depth in bytes" ]
BasicAttributeSensor<Integer> QUEUE_DEPTH_MESSAGES = [ Integer, "queue.depth.messages", "Queue depth in messages" ]
/**
* Create the queue.
*
* TODO make this an effector
*/
abstract void create();
/**
* Delete the queue.
*
* TODO make this an effector
*/
abstract void delete();
String getQueueName();
}