Skip to content

Commit f54cc5c

Browse files
author
Dennis Labordus
authored
Merge pull request #153 from com-pas/develop
New release
2 parents ab314d7 + e841d1d commit f54cc5c

File tree

49 files changed

+363
-230
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+363
-230
lines changed

app/pom.xml

+7-7
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,10 @@ SPDX-License-Identifier: Apache-2.0
6161
<groupId>io.quarkus</groupId>
6262
<artifactId>quarkus-websockets</artifactId>
6363
</dependency>
64+
<dependency>
65+
<groupId>io.quarkus</groupId>
66+
<artifactId>quarkus-hibernate-validator</artifactId>
67+
</dependency>
6468

6569
<dependency>
6670
<groupId>io.quarkus</groupId>
@@ -76,9 +80,10 @@ SPDX-License-Identifier: Apache-2.0
7680
</dependency>
7781

7882
<dependency>
79-
<groupId>io.quarkus</groupId>
80-
<artifactId>quarkus-hibernate-validator</artifactId>
83+
<groupId>org.jboss.logmanager</groupId>
84+
<artifactId>log4j2-jboss-logmanager</artifactId>
8185
</dependency>
86+
8287
<dependency>
8388
<groupId>io.quarkus</groupId>
8489
<artifactId>quarkus-container-image-docker</artifactId>
@@ -133,11 +138,6 @@ SPDX-License-Identifier: Apache-2.0
133138
<artifactId>openpojo</artifactId>
134139
<scope>test</scope>
135140
</dependency>
136-
<dependency>
137-
<groupId>org.slf4j</groupId>
138-
<artifactId>slf4j-simple</artifactId>
139-
<scope>test</scope>
140-
</dependency>
141141
</dependencies>
142142

143143
<build>

app/src/main/docker/Dockerfile.jvm

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
# docker run -i --rm -p 8080:8080 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/app-jvm
2222
#
2323
###
24-
FROM registry.access.redhat.com/ubi8/ubi-minimal:8.7
24+
FROM registry.access.redhat.com/ubi8/ubi-minimal:8.7-923
2525

2626
ARG JAVA_PACKAGE=java-17-openjdk-headless
2727
ARG RUN_JAVA_VERSION=1.3.8

app/src/main/docker/Dockerfile.native

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
# docker run -i --rm -p 8080:8080 quarkus/app
1515
#
1616
###
17-
FROM registry.access.redhat.com/ubi8/ubi-minimal:8.7
17+
FROM registry.access.redhat.com/ubi8/ubi-minimal:8.7-923
1818
WORKDIR /work/
1919
RUN chown 1001 /work \
2020
&& chmod "g+rwX" /work \

app/src/main/java/org/lfenergy/compas/scl/validator/rest/v1/NsdocResource.java

+6
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55

66
import io.quarkus.security.Authenticated;
77
import io.smallrye.mutiny.Uni;
8+
import org.apache.logging.log4j.LogManager;
9+
import org.apache.logging.log4j.Logger;
810
import org.lfenergy.compas.scl.validator.rest.v1.model.NsdocListResponse;
911
import org.lfenergy.compas.scl.validator.rest.v1.model.NsdocResponse;
1012
import org.lfenergy.compas.scl.validator.service.NsdocService;
@@ -20,6 +22,8 @@
2022
@RequestScoped
2123
@Path("/nsdoc/v1")
2224
public class NsdocResource {
25+
private static final Logger LOGGER = LogManager.getLogger(NsdocResource.class);
26+
2327
private final NsdocService nsdocService;
2428

2529
public NsdocResource(NsdocService nsdocService) {
@@ -30,6 +34,7 @@ public NsdocResource(NsdocService nsdocService) {
3034
@Consumes(MediaType.APPLICATION_XML)
3135
@Produces(MediaType.APPLICATION_XML)
3236
public Uni<NsdocListResponse> list() {
37+
LOGGER.info("Retrieving list of NSDoc Files");
3338
var response = new NsdocListResponse();
3439
response.setNsdocFiles(nsdocService.list());
3540
return Uni.createFrom().item(response);
@@ -40,6 +45,7 @@ public Uni<NsdocListResponse> list() {
4045
@Consumes(MediaType.APPLICATION_XML)
4146
@Produces(MediaType.APPLICATION_XML)
4247
public Uni<NsdocResponse> get(@PathParam(ID_PARAM) UUID id) {
48+
LOGGER.info("Retrieving NS Doc File '{}'", id);
4349
var response = new NsdocResponse();
4450
response.setNsdocFile(nsdocService.get(id));
4551
return Uni.createFrom().item(response);

app/src/main/java/org/lfenergy/compas/scl/validator/rest/v1/SclValidatorResource.java

+5
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55

66
import io.quarkus.security.Authenticated;
77
import io.smallrye.mutiny.Uni;
8+
import org.apache.logging.log4j.LogManager;
9+
import org.apache.logging.log4j.Logger;
810
import org.lfenergy.compas.scl.extensions.model.SclFileType;
911
import org.lfenergy.compas.scl.validator.rest.v1.model.SclValidateRequest;
1012
import org.lfenergy.compas.scl.validator.rest.v1.model.SclValidateResponse;
@@ -22,6 +24,8 @@
2224
@RequestScoped
2325
@Path("/validate/v1/{" + TYPE_PATH_PARAM + "}")
2426
public class SclValidatorResource {
27+
private static final Logger LOGGER = LogManager.getLogger(SclValidatorResource.class);
28+
2529
private final SclValidatorService sclValidatorService;
2630

2731
@Inject
@@ -34,6 +38,7 @@ public SclValidatorResource(SclValidatorService sclValidatorService) {
3438
@Produces(MediaType.APPLICATION_XML)
3539
public Uni<SclValidateResponse> validateSCL(@PathParam(TYPE_PATH_PARAM) SclFileType type,
3640
@Valid SclValidateRequest request) {
41+
LOGGER.info("Validating SCL File for type {}.", type);
3742
var response = new SclValidateResponse();
3843
response.setValidationErrorList(sclValidatorService.validate(type, request.getSclData()));
3944
return Uni.createFrom().item(response);

app/src/main/java/org/lfenergy/compas/scl/validator/rest/v1/websocket/SclValidateRequestDecoder.java

-20
This file was deleted.

app/src/main/java/org/lfenergy/compas/scl/validator/rest/v1/websocket/SclValidateRequestEncoder.java

-15
This file was deleted.

app/src/main/java/org/lfenergy/compas/scl/validator/rest/v1/websocket/SclValidateResponseDecoder.java

-20
This file was deleted.

app/src/main/java/org/lfenergy/compas/scl/validator/rest/v1/websocket/SclValidateResponseEncoder.java

-15
This file was deleted.

app/src/main/java/org/lfenergy/compas/scl/validator/rest/v1/event/SclValidatorEventHandler.java app/src/main/java/org/lfenergy/compas/scl/validator/websocket/event/SclValidatorEventHandler.java

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
// SPDX-FileCopyrightText: 2022 Alliander N.V.
22
//
33
// SPDX-License-Identifier: Apache-2.0
4-
package org.lfenergy.compas.scl.validator.rest.v1.event;
4+
package org.lfenergy.compas.scl.validator.websocket.event;
55

66
import io.quarkus.vertx.ConsumeEvent;
77
import org.lfenergy.compas.core.websocket.WebsocketHandler;
8-
import org.lfenergy.compas.scl.validator.rest.v1.model.SclValidateResponse;
98
import org.lfenergy.compas.scl.validator.service.SclValidatorService;
9+
import org.lfenergy.compas.scl.validator.websocket.event.model.SclValidatorEventRequest;
10+
import org.lfenergy.compas.scl.validator.websocket.v1.model.SclValidateWsResponse;
1011

1112
import javax.enterprise.context.ApplicationScoped;
1213
import javax.inject.Inject;
@@ -25,8 +26,8 @@ public SclValidatorEventHandler(SclValidatorService sclValidatorService) {
2526

2627
@ConsumeEvent(value = "validate-ws", blocking = true)
2728
public void validateWebsocketsEvent(SclValidatorEventRequest request) {
28-
new WebsocketHandler<SclValidateResponse>().execute(request.getSession(), () -> {
29-
var response = new SclValidateResponse();
29+
new WebsocketHandler<SclValidateWsResponse>().execute(request.getSession(), () -> {
30+
var response = new SclValidateWsResponse();
3031
response.setValidationErrorList(sclValidatorService.validate(request.getType(), request.getSclData()));
3132
return response;
3233
});

app/src/main/java/org/lfenergy/compas/scl/validator/rest/v1/event/SclValidatorEventRequest.java app/src/main/java/org/lfenergy/compas/scl/validator/websocket/event/model/SclValidatorEventRequest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// SPDX-FileCopyrightText: 2022 Alliander N.V.
22
//
33
// SPDX-License-Identifier: Apache-2.0
4-
package org.lfenergy.compas.scl.validator.rest.v1.event;
4+
package org.lfenergy.compas.scl.validator.websocket.event.model;
55

66
import org.lfenergy.compas.scl.extensions.model.SclFileType;
77

app/src/main/java/org/lfenergy/compas/scl/validator/rest/v1/SclValidatorServerEndpoint.java app/src/main/java/org/lfenergy/compas/scl/validator/websocket/v1/SclValidatorServerEndpoint.java

+14-13
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,22 @@
11
// SPDX-FileCopyrightText: 2022 Alliander N.V.
22
//
33
// SPDX-License-Identifier: Apache-2.0
4-
package org.lfenergy.compas.scl.validator.rest.v1;
4+
package org.lfenergy.compas.scl.validator.websocket.v1;
55

66
import io.quarkus.security.Authenticated;
77
import io.vertx.mutiny.core.eventbus.EventBus;
8+
import org.apache.logging.log4j.LogManager;
9+
import org.apache.logging.log4j.Logger;
810
import org.lfenergy.compas.core.websocket.ErrorResponseEncoder;
911
import org.lfenergy.compas.scl.extensions.model.SclFileType;
10-
import org.lfenergy.compas.scl.validator.rest.v1.event.SclValidatorEventRequest;
11-
import org.lfenergy.compas.scl.validator.rest.v1.model.SclValidateRequest;
12-
import org.lfenergy.compas.scl.validator.rest.v1.websocket.SclValidateRequestDecoder;
13-
import org.lfenergy.compas.scl.validator.rest.v1.websocket.SclValidateRequestEncoder;
14-
import org.lfenergy.compas.scl.validator.rest.v1.websocket.SclValidateResponseDecoder;
15-
import org.lfenergy.compas.scl.validator.rest.v1.websocket.SclValidateResponseEncoder;
16-
import org.slf4j.Logger;
17-
import org.slf4j.LoggerFactory;
12+
import org.lfenergy.compas.scl.validator.websocket.event.model.SclValidatorEventRequest;
13+
import org.lfenergy.compas.scl.validator.websocket.v1.decoder.SclValidateWsRequestDecoder;
14+
import org.lfenergy.compas.scl.validator.websocket.v1.encoder.SclValidateWsResponseEncoder;
15+
import org.lfenergy.compas.scl.validator.websocket.v1.model.SclValidateWsRequest;
1816

1917
import javax.enterprise.context.ApplicationScoped;
2018
import javax.inject.Inject;
19+
import javax.validation.Valid;
2120
import javax.websocket.*;
2221
import javax.websocket.server.PathParam;
2322
import javax.websocket.server.ServerEndpoint;
@@ -28,10 +27,10 @@
2827
@Authenticated
2928
@ApplicationScoped
3029
@ServerEndpoint(value = "/validate-ws/v1/{" + TYPE_PATH_PARAM + "}",
31-
decoders = {SclValidateRequestDecoder.class, SclValidateResponseDecoder.class},
32-
encoders = {SclValidateRequestEncoder.class, SclValidateResponseEncoder.class, ErrorResponseEncoder.class})
30+
decoders = {SclValidateWsRequestDecoder.class},
31+
encoders = {SclValidateWsResponseEncoder.class, ErrorResponseEncoder.class})
3332
public class SclValidatorServerEndpoint {
34-
private static final Logger LOGGER = LoggerFactory.getLogger(SclValidatorServerEndpoint.class);
33+
private static final Logger LOGGER = LogManager.getLogger(SclValidatorServerEndpoint.class);
3534

3635
private final EventBus eventBus;
3736

@@ -46,7 +45,9 @@ public void onOpen(Session session, @PathParam(TYPE_PATH_PARAM) String type) {
4645
}
4746

4847
@OnMessage
49-
public void onMessage(Session session, SclValidateRequest request, @PathParam(TYPE_PATH_PARAM) String type) {
48+
public void onMessage(Session session,
49+
@Valid SclValidateWsRequest request,
50+
@PathParam(TYPE_PATH_PARAM) String type) {
5051
LOGGER.info("Message from session {} for type {}.", session.getId(), type);
5152
eventBus.send("validate-ws", new SclValidatorEventRequest(
5253
session, SclFileType.valueOf(type), request.getSclData()));
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// SPDX-FileCopyrightText: 2022 Alliander N.V.
2+
//
3+
// SPDX-License-Identifier: Apache-2.0
4+
package org.lfenergy.compas.scl.validator.websocket.v1.decoder;
5+
6+
import org.lfenergy.compas.core.websocket.AbstractDecoder;
7+
import org.lfenergy.compas.core.websocket.WebsocketSupport;
8+
import org.lfenergy.compas.scl.validator.websocket.v1.model.SclValidateWsRequest;
9+
10+
public class SclValidateWsRequestDecoder extends AbstractDecoder<SclValidateWsRequest> {
11+
@Override
12+
public boolean willDecode(String message) {
13+
return (message != null);
14+
}
15+
16+
@Override
17+
public SclValidateWsRequest decode(String message) {
18+
return WebsocketSupport.decode(message, SclValidateWsRequest.class);
19+
}
20+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// SPDX-FileCopyrightText: 2022 Alliander N.V.
2+
//
3+
// SPDX-License-Identifier: Apache-2.0
4+
package org.lfenergy.compas.scl.validator.websocket.v1.decoder;
5+
6+
import org.lfenergy.compas.core.websocket.AbstractDecoder;
7+
import org.lfenergy.compas.core.websocket.WebsocketSupport;
8+
import org.lfenergy.compas.scl.validator.websocket.v1.model.SclValidateWsResponse;
9+
10+
public class SclValidateWsResponseDecoder extends AbstractDecoder<SclValidateWsResponse> {
11+
@Override
12+
public boolean willDecode(String message) {
13+
return (message != null);
14+
}
15+
16+
@Override
17+
public SclValidateWsResponse decode(String message) {
18+
return WebsocketSupport.decode(message, SclValidateWsResponse.class);
19+
}
20+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// SPDX-FileCopyrightText: 2022 Alliander N.V.
2+
//
3+
// SPDX-License-Identifier: Apache-2.0
4+
package org.lfenergy.compas.scl.validator.websocket.v1.encoder;
5+
6+
import org.lfenergy.compas.core.websocket.AbstractEncoder;
7+
import org.lfenergy.compas.core.websocket.WebsocketSupport;
8+
import org.lfenergy.compas.scl.validator.websocket.v1.model.SclValidateWsRequest;
9+
10+
public class SclValidateWsRequestEncoder extends AbstractEncoder<SclValidateWsRequest> {
11+
@Override
12+
public String encode(SclValidateWsRequest jaxbObject) {
13+
return WebsocketSupport.encode(jaxbObject, SclValidateWsRequest.class);
14+
}
15+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// SPDX-FileCopyrightText: 2022 Alliander N.V.
2+
//
3+
// SPDX-License-Identifier: Apache-2.0
4+
package org.lfenergy.compas.scl.validator.websocket.v1.encoder;
5+
6+
import org.lfenergy.compas.core.websocket.AbstractEncoder;
7+
import org.lfenergy.compas.core.websocket.WebsocketSupport;
8+
import org.lfenergy.compas.scl.validator.websocket.v1.model.SclValidateWsResponse;
9+
10+
public class SclValidateWsResponseEncoder extends AbstractEncoder<SclValidateWsResponse> {
11+
@Override
12+
public String encode(SclValidateWsResponse jaxbObject) {
13+
return WebsocketSupport.encode(jaxbObject, SclValidateWsResponse.class);
14+
}
15+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
// SPDX-FileCopyrightText: 2022 Alliander N.V.
2+
//
3+
// SPDX-License-Identifier: Apache-2.0
4+
5+
package org.lfenergy.compas.scl.validator.websocket.v1.model;
6+
7+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
8+
import org.lfenergy.compas.scl.validator.rest.v1.model.SclValidateRequest;
9+
10+
import javax.xml.bind.annotation.XmlAccessType;
11+
import javax.xml.bind.annotation.XmlAccessorType;
12+
import javax.xml.bind.annotation.XmlRootElement;
13+
import javax.xml.bind.annotation.XmlType;
14+
15+
import static org.lfenergy.compas.scl.validator.SclValidatorConstants.SCL_VALIDATOR_SERVICE_V1_NS_URI;
16+
17+
@Schema(description = "The Validation Request retrieved")
18+
@XmlType(name = "SclValidateWsRequest", namespace = SCL_VALIDATOR_SERVICE_V1_NS_URI)
19+
@XmlRootElement(name = "SclValidateWsRequest", namespace = SCL_VALIDATOR_SERVICE_V1_NS_URI)
20+
@XmlAccessorType(XmlAccessType.FIELD)
21+
public class SclValidateWsRequest extends SclValidateRequest {
22+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
// SPDX-FileCopyrightText: 2022 Alliander N.V.
2+
//
3+
// SPDX-License-Identifier: Apache-2.0
4+
package org.lfenergy.compas.scl.validator.websocket.v1.model;
5+
6+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
7+
import org.lfenergy.compas.scl.validator.rest.v1.model.SclValidateResponse;
8+
9+
import javax.xml.bind.annotation.XmlAccessType;
10+
import javax.xml.bind.annotation.XmlAccessorType;
11+
import javax.xml.bind.annotation.XmlRootElement;
12+
import javax.xml.bind.annotation.XmlType;
13+
14+
import static org.lfenergy.compas.scl.validator.SclValidatorConstants.SCL_VALIDATOR_SERVICE_V1_NS_URI;
15+
16+
@Schema(description = "The Validation Response returned")
17+
@XmlType(name = "SclValidateWsResponse", namespace = SCL_VALIDATOR_SERVICE_V1_NS_URI)
18+
@XmlRootElement(name = "SclValidateWsResponse", namespace = SCL_VALIDATOR_SERVICE_V1_NS_URI)
19+
@XmlAccessorType(XmlAccessType.FIELD)
20+
public class SclValidateWsResponse extends SclValidateResponse {
21+
}

0 commit comments

Comments
 (0)