Skip to content

Commit a46c30d

Browse files
committed
Use user-provided RSocketServiceProxyFactory.
1 parent d2285ff commit a46c30d

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/interfaceclients/rsocket/RSocketInterfaceClientsFactoryBean.java

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,24 @@ public class RSocketInterfaceClientsFactoryBean extends AbstractInterfaceClients
3333

3434
@Override
3535
public Object getObject() throws Exception {
36-
RSocketRequester requester = rsocketRequester();
37-
RSocketServiceProxyFactory factory = RSocketServiceProxyFactory.builder(requester).build();
36+
RSocketServiceProxyFactory factory = proxyFactory();
3837
return factory.createClient(this.type);
3938
}
4039

40+
private RSocketServiceProxyFactory proxyFactory() {
41+
RSocketServiceProxyFactory userProvidedProxyFactory = QualifiedBeanProvider
42+
.qualifiedBean(this.applicationContext.getBeanFactory(), RSocketServiceProxyFactory.class, this.clientId);
43+
if (userProvidedProxyFactory != null) {
44+
return userProvidedProxyFactory;
45+
}
46+
// create an RSocketServiceProxyFactory bean with default implementation
47+
if (logger.isDebugEnabled()) {
48+
logger.debug("Creating RSocketServiceProxyFactory for '" + this.clientId + "'");
49+
}
50+
RSocketRequester requester = rsocketRequester();
51+
return RSocketServiceProxyFactory.builder(requester).build();
52+
}
53+
4154
private RSocketRequester rsocketRequester() {
4255
RSocketRequester userProvidedRequester = QualifiedBeanProvider
4356
.qualifiedBean(this.applicationContext.getBeanFactory(), RSocketRequester.class, this.clientId);

0 commit comments

Comments
 (0)