Skip to content

Commit dfac782

Browse files
committed
Add nullability annotations to module/spring-boot-jooq
See gh-46587
1 parent d89b853 commit dfac782

File tree

8 files changed

+22
-9
lines changed

8 files changed

+22
-9
lines changed

module/spring-boot-jooq/src/main/java/org/springframework/boot/jooq/autoconfigure/DefaultExceptionTranslatorExecuteListener.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import org.apache.commons.logging.LogFactory;
2424
import org.jooq.ExecuteContext;
2525
import org.jooq.SQLDialect;
26+
import org.jspecify.annotations.Nullable;
2627

2728
import org.springframework.dao.DataAccessException;
2829
import org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator;
@@ -117,7 +118,7 @@ private SQLExceptionTranslator apply(SQLDialect dialect) {
117118
: new SQLExceptionSubclassTranslator();
118119
}
119120

120-
private String getSpringDbName(SQLDialect dialect) {
121+
private @Nullable String getSpringDbName(@Nullable SQLDialect dialect) {
121122
return (dialect != null && dialect.thirdParty() != null) ? dialect.thirdParty().springDbName() : null;
122123
}
123124

module/spring-boot-jooq/src/main/java/org/springframework/boot/jooq/autoconfigure/JooqAutoConfiguration.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,7 @@ Settings settings(JooqProperties properties) throws IOException {
133133
throw new JaxbNotAvailableException();
134134
}
135135
Resource resource = properties.getConfig();
136+
Assert.state(resource != null, "'resource' must not be null");
136137
Assert.state(resource.exists(),
137138
() -> "Resource %s set in spring.jooq.config does not exist".formatted(resource));
138139
try (InputStream stream = resource.getInputStream()) {

module/spring-boot-jooq/src/main/java/org/springframework/boot/jooq/autoconfigure/JooqProperties.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import javax.sql.DataSource;
2020

2121
import org.jooq.SQLDialect;
22+
import org.jspecify.annotations.Nullable;
2223

2324
import org.springframework.boot.context.properties.ConfigurationProperties;
2425
import org.springframework.core.io.Resource;
@@ -37,26 +38,26 @@ public class JooqProperties {
3738
/**
3839
* SQL dialect to use. Auto-detected by default.
3940
*/
40-
private SQLDialect sqlDialect;
41+
private @Nullable SQLDialect sqlDialect;
4142

4243
/**
4344
* Location of the jOOQ config file.
4445
*/
45-
private Resource config;
46+
private @Nullable Resource config;
4647

47-
public SQLDialect getSqlDialect() {
48+
public @Nullable SQLDialect getSqlDialect() {
4849
return this.sqlDialect;
4950
}
5051

51-
public void setSqlDialect(SQLDialect sqlDialect) {
52+
public void setSqlDialect(@Nullable SQLDialect sqlDialect) {
5253
this.sqlDialect = sqlDialect;
5354
}
5455

55-
public Resource getConfig() {
56+
public @Nullable Resource getConfig() {
5657
return this.config;
5758
}
5859

59-
public void setConfig(Resource config) {
60+
public void setConfig(@Nullable Resource config) {
6061
this.config = config;
6162
}
6263

module/spring-boot-jooq/src/main/java/org/springframework/boot/jooq/autoconfigure/NoDslContextBeanFailureAnalyzer.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.springframework.boot.jooq.autoconfigure;
1818

1919
import org.jooq.DSLContext;
20+
import org.jspecify.annotations.Nullable;
2021

2122
import org.springframework.beans.factory.BeanFactory;
2223
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
@@ -35,7 +36,7 @@ class NoDslContextBeanFailureAnalyzer extends AbstractFailureAnalyzer<NoSuchBean
3536
}
3637

3738
@Override
38-
protected FailureAnalysis analyze(Throwable rootFailure, NoSuchBeanDefinitionException cause) {
39+
protected @Nullable FailureAnalysis analyze(Throwable rootFailure, NoSuchBeanDefinitionException cause) {
3940
if (DSLContext.class.equals(cause.getBeanType()) && hasR2dbcAutoConfiguration()) {
4041
return new FailureAnalysis(
4142
"jOOQ has not been auto-configured as R2DBC has been auto-configured in favor of JDBC and jOOQ "

module/spring-boot-jooq/src/main/java/org/springframework/boot/jooq/autoconfigure/SpringTransactionProvider.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import org.springframework.transaction.TransactionDefinition;
2424
import org.springframework.transaction.TransactionStatus;
2525
import org.springframework.transaction.support.DefaultTransactionDefinition;
26+
import org.springframework.util.Assert;
2627

2728
/**
2829
* Allows Spring Transaction to be used with jOOQ.
@@ -61,6 +62,7 @@ public void rollback(TransactionContext ctx) {
6162

6263
private TransactionStatus getTransactionStatus(TransactionContext ctx) {
6364
SpringTransaction transaction = (SpringTransaction) ctx.transaction();
65+
Assert.state(transaction != null, "'transaction' must not be null");
6466
return transaction.getTxStatus();
6567
}
6668

module/spring-boot-jooq/src/main/java/org/springframework/boot/jooq/autoconfigure/SqlDialectLookup.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import org.apache.commons.logging.LogFactory;
2626
import org.jooq.SQLDialect;
2727
import org.jooq.tools.jdbc.JDBCUtils;
28+
import org.jspecify.annotations.Nullable;
2829

2930
/**
3031
* Utility to lookup well known {@link SQLDialect SQLDialects} from a {@link DataSource}.
@@ -45,7 +46,7 @@ private SqlDialectLookup() {
4546
* @param dataSource the source {@link DataSource}
4647
* @return the most suitable {@link SQLDialect}
4748
*/
48-
static SQLDialect getDialect(DataSource dataSource) {
49+
static SQLDialect getDialect(@Nullable DataSource dataSource) {
4950
try (Connection connection = (dataSource != null) ? dataSource.getConnection() : null) {
5051
return JDBCUtils.dialect(connection);
5152
}

module/spring-boot-jooq/src/main/java/org/springframework/boot/jooq/autoconfigure/package-info.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,7 @@
1717
/**
1818
* Auto-configuration for jOOQ.
1919
*/
20+
@NullMarked
2021
package org.springframework.boot.jooq.autoconfigure;
22+
23+
import org.jspecify.annotations.NullMarked;

module/spring-boot-jooq/src/main/java/org/springframework/boot/jooq/package-info.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,7 @@
1919
*
2020
* @see org.springframework.boot.json.JsonParser
2121
*/
22+
@NullMarked
2223
package org.springframework.boot.jooq;
24+
25+
import org.jspecify.annotations.NullMarked;

0 commit comments

Comments
 (0)