Class QueueClient
- java.lang.Object
-
- org.swisspush.gateleen.queue.queuing.QueueClient
-
- All Implemented Interfaces:
RequestQueue
public class QueueClient extends Object implements RequestQueue
The QueueClient allows you to enqueue various requests.- Author:
- https://github.com/ljucam [Mario Ljuca]
-
-
Field Summary
Fields Modifier and Type Field Description static org.slf4j.Loggerlogstatic StringQUEUE_TIMESTAMP
-
Constructor Summary
Constructors Constructor Description QueueClient(io.vertx.core.Vertx vertx, org.swisspush.gateleen.monitoring.MonitoringHandler monitoringHandler)Creates a new instance of the QueueClient.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description io.vertx.core.Future<Void>deleteAllQueueItems(String queue, boolean unlock)Deletes all queue items of the provided queue and eventually deletes the lock too.io.vertx.core.Future<Void>deleteLock(String queue)Deletes the lock for the provided queuevoidenqueue(io.vertx.core.http.HttpServerRequest request, io.vertx.core.buffer.Buffer buffer, String queue)Enqueues the given request.voidenqueue(io.vertx.core.http.HttpServerRequest request, io.vertx.core.MultiMap headers, io.vertx.core.buffer.Buffer buffer, String queue)Enqueues the given request.voidenqueue(HttpRequest request, String queue)Enqueues a disconnected request.voidenqueue(HttpRequest request, String queue, io.vertx.core.Handler<Void> doneHandler)Enqueues a disconnected request.io.vertx.core.Future<Void>enqueueFuture(HttpRequest queuedRequest, String queue)protected StringgetRedisquesAddress()Get the event bus address of redisques.voidlockedEnqueue(HttpRequest queuedRequest, String queue, String lockRequestedBy, io.vertx.core.Handler<Void> doneHandler)Enqueues a request into a locked queue.
-
-
-
Field Detail
-
QUEUE_TIMESTAMP
public static final String QUEUE_TIMESTAMP
- See Also:
- Constant Field Values
-
log
public static final org.slf4j.Logger log
-
-
Method Detail
-
getRedisquesAddress
protected String getRedisquesAddress()
Get the event bus address of redisques. Override this method when you want to use a custom redisques address- Returns:
- the event bus address of redisques
-
enqueue
public void enqueue(io.vertx.core.http.HttpServerRequest request, io.vertx.core.buffer.Buffer buffer, String queue)Enqueues the given request.- Specified by:
enqueuein interfaceRequestQueue- Parameters:
request- requestbuffer- bufferqueue- queue
-
enqueue
public void enqueue(io.vertx.core.http.HttpServerRequest request, io.vertx.core.MultiMap headers, io.vertx.core.buffer.Buffer buffer, String queue)Enqueues the given request.- Specified by:
enqueuein interfaceRequestQueue- Parameters:
request- requestheaders- headersbuffer- bufferqueue- queue
-
enqueue
public void enqueue(HttpRequest request, String queue)
Enqueues a disconnected request.- Specified by:
enqueuein interfaceRequestQueue- Parameters:
request- - selfmade requestqueue- queue
-
enqueue
public void enqueue(HttpRequest request, String queue, io.vertx.core.Handler<Void> doneHandler)
Enqueues a disconnected request.- Specified by:
enqueuein interfaceRequestQueue- Parameters:
request- - selfmade requestqueue- queuedoneHandler- a handler which is called as soon as the request is written into the queue.
-
lockedEnqueue
public void lockedEnqueue(HttpRequest queuedRequest, String queue, String lockRequestedBy, io.vertx.core.Handler<Void> doneHandler)
Enqueues a request into a locked queue.- Specified by:
lockedEnqueuein interfaceRequestQueue- Parameters:
queuedRequest- the request to enqueuequeue- queuelockRequestedBy- the user requesting the lockdoneHandler- a handler which is called as soon as the request is written into the queue.
-
deleteLock
public io.vertx.core.Future<Void> deleteLock(String queue)
Deletes the lock for the provided queue- Specified by:
deleteLockin interfaceRequestQueue- Parameters:
queue- the queue to unlock- Returns:
- a future which is completed when reply status from redisques was 'OK', fails otherwise
-
deleteAllQueueItems
public io.vertx.core.Future<Void> deleteAllQueueItems(String queue, boolean unlock)
Deletes all queue items of the provided queue and eventually deletes the lock too.- Specified by:
deleteAllQueueItemsin interfaceRequestQueue- Parameters:
queue- the queue to deleteunlock- delete the lock after the queue has been deleted- Returns:
- a future which is completed when reply from redisques succeeded, fails otherwise
-
enqueueFuture
public io.vertx.core.Future<Void> enqueueFuture(HttpRequest queuedRequest, String queue)
- Specified by:
enqueueFuturein interfaceRequestQueue
-
-