Showing with 8,815 additions and 668 deletions.
  1. +30 −17 pom.xml
  2. +22 −0 xwiki-commons-core/pom.xml
  3. +6 −2 xwiki-commons-core/xwiki-commons-component/xwiki-commons-component-api/pom.xml
  4. +10 −5 ...ommons-component-api/src/main/java/org/xwiki/component/descriptor/DefaultComponentDependency.java
  5. +2 −2 ...mponent-api/src/main/java/org/xwiki/component/internal/multi/AbstractGenericComponentManager.java
  6. +3 −3 ...omponent-api/src/main/java/org/xwiki/component/internal/multi/DefaultComponentManagerManager.java
  7. +5 −5 ...component-api/src/main/java/org/xwiki/component/internal/namespace/DefaultNamespaceValidator.java
  8. +1 −1 ...-commons-component-api/src/test/java/org/xwiki/component/descriptor/DefaultComponentRoleTest.java
  9. +1 −1 ...onent-api/src/test/java/org/xwiki/component/internal/namespace/DefaultNamespaceValidatorTest.java
  10. +1 −1 ...iki-commons-component-api/src/test/java/org/xwiki/component/internal/namespace/NamespaceTest.java
  11. +1 −1 ...ommons-component-api/src/test/java/org/xwiki/component/internal/namespace/NamespaceUtilsTest.java
  12. +1 −1 ...ki-commons-component-api/src/test/java/org/xwiki/component/util/DefaultParameterizedTypeTest.java
  13. +1 −1 ...xwiki-commons-component-api/src/test/java/org/xwiki/component/util/ReflectionMethodUtilsTest.java
  14. +1 −1 ...onent/xwiki-commons-component-api/src/test/java/org/xwiki/component/util/ReflectionUtilsTest.java
  15. +1 −1 ...nt-archetype/src/main/resources/archetype-resources/src/main/java/internal/DefaultHelloWorld.java
  16. +3 −3 ...rchetype/src/main/resources/archetype-resources/src/main/java/script/HelloWorldScriptService.java
  17. +11 −3 ...ons-component-default/src/main/java/org/xwiki/component/annotation/ComponentAnnotationLoader.java
  18. +40 −20 ...ns-component-default/src/main/java/org/xwiki/component/annotation/ComponentDescriptorFactory.java
  19. +35 −22 ...onent-default/src/main/java/org/xwiki/component/annotation/DefaultComponentDependencyFactory.java
  20. +110 −35 ...commons-component-default/src/main/java/org/xwiki/component/embed/EmbeddableComponentManager.java
  21. +27 −22 ...ain/java/org/xwiki/component/{embed/GenericProvider.java → internal/AbstractGenericProvider.java}
  22. +5 −5 ...component-default/src/main/java/org/xwiki/component/internal/ContextComponentManagerProvider.java
  23. +52 −0 ...-commons-component-default/src/main/java/org/xwiki/component/internal/JakartaGenericProvider.java
  24. +70 −0 ...ki-commons-component-default/src/main/java/org/xwiki/component/internal/JakartaJavaXProvider.java
  25. +52 −0 ...ki-commons-component-default/src/main/java/org/xwiki/component/internal/JavaXGenericProvider.java
  26. +70 −0 ...ki-commons-component-default/src/main/java/org/xwiki/component/internal/JavaXJakartaProvider.java
  27. +4 −4 ...ki-commons-component-default/src/main/java/org/xwiki/component/internal/RootComponentManager.java
  28. +3 −3 ...t-default/src/main/java/org/xwiki/component/internal/embed/EmbeddableComponentManagerFactory.java
  29. +212 −0 ...i-commons-component-default/src/test/java/org/xwiki/component/JakartaProviderIntegrationTest.java
  30. +23 −24 .../test/java/org/xwiki/component/{ProviderIntegrationTest.java → JavaxProviderIntegrationTest.java}
  31. +30 −34 ...onent/annotation/{ComponentAnnotationLoaderTest.java → JakartaComponentAnnotationLoaderTest.java}
  32. +269 −0 ...t-default/src/test/java/org/xwiki/component/annotation/JakartaComponentDescriptorFactoryTest.java
  33. +252 −0 ...nent-default/src/test/java/org/xwiki/component/annotation/JavaxComponentAnnotationLoaderTest.java
  34. +2 −2 ...onent/annotation/{ComponentDescriptorFactoryTest.java → JavaxComponentDescriptorFactoryTest.java}
  35. +277 −163 ...ons-component-default/src/test/java/org/xwiki/component/embed/EmbeddableComponentManagerTest.java
  36. +1 −1 ...ons-component/xwiki-commons-component-default/src/test/resources/META-INF/component-overrides.txt
  37. +16 −10 ...wiki-commons-component/xwiki-commons-component-default/src/test/resources/META-INF/components.txt
  38. +36 −0 xwiki-commons-core/xwiki-commons-jakartabridge/pom.xml
  39. +48 −0 xwiki-commons-core/xwiki-commons-jakartabridge/xwiki-commons-jakartabridge-servlet/pom.xml
  40. +770 −0 ...ki-commons-jakartabridge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/ServletBridge.java
  41. +76 −0 ...tabridge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToFilterJavax.java
  42. +125 −0 ...ge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxAsyncContext.java
  43. +68 −0 ...e-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxAsyncListener.java
  44. +76 −0 ...tabridge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxFilter.java
  45. +56 −0 ...dge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxFilterChain.java
  46. +68 −0 ...ge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxFilterConfig.java
  47. +131 −0 ...vlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxFilterRegistration.java
  48. +266 −0 ...vlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxHttpServletRequest.java
  49. +170 −0 ...let/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxHttpServletResponse.java
  50. +148 −0 ...dge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxHttpSession.java
  51. +57 −0 ...vlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxHttpSessionContext.java
  52. +103 −0 ...artabridge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxPart.java
  53. +59 −0 ...-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxReaderListener.java
  54. +66 −0 ...rvlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxRequestDispatcher.java
  55. +85 −0 ...abridge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxServlet.java
  56. +68 −0 ...e-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxServletConfig.java
  57. +427 −0 ...-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxServletContext.java
  58. +74 −0 ...vlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxServletInputStream.java
  59. +157 −0 ...let/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxServletOutputStream.java
  60. +148 −0 ...let/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxServletRegistration.java
  61. +279 −0 ...-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxServletRequest.java
  62. +144 −0 ...servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxServletResponse.java
  63. +123 −0 ...let/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxSessionCookieConfig.java
  64. +53 −0 ...e-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JakartaToJavaxWriteListener.java
  65. +125 −0 ...ge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaAsyncContext.java
  66. +68 −0 ...e-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaAsyncListener.java
  67. +76 −0 ...tabridge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaFilter.java
  68. +56 −0 ...dge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaFilterChain.java
  69. +68 −0 ...ge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaFilterConfig.java
  70. +132 −0 ...vlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaFilterRegistration.java
  71. +266 −0 ...vlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaHttpServletRequest.java
  72. +170 −0 ...let/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaHttpServletResponse.java
  73. +148 −0 ...dge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaHttpSession.java
  74. +57 −0 ...vlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaHttpSessionContext.java
  75. +103 −0 ...artabridge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaPart.java
  76. +59 −0 ...-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaReaderListener.java
  77. +66 −0 ...rvlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaRequestDispatcher.java
  78. +85 −0 ...abridge-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaServlet.java
  79. +68 −0 ...e-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaServletConfig.java
  80. +386 −0 ...-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaServletContext.java
  81. +74 −0 ...vlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaServletInputStream.java
  82. +157 −0 ...let/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaServletOutputStream.java
  83. +148 −0 ...let/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaServletRegistration.java
  84. +279 −0 ...-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaServletRequest.java
  85. +144 −0 ...servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaServletResponse.java
  86. +123 −0 ...let/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaSessionCookieConfig.java
  87. +53 −0 ...e-servlet/src/main/java/org/xwiki/jakartabridge/servlet/internal/JavaxToJakartaWriteListener.java
  88. +57 −0 ...iki-commons-legacy-component-default/src/main/java/org/xwiki/component/embed/GenericProvider.java
  89. +30 −3 xwiki-commons-core/xwiki-commons-netflux/src/main/java/org/xwiki/netflux/internal/Channel.java
  90. +2 −0 xwiki-commons-core/xwiki-commons-netflux/src/main/java/org/xwiki/netflux/internal/JsonConverter.java
  91. +19 −17 ...-commons-core/xwiki-commons-netflux/src/main/java/org/xwiki/netflux/internal/NetfluxEndpoint.java
  92. +1 −1 xwiki-commons-core/xwiki-commons-netflux/src/main/java/org/xwiki/netflux/internal/User.java
  93. +3 −4 xwiki-commons-core/xwiki-commons-netflux/src/main/java/org/xwiki/netflux/internal/Utils.java
  94. +24 −4 xwiki-commons-core/xwiki-commons-netflux/src/test/java/org/xwiki/netflux/internal/ChannelTest.java
  95. +75 −36 ...mons-core/xwiki-commons-netflux/src/test/java/org/xwiki/netflux/internal/NetfluxEndpointTest.java
  96. +1 −1 xwiki-commons-core/xwiki-commons-xml/pom.xml
  97. +1 −1 xwiki-commons-core/xwiki-commons-xml/src/main/java/org/xwiki/xml/html/HTMLUtils.java
  98. +2 −11 ...-commons-core/xwiki-commons-xml/src/main/java/org/xwiki/xml/internal/html/DefaultHTMLCleaner.java
  99. +18 −29 ...mmons-core/xwiki-commons-xml/src/main/java/org/xwiki/xml/internal/html/XWikiHTML5TagProvider.java
  100. +0 −105 ...e/xwiki-commons-xml/src/main/java/org/xwiki/xml/internal/html/filter/ControlCharactersFilter.java
  101. +0 −1 xwiki-commons-core/xwiki-commons-xml/src/main/resources/META-INF/components.txt
  102. +9 −3 xwiki-commons-core/xwiki-commons-xml/src/test/java/org/xwiki/xml/XMLUtilsTest.java
  103. +0 −2 ...mons-core/xwiki-commons-xml/src/test/java/org/xwiki/xml/html/DefaultHTMLCleanerComponentList.java
  104. +0 −2 xwiki-commons-core/xwiki-commons-xml/src/test/java/org/xwiki/xml/html/HTMLUtilsTest.java
  105. +97 −42 ...mons-core/xwiki-commons-xml/src/test/java/org/xwiki/xml/internal/html/DefaultHTMLCleanerTest.java
  106. +12 −0 ...ommons-core/xwiki-commons-xml/src/test/java/org/xwiki/xml/internal/html/HTML5HTMLCleanerTest.java
  107. +7 −4 ...ki-commons-tool-spoon-checks/src/main/java/org/xwiki/tool/spoon/ComponentAnnotationProcessor.java
  108. +2 −2 ...commons-tool-spoon-tests/src/test/java/org/xwiki/tool/spoon/ComponentAnnotationProcessorTest.java
  109. +13 −7 ...wiki-commons-tool-test-component/src/main/java/org/xwiki/test/mockito/MockitoComponentMocker.java
47 changes: 30 additions & 17 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@

<!-- The previous stable version of this project to check against for finding backward incompatibility
(binary and source). -->
<xwiki.compatibility.previous.version>16.1.0</xwiki.compatibility.previous.version>
<xwiki.compatibility.previous.version>16.2.0</xwiki.compatibility.previous.version>

<!-- Java -->
<!-- Note that we prefix the property name by "XWiki", since some code already use the java.version property (such
Expand All @@ -72,10 +72,10 @@
<bouncycastle.version>1.77</bouncycastle.version>

<!-- ASM -->
<asm.version>9.6</asm.version>
<asm.version>9.7</asm.version>

<!-- Guava -->
<guava.version>33.0.0-jre</guava.version>
<guava.version>33.1.0-jre</guava.version>

<!-- SLF4J API and implementation -->
<slf4j.version>2.0.12</slf4j.version>
Expand All @@ -97,34 +97,34 @@
<surefire.version>3.2.5</surefire.version>

<!-- Mock libraries -->
<jmock.version>2.13.0</jmock.version>
<jmock.version>2.13.1</jmock.version>
<mockito.version>5.11.0</mockito.version>

<!-- Byte Buddy -->
<bytebuddy.version>1.14.12</bytebuddy.version>
<bytebuddy.version>1.14.13</bytebuddy.version>

<!-- AspectJ -->
<aspectj.version>1.9.21.2</aspectj.version>
<aspectj.version>1.9.22</aspectj.version>

<!-- Clover & Jacoco -->
<clover.version>4.5.2</clover.version>
<jacoco.version>0.8.11</jacoco.version>

<!-- Checkstyle -->
<checkstyle.version>10.14.1</checkstyle.version>
<checkstyle.version>10.14.2</checkstyle.version>

<!-- Spoon -->
<spoon.version>10.4.2</spoon.version>

<!-- Groovy -->
<groovy.version>4.0.19</groovy.version>
<groovy.version>4.0.20</groovy.version>

<!-- Ivy -->
<ivy.version>2.5.2</ivy.version>

<!-- Closure compiler -->
<closure-compiler.version>v20231112</closure-compiler.version>
<closure-compiler-maven-plugin.version>2.28.0</closure-compiler-maven-plugin.version>
<closure-compiler-maven-plugin.version>2.30.0</closure-compiler-maven-plugin.version>

<!-- Maven Archetype -->
<maven.archetype.version>3.2.1</maven.archetype.version>
Expand Down Expand Up @@ -250,7 +250,8 @@
<antlr4.version>4.13.1</antlr4.version>

<!-- Servlet specifications -->
<servlet.version>3.1.0</servlet.version>
<javax.servlet.version>3.1.0</javax.servlet.version>
<jakarta.servlet.version>5.0.0</jakarta.servlet.version>

<!-- EL implementation -->
<!-- Use the same version as the one that comes with the custom XWiki Jetty application server -->
Expand Down Expand Up @@ -370,7 +371,7 @@
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.15.1</version>
<version>2.16.0</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
Expand Down Expand Up @@ -514,7 +515,7 @@
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-configuration2</artifactId>
<version>2.10.0</version>
<version>2.10.1</version>
<!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
<exclusions>
<exclusion>
Expand Down Expand Up @@ -613,7 +614,7 @@
<dependency>
<groupId>com.fasterxml.woodstox</groupId>
<artifactId>woodstox-core</artifactId>
<version>6.6.1</version>
<version>6.6.2</version>
</dependency>
<dependency>
<groupId>jaxen</groupId>
Expand Down Expand Up @@ -952,6 +953,13 @@
<version>3.30.2-GA</version>
</dependency>

<!-- Injection -->
<dependency>
<groupId>jakarta.inject</groupId>
<artifactId>jakarta.inject-api</artifactId>
<version>2.0.1</version>
</dependency>

<!-- Triggered by several Maven related projects (Doxia, Maven, Aether) as transitive dependency. We need
these explicit versions to help Maven decide which version to use. -->
<dependency>
Expand Down Expand Up @@ -987,7 +995,7 @@
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-archiver</artifactId>
<version>4.9.1</version>
<version>4.9.2</version>
</dependency>
<dependency>
<groupId>org.codehaus.plexus</groupId>
Expand Down Expand Up @@ -1231,7 +1239,7 @@
<dependency>
<groupId>org.wiremock</groupId>
<artifactId>wiremock-standalone</artifactId>
<version>3.4.2</version>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>org.objenesis</groupId>
Expand All @@ -1253,7 +1261,12 @@
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${servlet.version}</version>
<version>${javax.servlet.version}</version>
</dependency>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
<version>${jakarta.servlet.version}</version>
<!-- It should always be provided as the API jar is provided by the Servlet Container in which XWiki is
deployed -->
<scope>provided</scope>
Expand Down Expand Up @@ -2547,7 +2560,7 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<!-- Lock down plugin version for build reproducibility -->
<version>3.2.0</version>
<version>3.2.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
Expand Down
22 changes: 22 additions & 0 deletions xwiki-commons-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@
<module>xwiki-commons-websocket</module>
<module>xwiki-commons-xml</module>
<module>xwiki-commons-xstream</module>
<module>xwiki-commons-jakartabridge</module>
</modules>
<build>
<pluginManagement>
Expand Down Expand Up @@ -256,6 +257,27 @@
</item>
</differences>
</revapi.differences>

<revapi.differences>
<justification>False positives</justification>
<criticality>highlight</criticality>
<differences>
<item>
<ignore>true</ignore>
<code>java.class.nonFinalClassInheritsFromNewClass</code>
<old>class org.xwiki.component.embed.GenericProvider&lt;T&gt;</old>
<new>class org.xwiki.component.embed.GenericProvider&lt;T&gt;</new>
<superClass>org.xwiki.component.internal.AbstractGenericProvider&lt;T&gt;</superClass>
</item>
<item>
<ignore>true</ignore>
<code>java.class.nonFinalClassInheritsFromNewClass</code>
<old>class org.xwiki.component.embed.GenericProvider&lt;T&gt;</old>
<new>class org.xwiki.component.embed.GenericProvider&lt;T&gt;</new>
<superClass>org.xwiki.component.internal.JavaXGenericProvider&lt;T&gt;</superClass>
</item>
</differences>
</revapi.differences>
</analysisConfiguration>
</configuration>
</plugin>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,13 +55,17 @@
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<!-- We add this dependency here so that users of the Component API just need to depend on this artifact and
don't have to explicitly add a dependency on javax.inject:java.inject. -->
<dependency>
<groupId>jakarta.inject</groupId>
<artifactId>jakarta.inject-api</artifactId>
</dependency>
<!-- Keep supporting both the Jakarta and Javax injection APIs -->
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
</dependency>

<!-- Testing dependencies -->
<dependency>
<groupId>org.xwiki.commons</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,14 @@
import java.util.List;
import java.util.Map;
import java.util.Objects;

import javax.inject.Provider;
import java.util.Set;

import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.xwiki.component.util.DefaultParameterizedType;
import org.xwiki.component.util.ReflectionUtils;

import jakarta.inject.Provider;

/**
* Default implementation of {@link ComponentDependency}.
*
Expand All @@ -42,6 +43,9 @@
*/
public class DefaultComponentDependency<T> extends DefaultComponentRole<T> implements ComponentDependency<T>
{
private static final Set<Class<?>> SPECIAL_ROLES =
Set.of(List.class, Collection.class, Map.class, javax.inject.Provider.class, Provider.class);

/**
* @see #getName()
*/
Expand Down Expand Up @@ -115,7 +119,8 @@ public boolean equals(Object object)
{
boolean result;

// See http://www.technofundo.com/tech/java/equalhash.html for the detail of this algorithm.
// See http://www.technofundo.com/tech/java/equalhash.html for the detail of
// this algorithm.
if (this == object) {
result = true;
} else {
Expand Down Expand Up @@ -192,7 +197,7 @@ public Class<T> getRole()
{
Class mapping = getMappingType();

if (mapping == List.class || mapping == Collection.class || mapping == Map.class || mapping == Provider.class) {
if (SPECIAL_ROLES.contains(mapping)) {
return ReflectionUtils.getTypeClass(ReflectionUtils.getLastTypeGenericArgument(getRoleType()));
} else {
return mapping;
Expand All @@ -204,7 +209,7 @@ public void setRole(Class<T> role)
{
Class mapping = getMappingType();

if (mapping == List.class || mapping == Collection.class || mapping == Map.class || mapping == Provider.class) {
if (SPECIAL_ROLES.contains(mapping)) {
Type ownerType;
Class<?> rawType;
if (getRoleType() instanceof ParameterizedType) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@

import java.lang.reflect.Type;

import javax.inject.Inject;

import org.xwiki.component.descriptor.ComponentDescriptor;
import org.xwiki.component.manager.ComponentManager;
import org.xwiki.component.manager.ComponentRepositoryException;

import jakarta.inject.Inject;

/**
* Generic implementation that creates Component Manager instances based on the generic notion of a key. This is used
* for example by the Wiki Component Manager or the User Component Manager which respectively have a key returning the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,14 @@
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

import javax.inject.Inject;
import javax.inject.Singleton;

import org.xwiki.component.annotation.Component;
import org.xwiki.component.manager.ComponentLookupException;
import org.xwiki.component.manager.ComponentManager;
import org.xwiki.component.namespace.NamespaceUtils;

import jakarta.inject.Inject;
import jakarta.inject.Singleton;

/**
* Default implementation of {@link ComponentManagerManager}.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,17 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.inject.Inject;
import javax.inject.Named;
import javax.inject.Provider;
import javax.inject.Singleton;

import org.apache.commons.lang3.StringUtils;
import org.xwiki.component.annotation.Component;
import org.xwiki.component.manager.ComponentManager;
import org.xwiki.component.namespace.NamespaceNotAllowedException;
import org.xwiki.component.namespace.NamespaceValidator;

import jakarta.inject.Inject;
import jakarta.inject.Named;
import jakarta.inject.Provider;
import jakarta.inject.Singleton;

/**
* Default implementation of {@link NamespaceValidator}.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
* @version $Id$
* @since 3.3M1
*/
public class DefaultComponentRoleTest
class DefaultComponentRoleTest
{
private interface Role
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
*
* @version $Id$
*/
public class DefaultNamespaceValidatorTest
class DefaultNamespaceValidatorTest
{
private DefaultNamespaceValidator validator = new DefaultNamespaceValidator();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
*
* @version $Id$
*/
public class NamespaceTest
class NamespaceTest
{
@Test
void equalsAndHashCode()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
*
* @version $Id$
*/
public class NamespaceUtilsTest
class NamespaceUtilsTest
{
@Test
void getPrefix()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
*
* @version $Id$
*/
public class DefaultParameterizedTypeTest
class DefaultParameterizedTypeTest
{
@Test
void toStringTest()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
*
* @version $Id$
*/
public class ReflectionMethodUtilsTest
class ReflectionMethodUtilsTest
{
@Test
void testGetMethodParameterAnnotations() throws SecurityException, NoSuchMethodException
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
*
* @version $Id$
*/
public class ReflectionUtilsTest
class ReflectionUtilsTest
{
private static interface TestInterfaceSimple
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
import ${package}.HelloWorld;
import org.xwiki.component.annotation.Component;

import javax.inject.Singleton;
import jakarta.inject.Singleton;

/**
* Implementation of a {@code HelloWorld} component.
Expand Down
Loading