Skip to content

Commit 71ecca7

Browse files
committed
DefaultRSocketRequesterBuilder internal refactoring
1 parent 8c28526 commit 71ecca7

File tree

1 file changed

+20
-24
lines changed

1 file changed

+20
-24
lines changed

spring-messaging/src/main/java/org/springframework/messaging/rsocket/DefaultRSocketRequesterBuilder.java

Lines changed: 20 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -161,20 +161,14 @@ public RSocketRequester websocket(URI uri) {
161161
@Override
162162
public RSocketRequester transport(ClientTransport transport) {
163163
RSocketStrategies strategies = getRSocketStrategies();
164-
Assert.isTrue(!strategies.encoders().isEmpty(), "No encoders");
165-
Assert.isTrue(!strategies.decoders().isEmpty(), "No decoders");
166-
167-
MimeType metaMimeType = (this.metadataMimeType != null ? this.metadataMimeType :
168-
MimeTypeUtils.parseMimeType(WellKnownMimeType.MESSAGE_RSOCKET_COMPOSITE_METADATA.getString()));
169-
164+
MimeType metaMimeType = getMetadataMimeType();
170165
MimeType dataMimeType = getDataMimeType(strategies);
171-
Mono<Payload> setupPayload = getSetupPayload(dataMimeType, metaMimeType, strategies);
172166

173167
RSocketConnector connector = initConnector(
174-
this.rsocketConnectorConfigurers, metaMimeType, dataMimeType, setupPayload, strategies);
168+
this.rsocketConnectorConfigurers, metaMimeType, dataMimeType, strategies);
175169

176-
return new DefaultRSocketRequester(
177-
RSocketClient.from(connector.connect(transport)), null, dataMimeType, metaMimeType, strategies);
170+
RSocketClient client = RSocketClient.from(connector.connect(transport));
171+
return new DefaultRSocketRequester(client, null, dataMimeType, metaMimeType, strategies);
178172
}
179173

180174
@Override
@@ -192,35 +186,36 @@ public Mono<RSocketRequester> connectWebSocket(URI uri) {
192186
@Override
193187
@SuppressWarnings("deprecation")
194188
public Mono<RSocketRequester> connect(ClientTransport transport) {
195-
196189
RSocketStrategies rsocketStrategies = getRSocketStrategies();
197-
Assert.isTrue(!rsocketStrategies.encoders().isEmpty(), "No encoders");
198-
Assert.isTrue(!rsocketStrategies.decoders().isEmpty(), "No decoders");
199-
200-
MimeType metaMimeType = (this.metadataMimeType != null ? this.metadataMimeType :
201-
MimeTypeUtils.parseMimeType(WellKnownMimeType.MESSAGE_RSOCKET_COMPOSITE_METADATA.getString()));
202-
190+
MimeType metaMimeType = getMetadataMimeType();
203191
MimeType dataMimeType = getDataMimeType(rsocketStrategies);
204-
Mono<Payload> setupPayload = getSetupPayload(dataMimeType, metaMimeType, rsocketStrategies);
205192

206193
RSocketConnector connector = initConnector(
207-
this.rsocketConnectorConfigurers,
208-
metaMimeType, dataMimeType, setupPayload, rsocketStrategies);
194+
this.rsocketConnectorConfigurers, metaMimeType, dataMimeType, rsocketStrategies);
209195

210196
return connector.connect(transport).map(rsocket ->
211197
new DefaultRSocketRequester(null, rsocket, dataMimeType, metaMimeType, rsocketStrategies));
212198
}
213199

200+
public MimeType getMetadataMimeType() {
201+
return this.metadataMimeType != null ? this.metadataMimeType :
202+
MimeTypeUtils.parseMimeType(WellKnownMimeType.MESSAGE_RSOCKET_COMPOSITE_METADATA.getString());
203+
}
204+
214205
private RSocketStrategies getRSocketStrategies() {
206+
RSocketStrategies result;
215207
if (!this.strategiesConfigurers.isEmpty()) {
216208
RSocketStrategies.Builder builder =
217209
this.strategies != null ? this.strategies.mutate() : RSocketStrategies.builder();
218210
this.strategiesConfigurers.forEach(c -> c.accept(builder));
219-
return builder.build();
211+
result = builder.build();
220212
}
221213
else {
222-
return this.strategies != null ? this.strategies : RSocketStrategies.builder().build();
214+
result = this.strategies != null ? this.strategies : RSocketStrategies.builder().build();
223215
}
216+
Assert.isTrue(!result.encoders().isEmpty(), "No encoders");
217+
Assert.isTrue(!result.decoders().isEmpty(), "No decoders");
218+
return result;
224219
}
225220

226221
private MimeType getDataMimeType(RSocketStrategies strategies) {
@@ -294,8 +289,7 @@ private Mono<Payload> getSetupPayload(
294289

295290
@SuppressWarnings("deprecation")
296291
private RSocketConnector initConnector(List<RSocketConnectorConfigurer> connectorConfigurers,
297-
MimeType metaMimeType, MimeType dataMimeType, Mono<Payload> setupPayloadMono,
298-
RSocketStrategies rsocketStrategies) {
292+
MimeType metaMimeType, MimeType dataMimeType, RSocketStrategies rsocketStrategies) {
299293

300294
RSocketConnector connector = RSocketConnector.create();
301295
connectorConfigurers.forEach(c -> c.configure(connector));
@@ -307,9 +301,11 @@ private RSocketConnector initConnector(List<RSocketConnectorConfigurer> connecto
307301
connector.metadataMimeType(metaMimeType.toString());
308302
connector.dataMimeType(dataMimeType.toString());
309303

304+
Mono<Payload> setupPayloadMono = getSetupPayload(dataMimeType, metaMimeType, rsocketStrategies);
310305
if (setupPayloadMono != EMPTY_SETUP_PAYLOAD) {
311306
connector.setupPayload(setupPayloadMono);
312307
}
308+
313309
return connector;
314310
}
315311

0 commit comments

Comments
 (0)