Skip to content

Commit 7f239f0

Browse files
Applied changes following the review
1 parent aeb3ea2 commit 7f239f0

File tree

8 files changed

+80
-65
lines changed

8 files changed

+80
-65
lines changed

flow-server/src/main/java/com/vaadin/flow/di/DefaultInstantiator.java

-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
import com.vaadin.flow.server.VaadinService;
2525
import com.vaadin.flow.server.VaadinServiceInitListener;
2626

27-
import java.util.Collection;
2827
import java.util.ServiceLoader;
2928
import java.util.concurrent.atomic.AtomicReference;
3029
import java.util.stream.Stream;

flow-server/src/main/java/com/vaadin/flow/server/VaadinService.java

+11-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,17 @@
2929
import com.vaadin.flow.router.RouteData;
3030
import com.vaadin.flow.router.Router;
3131
import com.vaadin.flow.server.HandlerHelper.RequestType;
32-
import com.vaadin.flow.server.communication.*;
32+
import com.vaadin.flow.server.communication.AtmospherePushConnection;
33+
import com.vaadin.flow.server.communication.HeartbeatHandler;
34+
import com.vaadin.flow.server.communication.IndexHtmlRequestListener;
35+
import com.vaadin.flow.server.communication.IndexHtmlResponse;
36+
import com.vaadin.flow.server.communication.JavaScriptBootstrapHandler;
37+
import com.vaadin.flow.server.communication.PwaHandler;
38+
import com.vaadin.flow.server.communication.SessionRequestHandler;
39+
import com.vaadin.flow.server.communication.StreamRequestHandler;
40+
import com.vaadin.flow.server.communication.UidlRequestHandler;
41+
import com.vaadin.flow.server.communication.WebComponentBootstrapHandler;
42+
import com.vaadin.flow.server.communication.WebComponentProvider;
3343
import com.vaadin.flow.shared.ApplicationConstants;
3444
import com.vaadin.flow.shared.JsonConstants;
3545
import com.vaadin.flow.shared.Registration;

flow-tests/vaadin-spring-tests/pom.xml

+30-30
Original file line numberDiff line numberDiff line change
@@ -168,36 +168,36 @@
168168
</plugins>
169169
<pluginManagement>
170170
<plugins>
171-
<!-- <plugin>-->
172-
<!-- <groupId>org.apache.maven.plugins</groupId>-->
173-
<!-- <artifactId>maven-enforcer-plugin</artifactId>-->
174-
<!-- <version>3.4.1</version>-->
175-
<!-- <dependencies>-->
176-
<!-- <dependency>-->
177-
<!-- <groupId>de.skuzzle.enforcer</groupId>-->
178-
<!-- <artifactId>restrict-imports-enforcer-rule</artifactId>-->
179-
<!-- <version>2.4.0</version>-->
180-
<!-- </dependency>-->
181-
<!-- </dependencies>-->
182-
<!-- <executions>-->
183-
<!-- <execution>-->
184-
<!-- <id>check-logging-imports</id>-->
185-
<!-- <phase>process-sources</phase>-->
186-
<!-- <goals>-->
187-
<!-- <goal>enforce</goal>-->
188-
<!-- </goals>-->
189-
<!-- <configuration>-->
190-
<!-- <rules>-->
191-
<!-- <RestrictImports>-->
192-
<!-- <reason>Use SLF4j for logging</reason>-->
193-
<!-- <bannedImport>java.util.logging.**-->
194-
<!-- </bannedImport>-->
195-
<!-- </RestrictImports>-->
196-
<!-- </rules>-->
197-
<!-- </configuration>-->
198-
<!-- </execution>-->
199-
<!-- </executions>-->
200-
<!-- </plugin>-->
171+
<plugin>
172+
<groupId>org.apache.maven.plugins</groupId>
173+
<artifactId>maven-enforcer-plugin</artifactId>
174+
<version>3.4.1</version>
175+
<dependencies>
176+
<dependency>
177+
<groupId>de.skuzzle.enforcer</groupId>
178+
<artifactId>restrict-imports-enforcer-rule</artifactId>
179+
<version>2.4.0</version>
180+
</dependency>
181+
</dependencies>
182+
<executions>
183+
<execution>
184+
<id>check-logging-imports</id>
185+
<phase>process-sources</phase>
186+
<goals>
187+
<goal>enforce</goal>
188+
</goals>
189+
<configuration>
190+
<rules>
191+
<RestrictImports>
192+
<reason>Use SLF4j for logging</reason>
193+
<bannedImport>java.util.logging.**
194+
</bannedImport>
195+
</RestrictImports>
196+
</rules>
197+
</configuration>
198+
</execution>
199+
</executions>
200+
</plugin>
201201
<plugin>
202202
<groupId>org.apache.maven.plugins</groupId>
203203
<artifactId>maven-jar-plugin</artifactId>

flow-tests/vaadin-spring-tests/test-spring-boot/pom.xml

+1-7
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,6 @@
2828
<version>${project.version}</version>
2929
</dependency>
3030

31-
<dependency>
32-
<groupId>com.vaadin</groupId>
33-
<artifactId>vaadin-dev-server</artifactId>
34-
<version>${project.version}</version>
35-
</dependency>
36-
3731
<dependency>
3832
<groupId>com.vaadin</groupId>
3933
<artifactId>vaadin-test-spring-common</artifactId>
@@ -118,7 +112,7 @@
118112
<execution>
119113
<goals>
120114
<goal>prepare-frontend</goal>
121-
<!-- <goal>build-frontend</goal>-->
115+
<goal>build-frontend</goal>
122116
</goals>
123117
</execution>
124118
</executions>
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.vaadin.flow.spring.test;
1+
package com.vaadin.flow.spring.service;
22

33
import org.slf4j.Logger;
44
import org.slf4j.LoggerFactory;
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
1-
package com.vaadin.flow.spring.test;
2-
3-
import java.util.List;
4-
5-
import org.springframework.beans.factory.annotation.Autowired;
6-
import org.springframework.stereotype.Component;
1+
package com.vaadin.flow.spring.service;
72

83
import com.vaadin.flow.server.ServiceInitEvent;
94
import com.vaadin.flow.server.VaadinRequestInterceptor;
105
import com.vaadin.flow.server.VaadinServiceInitListener;
6+
import org.springframework.beans.factory.annotation.Autowired;
7+
import org.springframework.stereotype.Component;
8+
9+
import java.util.List;
1110

1211
@Component
1312
public class MyVaadinServiceInitListener implements VaadinServiceInitListener {

vaadin-spring/src/test/java/com/vaadin/flow/spring/service/SpringVaadinServletServiceTest.java

+25-16
Original file line numberDiff line numberDiff line change
@@ -18,25 +18,26 @@
1818
import com.vaadin.flow.component.UI;
1919
import com.vaadin.flow.di.Instantiator;
2020
import com.vaadin.flow.server.ServiceException;
21-
import com.vaadin.flow.server.VaadinRequestInterceptor;
2221
import com.vaadin.flow.server.VaadinService;
2322
import com.vaadin.flow.server.VaadinServiceInitListener;
23+
import com.vaadin.flow.server.VaadinServletRequest;
24+
import com.vaadin.flow.server.VaadinServletResponse;
25+
import com.vaadin.flow.server.VaadinServletService;
2426
import com.vaadin.flow.spring.instantiator.SpringInstantiatorTest;
2527
import jakarta.servlet.ServletException;
2628
import org.junit.Assert;
2729
import org.junit.Test;
28-
import org.junit.jupiter.api.Assertions;
2930
import org.junit.runner.RunWith;
3031
import org.springframework.beans.factory.annotation.Autowired;
3132
import org.springframework.context.ApplicationContext;
3233
import org.springframework.context.annotation.Import;
34+
import org.springframework.mock.web.MockHttpServletRequest;
35+
import org.springframework.mock.web.MockHttpServletResponse;
3336
import org.springframework.stereotype.Component;
3437
import org.springframework.test.context.junit4.SpringRunner;
3538

36-
import java.util.List;
3739
import java.util.Properties;
3840
import java.util.stream.Stream;
39-
import java.util.stream.StreamSupport;
4041

4142
@RunWith(SpringRunner.class)
4243
@Import(TestServletConfiguration.class)
@@ -97,19 +98,27 @@ public void uiInitListenerAsSpringBean_listenerIsAutoregisteredAsUIInitiLietnerI
9798

9899
@Test
99100
public void requestInterceptorsAreRegisteredOnTheService()
100-
throws ServletException {
101-
VaadinService service = SpringInstantiatorTest.getService(context,
102-
new Properties());
101+
throws ServletException, ServiceException {
102+
VaadinServletService service = (VaadinServletService) SpringInstantiatorTest
103+
.getService(context, new Properties());
104+
VaadinServletRequest request = new VaadinServletRequest(
105+
new MockHttpServletRequest(), service);
106+
107+
try {
108+
service.handleRequest(request, new VaadinServletResponse(
109+
new MockHttpServletResponse(), service));
110+
} catch (Exception e) {
111+
Assert.assertTrue(
112+
"Exception must be related to missing frontend folder",
113+
e.getMessage().contains("Unable to find index.html"));
114+
}
103115

104-
List<VaadinRequestInterceptor> interceptors = StreamSupport
105-
.stream(service.getVaadinRequestInterceptors().spliterator(),
106-
false)
107-
.toList();
108-
Assertions.assertEquals(1, interceptors.size(),
109-
"There should be 1 filter");
110-
Assertions.assertInstanceOf(
111-
TestServletConfiguration.MyRequestInterceptor.class,
112-
interceptors.get(0), "MyFilter should be registered");
116+
Assert.assertEquals("Interceptor got called on start", "true",
117+
request.getAttribute("started"));
118+
Assert.assertEquals("Interceptor got called on error", "true",
119+
request.getAttribute("error"));
120+
Assert.assertEquals("Interceptor got called on stop", "true",
121+
request.getAttribute("stopped"));
113122
}
114123

115124
}

vaadin-spring/src/test/java/com/vaadin/flow/spring/service/TestServletConfiguration.java

+7-3
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,10 @@
1515
*/
1616
package com.vaadin.flow.spring.service;
1717

18-
import com.vaadin.flow.server.*;
19-
import org.springframework.beans.factory.ObjectProvider;
18+
import com.vaadin.flow.server.VaadinRequest;
19+
import com.vaadin.flow.server.VaadinRequestInterceptor;
20+
import com.vaadin.flow.server.VaadinResponse;
21+
import com.vaadin.flow.server.VaadinSession;
2022
import org.springframework.boot.SpringBootConfiguration;
2123
import org.springframework.context.annotation.Bean;
2224
import org.springframework.context.annotation.ComponentScan;
@@ -40,18 +42,20 @@ static class MyRequestInterceptor implements VaadinRequestInterceptor {
4042
@Override
4143
public void requestStart(VaadinRequest request,
4244
VaadinResponse response) {
43-
45+
request.setAttribute("started", "true");
4446
}
4547

4648
@Override
4749
public void handleException(VaadinRequest request,
4850
VaadinResponse response, VaadinSession vaadinSession,
4951
Exception t) {
52+
request.setAttribute("error", "true");
5053
}
5154

5255
@Override
5356
public void requestEnd(VaadinRequest request, VaadinResponse response,
5457
VaadinSession session) {
58+
request.setAttribute("stopped", "true");
5559
}
5660
}
5761
}

0 commit comments

Comments
 (0)