Skip to content

Commit 9d17e09

Browse files
artembilangaryrussell
authored andcommitted
Upgrade to the latest Kotlin
* Fix more recursive generics on factory methods See https://jira.spring.io/browse/INT-4458 **Cherry-pick to 5.0.x**
1 parent 4d20fe5 commit 9d17e09

File tree

4 files changed

+20
-15
lines changed

4 files changed

+20
-15
lines changed

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
buildscript {
2-
ext.kotlinVersion = '1.2.41'
2+
ext.kotlinVersion = '1.2.51'
33
repositories {
44
maven { url 'https://repo.spring.io/plugins-release' }
55
}

spring-integration-core/src/main/java/org/springframework/integration/dsl/Channels.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -96,20 +96,19 @@ public RendezvousChannelSpec rendezvous(String id) {
9696
return MessageChannels.rendezvous(id);
9797
}
9898

99-
public PublishSubscribeChannelSpec<? extends PublishSubscribeChannelSpec<?>> publishSubscribe() {
99+
public PublishSubscribeChannelSpec<?> publishSubscribe() {
100100
return MessageChannels.publishSubscribe();
101101
}
102102

103-
public PublishSubscribeChannelSpec<? extends PublishSubscribeChannelSpec<?>> publishSubscribe(Executor executor) {
103+
public PublishSubscribeChannelSpec<?> publishSubscribe(Executor executor) {
104104
return MessageChannels.publishSubscribe(executor);
105105
}
106106

107-
public PublishSubscribeChannelSpec<? extends PublishSubscribeChannelSpec<?>> publishSubscribe(String id,
108-
Executor executor) {
107+
public PublishSubscribeChannelSpec<?> publishSubscribe(String id, Executor executor) {
109108
return MessageChannels.publishSubscribe(id, executor);
110109
}
111110

112-
public PublishSubscribeChannelSpec<? extends PublishSubscribeChannelSpec<?>> publishSubscribe(String id) {
111+
public PublishSubscribeChannelSpec<?> publishSubscribe(String id) {
113112
return MessageChannels.publishSubscribe(id);
114113
}
115114

spring-integration-core/src/main/java/org/springframework/integration/dsl/MessageChannels.java

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ public static QueueChannelSpec.MessageStoreSpec queue(ChannelMessageStore messag
6969

7070
public static QueueChannelSpec.MessageStoreSpec queue(String id, ChannelMessageStore messageGroupStore,
7171
Object groupId) {
72+
7273
return queue(messageGroupStore, groupId).id(id);
7374
}
7475

@@ -102,26 +103,24 @@ public static PriorityChannelSpec priority(PriorityCapableChannelMessageStore me
102103

103104
public static PriorityChannelSpec priority(String id,
104105
PriorityCapableChannelMessageStore messageGroupStore, Object groupId) {
106+
105107
return priority(messageGroupStore, groupId).id(id);
106108
}
107109

108-
public static <S extends PublishSubscribeChannelSpec<S>> PublishSubscribeChannelSpec<S> publishSubscribe() {
110+
public static PublishSubscribeChannelSpec<?> publishSubscribe() {
109111
return new PublishSubscribeChannelSpec<>();
110112
}
111113

112-
public static <S extends PublishSubscribeChannelSpec<S>> PublishSubscribeChannelSpec<S> publishSubscribe(
113-
String id) {
114-
return MessageChannels.<S>publishSubscribe().id(id);
114+
public static PublishSubscribeChannelSpec<?> publishSubscribe(String id) {
115+
return MessageChannels.publishSubscribe().id(id);
115116
}
116117

117-
public static <S extends PublishSubscribeChannelSpec<S>> PublishSubscribeChannelSpec<S> publishSubscribe(
118-
Executor executor) {
118+
public static PublishSubscribeChannelSpec<?> publishSubscribe(Executor executor) {
119119
return new PublishSubscribeChannelSpec<>(executor);
120120
}
121121

122-
public static <S extends PublishSubscribeChannelSpec<S>> PublishSubscribeChannelSpec<S> publishSubscribe(String id,
123-
Executor executor) {
124-
return MessageChannels.<S>publishSubscribe(executor).id(id);
122+
public static PublishSubscribeChannelSpec<?> publishSubscribe(String id, Executor executor) {
123+
return MessageChannels.publishSubscribe(executor).id(id);
125124
}
126125

127126
public static FluxMessageChannelSpec flux() {

spring-integration-core/src/test/kotlin/org/springframework/integration/dsl/routers/RouterDslTests.kt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import org.springframework.context.annotation.Configuration
2828
import org.springframework.integration.channel.QueueChannel
2929
import org.springframework.integration.config.EnableIntegration
3030
import org.springframework.integration.dsl.IntegrationFlow
31+
import org.springframework.integration.dsl.MessageChannels
3132
import org.springframework.integration.support.MessageBuilder
3233
import org.springframework.messaging.MessageChannel
3334
import org.springframework.messaging.PollableChannel
@@ -133,6 +134,12 @@ class RouterDslTests {
133134
IntegrationFlow { flow ->
134135
flow.handle<Any> { _, _ -> "even" }
135136
}
137+
138+
@Bean
139+
fun publishSubscribe() =
140+
MessageChannels.publishSubscribe()
141+
.ignoreFailures(true)
142+
.applySequence(false)
136143
}
137144

138145
}

0 commit comments

Comments
 (0)