Skip to content

Commit

Permalink
Updating spring dependencies
Browse files Browse the repository at this point in the history
Updating hateos dependencies
Updating to spring version 2.7.0
  • Loading branch information
Mme-adorsys committed Sep 6, 2023
1 parent 582127a commit e409181
Show file tree
Hide file tree
Showing 6 changed files with 44 additions and 32 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@
import org.springframework.context.annotation.Profile;
import org.springframework.context.annotation.PropertySource;
import org.springframework.core.env.Environment;
import org.springframework.data.mongodb.MongoDbFactory;
import org.springframework.data.mongodb.config.AbstractMongoClientConfiguration;
import org.springframework.data.mongodb.core.SimpleMongoClientDbFactory;
import org.springframework.data.mongodb.gridfs.GridFsTemplate;
import org.springframework.data.mongodb.repository.config.EnableMongoRepositories;
import org.springframework.lang.NonNull;

import java.util.Collections;
import java.util.Optional;

@AllArgsConstructor
Expand All @@ -38,7 +38,7 @@ public class MongoConfig extends AbstractMongoClientConfiguration {

@Bean
public GridFsTemplate gridFsTemplate() throws Exception {
return new GridFsTemplate(mongoDbFactory(), mappingMongoConverter());
return new GridFsTemplate(mongoDbFactory(), mappingMongoConverter(mongoDbFactory(), customConversions(), mongoMappingContext(customConversions())));
}

private MongoCredential createMongoCredential() {
Expand Down Expand Up @@ -97,12 +97,12 @@ public com.mongodb.MongoClient mongoClientOld() {
} else {
MongoCredential mongoCredential = createMongoCredential();

return new com.mongodb.MongoClient(serverAddress, mongoCredential, mongoClientOptions);
return new com.mongodb.MongoClient(serverAddress, Collections.singletonList(mongoCredential), mongoClientOptions);
}
}

@Override
public @NonNull MongoDbFactory mongoDbFactory() {
public @NonNull SimpleMongoClientDbFactory mongoDbFactory() {
return Optional.ofNullable(env.getProperty("mongo.databaseName"))
.map(databaseName -> new SimpleMongoClientDbFactory(mongoClient(), databaseName))
.orElseThrow(() -> new IllegalStateException("missing env property mongo.databaseName"));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
import org.springframework.hateoas.hal.Jackson2HalModule;
import org.springframework.hateoas.mediatype.hal.Jackson2HalModule;
import org.springframework.http.HttpRequest;
import org.springframework.http.MediaType;
import org.springframework.http.client.*;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ public OpenAPI openAPI() {
@Bean
public GroupedOpenApi multibankingApi() {
return GroupedOpenApi.builder()
.setGroup("multibanking")
.group("multibanking")
.packagesToScan("de.adorsys.multibanking.web")
.addOpenApiCustomiser(sortPathsAlphabetically())
.build();
Expand All @@ -60,7 +60,7 @@ public GroupedOpenApi multibankingApi() {
@Profile("smartanalytics-embedded")
public GroupedOpenApi smartanalyticsApi() {
return GroupedOpenApi.builder()
.setGroup("smartanalytics")
.group("smartanalytics")
.packagesToScan("de.adorsys.smartanalytics.web")
.addOpenApiCustomiser(sortPathsAlphabetically())
.build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Profile;
import org.springframework.core.ParameterizedTypeReference;
import org.springframework.hateoas.Resource;
import org.springframework.hateoas.EntityModel;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpMethod;
import org.springframework.http.HttpStatus;
Expand Down Expand Up @@ -46,11 +46,11 @@ public ConfigStatus getAnalyticsConfigStatus() {
}

private AnalyticsResult analyzeBookingsRemote(AnalyticsRequest analyticsRequest) {
ResponseEntity<Resource<AnalyticsResult>> responseEntity = smartanalyticsRestTemplate
ResponseEntity<EntityModel<AnalyticsResult>> responseEntity = smartanalyticsRestTemplate
.exchange(
"/api/v1/analytics", HttpMethod.PUT, new HttpEntity<Object>(analyticsRequest),
new ParameterizedTypeReference<Resource<AnalyticsResult>>() {
}, Collections.emptyMap());
new ParameterizedTypeReference<>() {
}, Collections.emptyMap());

if (responseEntity.getStatusCode() == HttpStatus.OK) {
return responseEntity.getBody().getContent();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.Data;
import lombok.RequiredArgsConstructor;
import org.springframework.hateoas.Resource;
import org.springframework.hateoas.EntityModel;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
Expand All @@ -26,8 +26,9 @@

import java.security.Principal;

import static org.springframework.hateoas.mvc.ControllerLinkBuilder.linkTo;
import static org.springframework.hateoas.mvc.ControllerLinkBuilder.methodOn;
import static org.springframework.hateoas.server.mvc.WebMvcLinkBuilder.linkTo;
import static org.springframework.hateoas.server.mvc.WebMvcLinkBuilder.methodOn;


@Timed("payment")
@Tag(name = "Payment")
Expand All @@ -47,8 +48,8 @@ public class PaymentController {
@Operation(description = "Read payment", security = {
@SecurityRequirement(name = "multibanking_auth", scopes = "openid")})
@GetMapping("/{paymentId}")
public Resource<SinglePaymentEntity> getPayment(@PathVariable String accessId, @PathVariable String accountId,
@PathVariable String paymentId) {
public EntityModel<SinglePaymentEntity> getPayment(@PathVariable String accessId, @PathVariable String accountId,
@PathVariable String paymentId) {
SinglePaymentEntity paymentEntity = paymentRepository.findByUserIdAndId(principal.getName(), paymentId)
.orElseThrow(() -> new ResourceNotFoundException(SinglePaymentEntity.class, paymentId));

Expand Down Expand Up @@ -96,9 +97,9 @@ public HttpEntity<Void> submitPayment(@PathVariable String accessId, @PathVariab
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}

private Resource<SinglePaymentEntity> mapToResource(@PathVariable String accessId, @PathVariable String accountId,
private EntityModel<SinglePaymentEntity> mapToResource(@PathVariable String accessId, @PathVariable String accountId,
SinglePaymentEntity paymentEntity) {
return new Resource<>(paymentEntity,
return EntityModel.of(paymentEntity,
linkTo(methodOn(PaymentController.class).getPayment(accessId, accountId, paymentEntity.getId())).withSelfRel());
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,30 +1,31 @@
package de.adorsys.multibanking.conf;

import com.mongodb.MongoClient;
import com.mongodb.ServerAddress;
import com.mongodb.ConnectionString;
import com.mongodb.MongoClientSettings;
import com.mongodb.MongoDriverInformation;
import com.mongodb.client.MongoClient;
import com.mongodb.client.internal.MongoClientImpl;
import com.mongodb.internal.build.MongoDriverVersion;
import de.adorsys.smartanalytics.config.EnableSmartanalyticsMongoPersistence;
import de.adorsys.sts.persistence.mongo.config.MongoConfiguration;
import de.bwaldvogel.mongo.MongoServer;
import de.bwaldvogel.mongo.backend.memory.MemoryBackend;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
import org.springframework.data.mongodb.MongoDbFactory;
import org.springframework.data.mongodb.config.AbstractMongoConfiguration;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.SimpleMongoDbFactory;
import org.springframework.data.mongodb.core.SimpleMongoClientDbFactory;
import org.springframework.data.mongodb.core.convert.MappingMongoConverter;
import org.springframework.data.mongodb.repository.config.EnableMongoRepositories;

import static java.lang.String.format;
import static java.lang.System.getProperty;

@Configuration
@EnableMongoRepositories(basePackages = "de.adorsys.multibanking.mongo.repository")
@EnableSmartanalyticsMongoPersistence
@Profile({"fongo"})
public class FongoConfig extends AbstractMongoConfiguration {

@Override
protected String getDatabaseName() {
return "multibanking";
}
public class FongoConfig extends MongoConfiguration {

@Bean
public MongoTemplate mongoTemplate(MongoClient mongoClient) {
Expand All @@ -34,8 +35,8 @@ public MongoTemplate mongoTemplate(MongoClient mongoClient) {
}

@Bean
public MongoDbFactory mongoDbFactory(MongoClient mongoClient) {
return new SimpleMongoDbFactory(mongoClient, "test");
public SimpleMongoClientDbFactory mongoDbFactory(MongoClient mongoClient) {
return new SimpleMongoClientDbFactory(mongoClient, "test");
}

@Bean(destroyMethod = "shutdown")
Expand All @@ -47,6 +48,16 @@ public MongoServer mongoServer() {

@Bean(destroyMethod = "close")
public MongoClient mongoClient() {
return new MongoClient(new ServerAddress(mongoServer().getLocalAddress()));

MongoClientSettings settings = MongoClientSettings.builder()
.applyConnectionString(new ConnectionString(mongoServer().getLocalAddress().toString()))
.build();

MongoDriverInformation driverInformation = MongoDriverInformation.builder().driverName(MongoDriverVersion.NAME)
.driverVersion(MongoDriverVersion.VERSION)
.driverPlatform(format("Java/%s/%s", getProperty("java.vendor", "unknown-vendor"),
getProperty("java.runtime.version", "unknown-version"))).build();

return new MongoClientImpl(settings, driverInformation);
}
}

0 comments on commit e409181

Please sign in to comment.