Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 34 additions & 12 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,33 +14,38 @@
<description>CH API handling CRUD operations on Ordering Service</description>

<properties>
<kafka-models.version>1.0.26</kafka-models.version>
<ch-kafka.version>1.4.2</ch-kafka.version>
<java.version>1.8</java.version>
<structured-logging.version>1.9.12</structured-logging.version>
<kafka-models.version>2.0.9</kafka-models.version>
<ch-kafka.version>2.0.2</ch-kafka.version>
<java.version>17</java.version>
<structured-logging.version>2.0.3</structured-logging.version>
<commons.lang.version>2.6</commons.lang.version>
<commons.beanutils.version>1.9.4</commons.beanutils.version>
<org.mapstruct.version>1.4.2.Final</org.mapstruct.version>
<gson.version>2.8.0</gson.version>
<gson.version>2.8.9</gson.version>
<hamcrest-all-version>1.3</hamcrest-all-version>
<!-- system-rules: 1.17.2 is the latest version that works with JUnit 5.
See https://github.com/stefanbirkner/system-rules/issues/70 -->
<system-rules-version>1.17.2</system-rules-version>
<spring-cloud-contract-wiremock-version>2.2.2.RELEASE</spring-cloud-contract-wiremock-version>
<spring-cloud-contract-wiremock-version>4.0.4</spring-cloud-contract-wiremock-version>
<start-class>uk.gov.companieshouse.orders.api.OrdersApiApplication</start-class>
<private-api-sdk-java.version>2.0.286</private-api-sdk-java.version>
<api-sdk-manager-java-library.version>1.0.3</api-sdk-manager-java-library.version>
<api-sdk-java.version>4.3.3</api-sdk-java.version>
<api-helper-java.version>1.4.1</api-helper-java.version>
<api-sdk-manager-java-library.version>2.0.2</api-sdk-manager-java-library.version>
<api-sdk-java.version>5.0.5</api-sdk-java.version>
<api-helper-java.version>2.0.5</api-helper-java.version>
<api-security-java.version>0.3.4</api-security-java.version>

<spring-boot-dependencies.version>2.5.5</spring-boot-dependencies.version>
<spring-boot-maven-plugin.version>2.5.5</spring-boot-maven-plugin.version>
<spring-boot-dependencies.version>3.1.5</spring-boot-dependencies.version>
<spring-boot-maven-plugin.version>3.1.5</spring-boot-maven-plugin.version>
<spring-boot-devtools.version>3.1.5</spring-boot-devtools.version>
<spring-boot-starter-aop.version>3.1.5</spring-boot-starter-aop.version>
<spring-boot-starter-web.version>3.1.5</spring-boot-starter-web.version>
<spring-boot-starter-validation.version>3.1.5</spring-boot-starter-validation.version>
<spring-boot-starter-data-mongodb.version>3.1.5</spring-boot-starter-data-mongodb.version>

<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
<maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>

<log4j-version>2.17.1</log4j-version>
<log4j-version>2.21.1</log4j-version>

<!-- Docker -->
<jib-maven-plugin.version>3.1.1</jib-maven-plugin.version>
Expand All @@ -62,14 +67,17 @@
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
<version>${spring-boot-starter-validation.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<version>${spring-boot-devtools.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>${spring-boot-starter-web.version}</version>
</dependency>
<dependency>
<groupId>uk.gov.companieshouse</groupId>
Expand All @@ -89,10 +97,12 @@
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
<version>${spring-boot-starter-data-mongodb.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
<version>${spring-boot-starter-aop.version}</version>
</dependency>

<dependency>
Expand Down Expand Up @@ -180,9 +190,21 @@
<dependency>
<groupId>de.flapdoodle.embed</groupId>
<artifactId>de.flapdoodle.embed.mongo</artifactId>
<version>4.9.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>de.flapdoodle.embed</groupId>
<artifactId>de.flapdoodle.embed.mongo.spring31x</artifactId>
<version>4.9.3</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.jgrapht</groupId>
<artifactId>jgrapht-core</artifactId>
</exclusion>
</exclusions>
</dependency> <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-webflux</artifactId>
<scope>test</scope>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
import com.fasterxml.jackson.databind.SerializationFeature;

import uk.gov.companieshouse.api.interceptor.CRUDAuthenticationInterceptor;
Expand Down Expand Up @@ -79,7 +79,7 @@ public ObjectMapper objectMapper() {
.setDefaultPropertyInclusion(JsonInclude.Include.NON_NULL)
.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)
.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS)
.setPropertyNamingStrategy(PropertyNamingStrategy.SNAKE_CASE)
.setPropertyNamingStrategy(new PropertyNamingStrategies.SnakeCaseStrategy())
.findAndRegisterModules();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
import java.util.Set;
import java.util.function.BiFunction;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpHeaders;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package uk.gov.companieshouse.orders.api.interceptor;

import java.util.Optional;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
import uk.gov.companieshouse.logging.LoggerFactory;
import uk.gov.companieshouse.logging.util.RequestLogger;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import static uk.gov.companieshouse.orders.api.logging.LoggingUtils.APPLICATION_NAMESPACE;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package uk.gov.companieshouse.orders.api.interceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package uk.gov.companieshouse.orders.api.interceptor;

import java.util.List;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Service;
import org.springframework.web.servlet.mvc.method.RequestMappingInfo;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Service;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.mvc.method.RequestMappingInfo;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@
import uk.gov.companieshouse.orders.api.repository.OrderRepository;
import uk.gov.companieshouse.orders.api.util.EricHeaderHelper;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.util.Map;
import java.util.function.BiPredicate;
import java.util.function.Function;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

import static org.springframework.http.HttpStatus.UNAUTHORIZED;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Component;
import org.springframework.web.context.annotation.RequestScope;
import uk.gov.companieshouse.orders.api.logging.LoggingUtils;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import org.apache.commons.lang.StringUtils;

import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;

public class EricHeaderHelper {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package uk.gov.companieshouse.orders.api.util;

import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;

public interface Loggable {
Map<String, Object> getLogMap();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
import uk.gov.companieshouse.orders.api.logging.LoggingUtils;

public final class LoggableBuilder {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import static org.apache.commons.collections.CollectionUtils.isNotEmpty;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.isEmptyOrNullString;
import static org.hamcrest.Matchers.emptyOrNullString;
import static org.hamcrest.Matchers.notNullValue;
import static org.hamcrest.core.Is.is;
import static org.junit.jupiter.api.Assertions.assertEquals;
Expand Down Expand Up @@ -65,7 +65,7 @@
import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
Expand Down Expand Up @@ -1040,7 +1040,7 @@ void checkoutBasketReturns200WhenTotalOrderCostIsZero() throws Exception {

MvcResult result = resultActions.andReturn();
MockHttpServletResponse response = result.getResponse();
assertThat(response.getHeader(PAYMENT_REQUIRED_HEADER), isEmptyOrNullString());
assertThat(response.getHeader(PAYMENT_REQUIRED_HEADER), is(emptyOrNullString()));
String contentAsString = response.getContentAsString();
CheckoutData responseCheckoutData = mapper.readValue(contentAsString, CheckoutData.class);

Expand Down Expand Up @@ -2192,7 +2192,7 @@ private void verifyCertifiedCopyItemOptionsAreCorrect(final Item certifiedCopy)
final CertifiedCopyItemOptions options = (CertifiedCopyItemOptions) certifiedCopy.getItemOptions();
assertThat(isNotEmpty(options.getFilingHistoryDocuments()), is(true));
org.assertj.core.api.Assertions.assertThat(options.getFilingHistoryDocuments().get(0))
.isEqualToComparingFieldByFieldRecursively(DOCUMENT);
.usingRecursiveComparison().isEqualTo(DOCUMENT);
}

/**
Expand Down Expand Up @@ -2309,7 +2309,7 @@ private void verifyBasketIsUnchanged(final LocalDateTime basketCreationTime,
assertThat(basket.getData().getItems().size(), is(1));
assertThat(basket.getData().getItems().get(0).getItemUri(), is(itemUri));
org.assertj.core.api.Assertions.assertThat(basket.getData().getDeliveryDetails())
.isEqualToComparingFieldByField(deliveryDetailsAdded);
.usingRecursiveComparison().isEqualTo(deliveryDetailsAdded);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Optional;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
import org.springframework.test.web.servlet.MockMvc;
import uk.gov.companieshouse.orders.api.interceptor.UserAuthenticationInterceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import static org.mockito.ArgumentMatchers.*;
import static org.mockito.Mockito.never;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
import uk.gov.companieshouse.orders.api.model.BasketData;
import uk.gov.companieshouse.orders.api.service.BasketService;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.util.Optional;

import static org.junit.jupiter.api.Assertions.assertFalse;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
import static org.mockito.Mockito.verifyNoInteractions;
import static org.mockito.Mockito.when;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.when;
import static org.springframework.web.reactive.function.BodyInserters.fromObject;
import static org.springframework.web.reactive.function.BodyInserters.fromValue;
import static uk.gov.companieshouse.api.util.security.EricConstants.ERIC_AUTHORISED_TOKEN_PERMISSIONS;
import static uk.gov.companieshouse.orders.api.model.ProductType.CERTIFICATE_ADDITIONAL_COPY;
import static uk.gov.companieshouse.orders.api.model.ProductType.CERTIFICATE_SAME_DAY;
Expand Down Expand Up @@ -105,7 +105,7 @@ void addItemAcceptsRequestWithSignedInUser() {
.header(ERIC_IDENTITY_TYPE_HEADER_NAME, ERIC_IDENTITY_OAUTH2_TYPE_VALUE)
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
.header(ERIC_AUTHORISED_TOKEN_PERMISSIONS, String.format(TOKEN_PERMISSION_VALUE, Permission.Value.CREATE))
.body(fromObject(basketRequestDTO))
.body(fromValue(basketRequestDTO))
.exchange()
.expectStatus().isOk();
}
Expand All @@ -123,7 +123,7 @@ void addItemRejectsRequestWithoutAnyAuthenticatedClient() {
.contentType(MediaType.APPLICATION_JSON)
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
.header(ERIC_AUTHORISED_TOKEN_PERMISSIONS, String.format(TOKEN_PERMISSION_VALUE, Permission.Value.CREATE))
.body(fromObject(basketRequestDTO))
.body(fromValue(basketRequestDTO))
.exchange()
.expectStatus().isUnauthorized();
}
Expand All @@ -143,7 +143,7 @@ void addItemRejectsRequestWithAuthenticatedApiOnly() {
.header(ERIC_IDENTITY_TYPE_HEADER_NAME, ERIC_IDENTITY_API_KEY_TYPE_VALUE)
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
.header(ERIC_AUTHORISED_TOKEN_PERMISSIONS, String.format(TOKEN_PERMISSION_VALUE, Permission.Value.CREATE))
.body(fromObject(basketRequestDTO))
.body(fromValue(basketRequestDTO))
.exchange()
.expectStatus().isUnauthorized();
}
Expand All @@ -162,7 +162,7 @@ void addItemInvalidTokenPermissions() {
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
.header(ERIC_AUTHORISED_TOKEN_PERMISSIONS, String.format(TOKEN_PERMISSION_VALUE, Permission.Value.READ))
.header(ApiSdkManager.getEricPassthroughTokenHeader(), ERIC_ACCESS_TOKEN)
.body(fromObject(basketRequestDTO))
.body(fromValue(basketRequestDTO))
.exchange()
.expectStatus().isUnauthorized();
}
Expand Down Expand Up @@ -290,7 +290,7 @@ void patchBasketAcceptsRequestWithSignedInUser() {
.header(ERIC_IDENTITY_TYPE_HEADER_NAME, ERIC_IDENTITY_OAUTH2_TYPE_VALUE)
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
.header(ERIC_AUTHORISED_TOKEN_PERMISSIONS, String.format(TOKEN_PERMISSION_VALUE, Permission.Value.UPDATE))
.body(fromObject(addDeliveryDetailsRequestDTO))
.body(fromValue(addDeliveryDetailsRequestDTO))
.exchange()
.expectStatus().isOk();
}
Expand All @@ -308,7 +308,7 @@ void patchBasketRejectsRequestWithoutAnyAuthenticatedClient() {
.contentType(MediaType.APPLICATION_JSON)
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
.header(ERIC_AUTHORISED_TOKEN_PERMISSIONS, String.format(TOKEN_PERMISSION_VALUE, Permission.Value.UPDATE))
.body(fromObject(basketRequestDTO))
.body(fromValue(basketRequestDTO))
.exchange()
.expectStatus().isUnauthorized();
}
Expand All @@ -328,7 +328,7 @@ void patchBasketRejectsRequestWithAuthenticatedApiOnly() {
.header(ERIC_IDENTITY_TYPE_HEADER_NAME, ERIC_IDENTITY_API_KEY_TYPE_VALUE)
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
.header(ERIC_AUTHORISED_TOKEN_PERMISSIONS, String.format(TOKEN_PERMISSION_VALUE, Permission.Value.UPDATE))
.body(fromObject(basketRequestDTO))
.body(fromValue(basketRequestDTO))
.exchange()
.expectStatus().isUnauthorized();
}
Expand All @@ -347,7 +347,7 @@ void patchBasketInvalidTokenPermissions() throws Exception {
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
.header(ERIC_AUTHORISED_TOKEN_PERMISSIONS, String.format(TOKEN_PERMISSION_VALUE, Permission.Value.READ))
.header(ApiSdkManager.getEricPassthroughTokenHeader(), ERIC_ACCESS_TOKEN)
.body(fromObject(basketRequestDTO))
.body(fromValue(basketRequestDTO))
.exchange()
.expectStatus().isUnauthorized();
}
Expand Down
Loading