Skip to content

Commit 3e3d5e4

Browse files
authored
Remove JSR305 nullness annotations (#3268)
Migrate to Jetbrains annotations This closes #3267
1 parent 05c6196 commit 3e3d5e4

File tree

40 files changed

+256
-284
lines changed

40 files changed

+256
-284
lines changed

CHANGELOG.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,13 @@ The format is based on [Keep a Changelog](http://keepachangelog.com)
1010

1111
## Unreleased ([details][unreleased changes details])
1212

13-
### Fix
13+
### Changed
14+
15+
- #3267 - Remove JSR305 dependency
16+
17+
### Fixed
1418

15-
- Re-enable accidentally disabled unit tests
19+
- #3270 - Re-enable accidentally disabled JUnit3/4 tests
1620

1721
## 6.4.0 - 2024-02-22
1822

bundle-cloud/pom.xml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -67,12 +67,6 @@ Fragment-Host: com.adobe.acs.acs-aem-commons-bundle
6767
</build>
6868

6969
<dependencies>
70-
<!-- annotations -->
71-
<dependency>
72-
<groupId>com.google.code.findbugs</groupId>
73-
<artifactId>jsr305</artifactId>
74-
<scope>provided</scope><!-- should not transitively be exposed -->
75-
</dependency>
7670
<dependency>
7771
<groupId>com.adobe.acs</groupId>
7872
<artifactId>acs-aem-commons-bundle</artifactId>

bundle/pom.xml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -285,11 +285,6 @@
285285
<artifactId>org.apache.sling.servlets.annotations</artifactId>
286286
<scope>provided</scope>
287287
</dependency>
288-
<dependency>
289-
<groupId>com.google.code.findbugs</groupId>
290-
<artifactId>jsr305</artifactId>
291-
<scope>provided</scope>
292-
</dependency>
293288
<dependency>
294289
<groupId>org.jetbrains</groupId>
295290
<artifactId>annotations</artifactId>

bundle/src/main/java/com/adobe/acs/commons/cloudconfig/impl/CreateCloudConfigServlet.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import java.io.IOException;
2121
import java.util.Collections;
2222

23-
import javax.annotation.Nonnull;
2423
import javax.servlet.Servlet;
2524

2625
import org.apache.commons.lang3.StringUtils;
@@ -33,6 +32,7 @@
3332
import org.apache.sling.api.servlets.SlingAllMethodsServlet;
3433
import org.apache.sling.jcr.resource.api.JcrResourceConstants;
3534
import org.apache.sling.servlets.post.HtmlResponse;
35+
import org.jetbrains.annotations.NotNull;
3636
import org.osgi.service.component.annotations.Component;
3737
import org.slf4j.Logger;
3838
import org.slf4j.LoggerFactory;
@@ -50,7 +50,7 @@ public class CreateCloudConfigServlet extends SlingAllMethodsServlet {
5050
private static final Logger log = LoggerFactory.getLogger(CreateCloudConfigServlet.class);
5151

5252
@Override
53-
protected void doPost(@Nonnull SlingHttpServletRequest request, @Nonnull SlingHttpServletResponse response)
53+
protected void doPost(@NotNull SlingHttpServletRequest request, @NotNull SlingHttpServletResponse response)
5454
throws IOException {
5555
ResourceResolver resolver = request.getResourceResolver();
5656
PageManager pageManager = resolver.adaptTo(PageManager.class);

bundle/src/main/java/com/adobe/acs/commons/dam/impl/CustomComponentActivatorListServlet.java

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,11 @@
1717
*/
1818
package com.adobe.acs.commons.dam.impl;
1919

20-
import com.adobe.acs.commons.util.ParameterUtil;
21-
import com.google.gson.JsonArray;
22-
import com.google.gson.JsonObject;
20+
import java.io.IOException;
21+
import java.util.Map;
22+
23+
import javax.servlet.ServletException;
24+
2325
import org.apache.felix.scr.annotations.Activate;
2426
import org.apache.felix.scr.annotations.Component;
2527
import org.apache.felix.scr.annotations.ConfigurationPolicy;
@@ -29,11 +31,11 @@
2931
import org.apache.sling.api.SlingHttpServletResponse;
3032
import org.apache.sling.api.servlets.SlingSafeMethodsServlet;
3133
import org.apache.sling.commons.osgi.PropertiesUtil;
34+
import org.jetbrains.annotations.NotNull;
3235

33-
import javax.annotation.Nonnull;
34-
import javax.servlet.ServletException;
35-
import java.io.IOException;
36-
import java.util.Map;
36+
import com.adobe.acs.commons.util.ParameterUtil;
37+
import com.google.gson.JsonArray;
38+
import com.google.gson.JsonObject;
3739

3840
@SlingServlet(paths = "/bin/acs-commons/dam/custom-components.json", generateComponent = false)
3941
@Component(metatype = true, policy = ConfigurationPolicy.REQUIRE, label = "ACS AEM Commons - Custom DAM Component List Servlet",
@@ -72,7 +74,7 @@ protected void activate(Map<String, Object> config) {
7274
}
7375

7476
@Override
75-
protected void doGet(@Nonnull SlingHttpServletRequest request, @Nonnull SlingHttpServletResponse response) throws ServletException, IOException {
77+
protected void doGet(@NotNull SlingHttpServletRequest request, @NotNull SlingHttpServletResponse response) throws ServletException, IOException {
7678
response.setContentType("application/json");
7779
response.setCharacterEncoding("UTF-8");
7880
response.getWriter().print(json.toString());

bundle/src/main/java/com/adobe/acs/commons/genericlists/GenericList.java

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,22 @@
1717
*/
1818
package com.adobe.acs.commons.genericlists;
1919

20-
import com.adobe.acs.commons.mcp.form.FormField;
21-
import com.adobe.acs.commons.mcp.form.MultifieldComponent;
2220
import java.util.List;
2321
import java.util.Locale;
24-
import javax.annotation.CheckForNull;
25-
import javax.annotation.Nonnull;
22+
2623
import javax.inject.Inject;
2724
import javax.inject.Named;
25+
2826
import org.apache.sling.api.resource.Resource;
2927
import org.apache.sling.models.annotations.DefaultInjectionStrategy;
3028
import org.apache.sling.models.annotations.Model;
29+
import org.jetbrains.annotations.NotNull;
30+
import org.jetbrains.annotations.Nullable;
3131
import org.osgi.annotation.versioning.ProviderType;
3232

33+
import com.adobe.acs.commons.mcp.form.FormField;
34+
import com.adobe.acs.commons.mcp.form.MultifieldComponent;
35+
3336
/**
3437
* A generic list of title/value pairs.
3538
*/
@@ -42,7 +45,7 @@ public interface GenericList {
4245
*
4346
* @return the item list
4447
*/
45-
@Nonnull
48+
@NotNull
4649
@Inject
4750
@Named("list")
4851
@FormField(name = "List", component = MultifieldComponent.class)
@@ -54,7 +57,7 @@ public interface GenericList {
5457
* @param value the list item's value
5558
* @return the title or null
5659
*/
57-
@CheckForNull
60+
@Nullable
5861
String lookupTitle(String value);
5962

6063
/**
@@ -64,7 +67,7 @@ public interface GenericList {
6467
* @param locale the locale for localization
6568
* @return the title or null
6669
*/
67-
@CheckForNull
70+
@Nullable
6871
String lookupTitle(String value, Locale locale);
6972

7073
/**
@@ -79,7 +82,7 @@ interface Item {
7982
*
8083
* @return the title
8184
*/
82-
@Nonnull
85+
@NotNull
8386
@Inject
8487
@Named("jcr:title")
8588
@FormField(name = "Title", localize = true)
@@ -92,15 +95,15 @@ interface Item {
9295
*
9396
* @return the title
9497
*/
95-
@Nonnull
98+
@NotNull
9699
String getTitle(Locale locale);
97100

98101
/**
99102
* Get the item's value.
100103
*
101104
* @return the value
102105
*/
103-
@Nonnull
106+
@NotNull
104107
@Inject
105108
@Named("value")
106109
@FormField(name = "Value")

bundle/src/main/java/com/adobe/acs/commons/genericlists/impl/GenericListAdapterFactory.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,13 @@
1717
*/
1818
package com.adobe.acs.commons.genericlists.impl;
1919

20-
import javax.annotation.CheckForNull;
21-
import javax.annotation.Nonnull;
22-
2320
import org.apache.felix.scr.annotations.Component;
2421
import org.apache.felix.scr.annotations.Properties;
2522
import org.apache.felix.scr.annotations.Property;
2623
import org.apache.felix.scr.annotations.Service;
2724
import org.apache.sling.api.adapter.AdapterFactory;
25+
import org.jetbrains.annotations.NotNull;
26+
import org.jetbrains.annotations.Nullable;
2827

2928
import com.adobe.acs.commons.genericlists.GenericList;
3029
import com.day.cq.wcm.api.Page;
@@ -37,14 +36,14 @@ public class GenericListAdapterFactory implements AdapterFactory {
3736

3837
@SuppressWarnings("unchecked")
3938
@Override
40-
public final <AdapterType> AdapterType getAdapter(@CheckForNull Object obj, @Nonnull Class<AdapterType> clazz) {
39+
public final <AdapterType> AdapterType getAdapter(@Nullable Object obj, @NotNull Class<AdapterType> clazz) {
4140
if (clazz == GenericList.class) {
4241
return (AdapterType) adaptToGenericList(obj);
4342
}
4443
return null;
4544
}
4645

47-
private GenericList adaptToGenericList(@CheckForNull Object obj) {
46+
private GenericList adaptToGenericList(@Nullable Object obj) {
4847
if (obj == null) {
4948
return null;
5049
}

bundle/src/main/java/com/adobe/acs/commons/granite/ui/components/ELVariableProvider.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,8 @@
1919

2020
import java.util.Map;
2121

22-
import javax.annotation.Nonnull;
23-
2422
import org.apache.sling.api.SlingHttpServletRequest;
23+
import org.jetbrains.annotations.NotNull;
2524
import org.osgi.annotation.versioning.ConsumerType;
2625

2726
import com.adobe.granite.ui.components.ExpressionCustomizer;
@@ -44,5 +43,5 @@ public interface ELVariableProvider {
4443
* The name must not contain {@code .}
4544
* Must never be {@code null}, but can be the empty map if no variable is provided.
4645
*/
47-
@Nonnull Map<String, Object> getVariables(SlingHttpServletRequest request);
46+
@NotNull Map<String, Object> getVariables(SlingHttpServletRequest request);
4847
}

bundle/src/main/java/com/adobe/acs/commons/granite/ui/components/impl/include/IncludeDecoratorFilterImpl.java

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -17,32 +17,31 @@
1717
*/
1818
package com.adobe.acs.commons.granite.ui.components.impl.include;
1919

20+
import java.io.IOException;
21+
import java.util.Arrays;
22+
import java.util.List;
23+
import java.util.function.Predicate;
24+
25+
import javax.servlet.Filter;
26+
import javax.servlet.FilterChain;
27+
import javax.servlet.FilterConfig;
28+
import javax.servlet.ServletException;
29+
import javax.servlet.ServletRequest;
30+
import javax.servlet.ServletResponse;
31+
2032
import org.apache.commons.collections.MapUtils;
2133
import org.apache.sling.api.SlingHttpServletRequest;
2234
import org.apache.sling.api.resource.Resource;
2335
import org.apache.sling.api.resource.ValueMap;
2436
import org.apache.sling.engine.EngineConstants;
37+
import org.jetbrains.annotations.Nullable;
2538
import org.osgi.service.component.annotations.Activate;
2639
import org.osgi.service.component.annotations.Component;
2740
import org.osgi.service.component.annotations.ConfigurationPolicy;
2841
import org.osgi.service.component.annotations.Modified;
2942
import org.osgi.service.metatype.annotations.Designate;
3043
import org.osgi.service.metatype.annotations.ObjectClassDefinition;
3144

32-
import javax.annotation.CheckForNull;
33-
import javax.servlet.Filter;
34-
import javax.servlet.FilterChain;
35-
import javax.servlet.ServletRequest;
36-
import javax.servlet.ServletResponse;
37-
import javax.servlet.FilterConfig;
38-
import javax.servlet.ServletException;
39-
40-
41-
import java.io.IOException;
42-
import java.util.Arrays;
43-
import java.util.List;
44-
import java.util.function.Predicate;
45-
4645
@Component(
4746
service = Filter.class,
4847
configurationPolicy = ConfigurationPolicy.OPTIONAL,
@@ -132,7 +131,7 @@ public void doFilter(ServletRequest servletRequest, ServletResponse servletRespo
132131
}
133132

134133
private void performFilter(SlingHttpServletRequest request, ServletResponse servletResponse, FilterChain chain, ValueMap parameters) throws IOException, ServletException {
135-
@CheckForNull Resource parameterResource = request.getResource().getChild(NN_PARAMETERS);
134+
@Nullable Resource parameterResource = request.getResource().getChild(NN_PARAMETERS);
136135
if(parameterResource != null){
137136
parameters = parameterResource.getValueMap();
138137
}

bundle/src/main/java/com/adobe/acs/commons/granite/ui/components/impl/include/NamespaceResourceWrapper.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,19 @@
1717
*/
1818
package com.adobe.acs.commons.granite.ui.components.impl.include;
1919

20-
import com.adobe.granite.ui.components.ExpressionResolver;
21-
import com.adobe.granite.ui.components.FilteringResourceWrapper;
20+
import java.util.Arrays;
21+
import java.util.Iterator;
22+
import java.util.Optional;
23+
2224
import org.apache.commons.collections.iterators.FilterIterator;
2325
import org.apache.commons.collections.iterators.TransformIterator;
2426
import org.apache.sling.api.SlingHttpServletRequest;
2527
import org.apache.sling.api.resource.Resource;
26-
import org.apache.sling.api.resource.ResourceUtil;
2728
import org.apache.sling.api.resource.ValueMap;
29+
import org.jetbrains.annotations.NotNull;
2830

29-
import javax.annotation.Nonnull;
30-
import java.util.Arrays;
31-
import java.util.Iterator;
32-
import java.util.Optional;
31+
import com.adobe.granite.ui.components.ExpressionResolver;
32+
import com.adobe.granite.ui.components.FilteringResourceWrapper;
3333

3434

3535
public class NamespaceResourceWrapper extends FilteringResourceWrapper {
@@ -41,8 +41,8 @@ public class NamespaceResourceWrapper extends FilteringResourceWrapper {
4141

4242
private final ValueMap valueMap;
4343

44-
public NamespaceResourceWrapper(@Nonnull Resource resource, @Nonnull ExpressionResolver expressionResolver,
45-
@Nonnull SlingHttpServletRequest request,
44+
public NamespaceResourceWrapper(@NotNull Resource resource, @NotNull ExpressionResolver expressionResolver,
45+
@NotNull SlingHttpServletRequest request,
4646
String[] namespacedProperties) {
4747
super(resource, expressionResolver, request);
4848
this.expressionResolver = expressionResolver;

0 commit comments

Comments
 (0)