mirror of
https://github.com/spring-projects/spring-boot.git
synced 2026-09-17 12:09:16 +00:00
Add nullability annotations to module/spring-boot-webservices
See gh-46587
This commit is contained in:
+5
-2
@@ -44,6 +44,7 @@ import org.springframework.context.annotation.Conditional;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Role;
|
||||
import org.springframework.core.io.Resource;
|
||||
import org.springframework.util.Assert;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.ws.config.annotation.EnableWs;
|
||||
import org.springframework.ws.config.annotation.WsConfigurationSupport;
|
||||
@@ -96,6 +97,7 @@ public final class WebServicesAutoConfiguration {
|
||||
static class WsdlDefinitionBeanFactoryPostProcessor
|
||||
implements BeanDefinitionRegistryPostProcessor, ApplicationContextAware {
|
||||
|
||||
@SuppressWarnings("NullAway.Init")
|
||||
private ApplicationContext applicationContext;
|
||||
|
||||
@Override
|
||||
@@ -125,8 +127,9 @@ public final class WebServicesAutoConfiguration {
|
||||
BeanDefinition beanDefinition = BeanDefinitionBuilder
|
||||
.rootBeanDefinition(type, () -> beanSupplier.apply(resource))
|
||||
.getBeanDefinition();
|
||||
registry.registerBeanDefinition(StringUtils.stripFilenameExtension(resource.getFilename()),
|
||||
beanDefinition);
|
||||
String filename = resource.getFilename();
|
||||
Assert.state(filename != null, "'filename' must not be null");
|
||||
registry.registerBeanDefinition(StringUtils.stripFilenameExtension(filename), beanDefinition);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
@@ -17,4 +17,7 @@
|
||||
/**
|
||||
* Auto-configuration for Spring Web Services Clients.
|
||||
*/
|
||||
@NullMarked
|
||||
package org.springframework.boot.webservices.autoconfigure.client;
|
||||
|
||||
import org.jspecify.annotations.NullMarked;
|
||||
|
||||
+3
@@ -17,4 +17,7 @@
|
||||
/**
|
||||
* Auto-configuration for Spring Web Services.
|
||||
*/
|
||||
@NullMarked
|
||||
package org.springframework.boot.webservices.autoconfigure;
|
||||
|
||||
import org.jspecify.annotations.NullMarked;
|
||||
|
||||
+3
-1
@@ -16,6 +16,8 @@
|
||||
|
||||
package org.springframework.boot.webservices.client;
|
||||
|
||||
import org.jspecify.annotations.Nullable;
|
||||
|
||||
import org.springframework.boot.http.client.ClientHttpRequestFactoryBuilder;
|
||||
import org.springframework.boot.http.client.ClientHttpRequestFactorySettings;
|
||||
import org.springframework.http.client.ClientHttpRequestFactory;
|
||||
@@ -66,7 +68,7 @@ public interface WebServiceMessageSenderFactory {
|
||||
* @return a new {@link WebServiceMessageSenderFactory}
|
||||
*/
|
||||
static WebServiceMessageSenderFactory http(ClientHttpRequestFactoryBuilder<?> requestFactoryBuilder,
|
||||
ClientHttpRequestFactorySettings requestFactorySettings) {
|
||||
@Nullable ClientHttpRequestFactorySettings requestFactorySettings) {
|
||||
Assert.notNull(requestFactoryBuilder, "'requestFactoryBuilder' must not be null");
|
||||
return () -> new ClientHttpRequestMessageSender(requestFactoryBuilder.build(requestFactorySettings));
|
||||
}
|
||||
|
||||
+21
-17
@@ -25,6 +25,8 @@ import java.util.Set;
|
||||
|
||||
import javax.xml.transform.TransformerFactory;
|
||||
|
||||
import org.jspecify.annotations.Nullable;
|
||||
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.boot.context.properties.PropertyMapper;
|
||||
import org.springframework.oxm.Marshaller;
|
||||
@@ -56,27 +58,27 @@ import org.springframework.ws.transport.WebServiceMessageSender;
|
||||
*/
|
||||
public class WebServiceTemplateBuilder {
|
||||
|
||||
private final WebServiceMessageSenderFactory httpMessageSenderFactory;
|
||||
private final @Nullable WebServiceMessageSenderFactory httpMessageSenderFactory;
|
||||
|
||||
private final boolean detectHttpMessageSender;
|
||||
|
||||
private final Set<ClientInterceptor> interceptors;
|
||||
private final @Nullable Set<ClientInterceptor> interceptors;
|
||||
|
||||
private final Set<WebServiceTemplateCustomizer> internalCustomizers;
|
||||
private final @Nullable Set<WebServiceTemplateCustomizer> internalCustomizers;
|
||||
|
||||
private final Set<WebServiceTemplateCustomizer> customizers;
|
||||
|
||||
private final WebServiceMessageSenders messageSenders;
|
||||
|
||||
private final Marshaller marshaller;
|
||||
private final @Nullable Marshaller marshaller;
|
||||
|
||||
private final Unmarshaller unmarshaller;
|
||||
private final @Nullable Unmarshaller unmarshaller;
|
||||
|
||||
private final DestinationProvider destinationProvider;
|
||||
private final @Nullable DestinationProvider destinationProvider;
|
||||
|
||||
private final Class<? extends TransformerFactory> transformerFactoryClass;
|
||||
private final @Nullable Class<? extends TransformerFactory> transformerFactoryClass;
|
||||
|
||||
private final WebServiceMessageFactory messageFactory;
|
||||
private final @Nullable WebServiceMessageFactory messageFactory;
|
||||
|
||||
public WebServiceTemplateBuilder(WebServiceTemplateCustomizer... customizers) {
|
||||
this.httpMessageSenderFactory = null;
|
||||
@@ -92,12 +94,14 @@ public class WebServiceTemplateBuilder {
|
||||
this.messageFactory = null;
|
||||
}
|
||||
|
||||
private WebServiceTemplateBuilder(WebServiceMessageSenderFactory messageSenderFactory,
|
||||
boolean detectHttpMessageSender, Set<ClientInterceptor> interceptors,
|
||||
Set<WebServiceTemplateCustomizer> internalCustomizers, Set<WebServiceTemplateCustomizer> customizers,
|
||||
WebServiceMessageSenders messageSenders, Marshaller marshaller, Unmarshaller unmarshaller,
|
||||
DestinationProvider destinationProvider, Class<? extends TransformerFactory> transformerFactoryClass,
|
||||
WebServiceMessageFactory messageFactory) {
|
||||
private WebServiceTemplateBuilder(@Nullable WebServiceMessageSenderFactory messageSenderFactory,
|
||||
boolean detectHttpMessageSender, @Nullable Set<ClientInterceptor> interceptors,
|
||||
@Nullable Set<WebServiceTemplateCustomizer> internalCustomizers,
|
||||
Set<WebServiceTemplateCustomizer> customizers, WebServiceMessageSenders messageSenders,
|
||||
@Nullable Marshaller marshaller, @Nullable Unmarshaller unmarshaller,
|
||||
@Nullable DestinationProvider destinationProvider,
|
||||
@Nullable Class<? extends TransformerFactory> transformerFactoryClass,
|
||||
@Nullable WebServiceMessageFactory messageFactory) {
|
||||
this.httpMessageSenderFactory = messageSenderFactory;
|
||||
this.detectHttpMessageSender = detectHttpMessageSender;
|
||||
this.interceptors = interceptors;
|
||||
@@ -497,7 +501,7 @@ public class WebServiceTemplateBuilder {
|
||||
}
|
||||
|
||||
private void applyCustomizers(WebServiceTemplate webServiceTemplate,
|
||||
Set<WebServiceTemplateCustomizer> customizers) {
|
||||
@Nullable Set<WebServiceTemplateCustomizer> customizers) {
|
||||
if (!CollectionUtils.isEmpty(customizers)) {
|
||||
for (WebServiceTemplateCustomizer customizer : customizers) {
|
||||
customizer.customize(webServiceTemplate);
|
||||
@@ -520,11 +524,11 @@ public class WebServiceTemplateBuilder {
|
||||
}
|
||||
}
|
||||
|
||||
private <T> Set<T> append(Set<T> set, T addition) {
|
||||
private <T> Set<T> append(@Nullable Set<T> set, T addition) {
|
||||
return append(set, Collections.singleton(addition));
|
||||
}
|
||||
|
||||
private static <T> Set<T> append(Set<T> set, Collection<? extends T> additions) {
|
||||
private static <T> Set<T> append(@Nullable Set<T> set, @Nullable Collection<? extends T> additions) {
|
||||
Set<T> result = new LinkedHashSet<>((set != null) ? set : Collections.emptySet());
|
||||
result.addAll((additions != null) ? additions : Collections.emptyList());
|
||||
return Collections.unmodifiableSet(result);
|
||||
|
||||
+3
@@ -17,4 +17,7 @@
|
||||
/**
|
||||
* Web Services client utilities.
|
||||
*/
|
||||
@NullMarked
|
||||
package org.springframework.boot.webservices.client;
|
||||
|
||||
import org.jspecify.annotations.NullMarked;
|
||||
|
||||
Reference in New Issue
Block a user