Skip to content

Commit f67a8a6

Browse files
committed
New version 2.4.0
1 parent 22bc73f commit f67a8a6

4 files changed

Lines changed: 29 additions & 8 deletions

File tree

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# [Rqueue] New and Notable Changes
22

3+
## [2.4.0] - 3-Feb-2021
4+
5+
### Added
6+
7+
* Job Middlewares
8+
* Delay execution of message when it's moved to enqueue instead of consuming it immediately.
9+
310
## [2.3.0] - 2-Jan-2021
411

512
### Added
@@ -175,3 +182,5 @@ Fixes:
175182
[2.2.0]: https://repo1.maven.org/maven2/com/github/sonus21/rqueue-core/2.2.0-RELEASE
176183

177184
[2.3.0]: https://repo1.maven.org/maven2/com/github/sonus21/rqueue-core/2.3.0-RELEASE
185+
186+
[2.4.0]: https://repo1.maven.org/maven2/com/github/sonus21/rqueue-core/2.4.0-RELEASE

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,14 +47,14 @@ services code is in Spring.
4747
* Add dependency
4848
* Gradle
4949
```groovy
50-
implementation 'com.github.sonus21:rqueue-spring-boot-starter:2.3.0-RELEASE'
50+
implementation 'com.github.sonus21:rqueue-spring-boot-starter:2.4.0-RELEASE'
5151
```
5252
* Maven
5353
```xml
5454
<dependency>
5555
<groupId>com.github.sonus21</groupId>
5656
<artifactId>rqueue-spring-boot-starter</artifactId>
57-
<version>2.3.0-RELEASE</version>
57+
<version>2.4.0-RELEASE</version>
5858
</dependency>
5959
```
6060
@@ -65,14 +65,14 @@ services code is in Spring.
6565
* Add Dependency
6666
* Gradle
6767
```groovy
68-
implementation 'com.github.sonus21:rqueue-spring:2.3.0-RELEASE'
68+
implementation 'com.github.sonus21:rqueue-spring:2.4.0-RELEASE'
6969
```
7070
* Maven
7171
```xml
7272
<dependency>
7373
<groupId>com.github.sonus21</groupId>
7474
<artifactId>rqueue-spring</artifactId>
75-
<version>2.3.0-RELEASE</version>
75+
<version>2.4.0-RELEASE</version>
7676
</dependency>
7777
```
7878

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ ext {
6969

7070
subprojects {
7171
group = 'com.github.sonus21'
72-
version = '2.3.0-RELEASE'
72+
version = '2.4.0-RELEASE'
7373

7474
dependencies {
7575
// https://mvnrepository.com/artifact/org.springframework/spring-messaging

rqueue-core/src/main/java/com/github/sonus21/rqueue/config/SimpleRqueueListenerContainerFactory.java

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
import com.github.sonus21.rqueue.utils.Constants;
3333
import com.github.sonus21.rqueue.utils.backoff.TaskExecutionBackOff;
3434
import java.util.Collections;
35+
import java.util.LinkedList;
3536
import java.util.List;
3637
import org.springframework.core.task.AsyncTaskExecutor;
3738
import org.springframework.core.task.TaskExecutor;
@@ -82,7 +83,7 @@ public class SimpleRqueueListenerContainerFactory {
8283
// Any custom message requeue message template.
8384
private RqueueMessageTemplate rqueueMessageTemplate;
8485

85-
private List<Middleware> middlewares;
86+
private final List<Middleware> middlewares = new LinkedList<>();
8687

8788
// Any message headers that should be set, only used for message serialization
8889
private MessageHeaders messageHeaders;
@@ -509,12 +510,23 @@ public List<Middleware> getMiddlewares() {
509510
}
510511

511512
/**
512-
* Set middlewares those would be used while processing a message.
513+
* Add middlewares those would be used while processing a message. Middlewares are called in the
514+
* order they are added.
513515
*
514516
* @param middlewares list of middlewares
515517
*/
516518
public void setMiddlewares(List<Middleware> middlewares) {
517519
notEmpty(middlewares, "middlewares cannot be empty");
518-
this.middlewares = middlewares;
520+
this.middlewares.addAll(middlewares);
521+
}
522+
523+
/**
524+
* Add a given middleware in the chain
525+
*
526+
* @param middleware middleware
527+
*/
528+
public void useMiddleware(Middleware middleware) {
529+
notNull(middlewares, "middlewares cannot be null");
530+
this.middlewares.add(middleware);
519531
}
520532
}

0 commit comments

Comments
 (0)