audit test WIP
This commit is contained in:
parent
7211c02d16
commit
3212648194
@ -8,6 +8,7 @@ import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@Data
|
||||
@ -15,7 +16,7 @@ import java.util.Map;
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Entity
|
||||
@Table(name="audit")
|
||||
@Table(name = "audit")
|
||||
public class AuditModel {
|
||||
|
||||
@Id
|
||||
@ -34,8 +35,9 @@ public class AuditModel {
|
||||
@Column
|
||||
private String message;
|
||||
|
||||
@Basic(fetch = FetchType.EAGER)
|
||||
@Column(columnDefinition = "text")
|
||||
@Convert(converter = JSONConverter.class)
|
||||
@Column(columnDefinition = "json")
|
||||
private Map<String, Object> details;
|
||||
private Map<String, Object> details = new HashMap<>();
|
||||
|
||||
}
|
||||
|
||||
@ -1,10 +1,16 @@
|
||||
package com.iqser.red.service.persistence.service.v1.api.model.data.audit;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class AuditSearchRequest {
|
||||
|
||||
private String category;
|
||||
|
||||
@ -1,8 +1,13 @@
|
||||
package com.iqser.red.service.persistence.service.v1.api.model.data.audit;
|
||||
|
||||
public interface CategoryModel {
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
String getCategory();
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public class CategoryModel {
|
||||
|
||||
private final String category;
|
||||
private final long recordCount;
|
||||
|
||||
long getRecordCount();
|
||||
}
|
||||
|
||||
@ -55,6 +55,6 @@ public class DossierTemplate {
|
||||
@OneToMany
|
||||
private List<Type> dossierTypes = new ArrayList<>();
|
||||
|
||||
@ManyToMany
|
||||
@OneToMany
|
||||
private List<Dossier> dossiers = new ArrayList<>();
|
||||
}
|
||||
|
||||
@ -1,12 +1,8 @@
|
||||
package com.iqser.red.service.persistence.service.v1.api.model.data.notification;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.utils.JSONConverter;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.hibernate.annotations.TypeDef;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.time.OffsetDateTime;
|
||||
@ -47,7 +43,8 @@ public class Notification {
|
||||
@Column
|
||||
private String notificationDetails;
|
||||
|
||||
@Convert(converter = JSONConverter.class)
|
||||
@Basic(fetch = FetchType.EAGER)
|
||||
@Column(columnDefinition = "json")
|
||||
@Convert(converter = JSONConverter.class)
|
||||
private Map<String, Object> target = new HashMap<>();
|
||||
}
|
||||
|
||||
@ -1,13 +1,15 @@
|
||||
package com.iqser.red.service.persistence.service.v1.api.utils;
|
||||
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import lombok.SneakyThrows;
|
||||
|
||||
import javax.persistence.AttributeConverter;
|
||||
import javax.persistence.Converter;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@Converter(autoApply = true)
|
||||
@Converter
|
||||
public class JSONConverter implements AttributeConverter<Map<String, Object>, String> {
|
||||
|
||||
private final ObjectMapper objectMapper = new ObjectMapper();
|
||||
@ -22,6 +24,9 @@ public class JSONConverter implements AttributeConverter<Map<String, Object>, St
|
||||
@SneakyThrows
|
||||
@Override
|
||||
public Map<String, Object> convertToEntityAttribute(String data) {
|
||||
return objectMapper.readValue(data, Map.class);
|
||||
TypeReference<HashMap<String, Object>> typeRef = new TypeReference<>() {
|
||||
};
|
||||
return objectMapper.readValue(data, typeRef);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -10,6 +10,9 @@ import com.iqser.red.service.persistence.service.v1.api.model.data.download.Down
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.notification.Notification;
|
||||
import org.springframework.boot.autoconfigure.domain.EntityScan;
|
||||
import org.springframework.cloud.openfeign.EnableFeignClients;
|
||||
import org.springframework.cloud.openfeign.support.PageJacksonModule;
|
||||
import org.springframework.cloud.openfeign.support.SortJacksonModule;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
|
||||
@ -20,4 +23,15 @@ import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
|
||||
@EnableJpaRepositories(basePackageClasses = ColorsRepository.class)
|
||||
@EnableFeignClients(basePackageClasses = {PDFTronRedactionClient.class})
|
||||
public class PersistenceServiceProcessorConfiguration {
|
||||
|
||||
@Bean
|
||||
public PageJacksonModule pageJacksonModule() {
|
||||
return new PageJacksonModule();
|
||||
}
|
||||
|
||||
@Bean
|
||||
public SortJacksonModule sortJacksonModule() {
|
||||
return new SortJacksonModule();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -9,6 +9,7 @@ import lombok.RequiredArgsConstructor;
|
||||
import lombok.SneakyThrows;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.data.domain.Example;
|
||||
import org.springframework.data.domain.ExampleMatcher;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -52,7 +53,8 @@ public class AuditPersistenceService {
|
||||
example.setUserId(auditRequest.getUserId());
|
||||
example.setObjectId(auditRequest.getObjectId());
|
||||
|
||||
var result = auditRepository.findAll(Example.of(example), PageRequest.of(auditRequest.getPage(), auditRequest.getPageSize()));
|
||||
var result = auditRepository.findAll(Example.of(example, ExampleMatcher.matchingAny().withIgnorePaths("recordId")),
|
||||
PageRequest.of(auditRequest.getPage(), auditRequest.getPageSize()));
|
||||
|
||||
// after search, insert a record logging the search
|
||||
this.insertRecord(AuditRequest.builder()
|
||||
|
||||
@ -11,9 +11,7 @@ import java.util.List;
|
||||
|
||||
public interface AuditRepository extends JpaRepository<AuditModel,Long> {
|
||||
|
||||
@Query("SELECT a.category, count(a) as recordCount FROM AuditModel a GROUP BY a.category")
|
||||
@Query("SELECT new com.iqser.red.service.persistence.service.v1.api.model.data.audit.CategoryModel(a.category, count(a)) FROM AuditModel a GROUP BY a.category")
|
||||
List<CategoryModel> findCategories();
|
||||
|
||||
|
||||
Page<AuditModel> findAllByObjectId(double price, Pageable pageable);
|
||||
}
|
||||
|
||||
@ -10,7 +10,7 @@ public interface EntryRepository extends JpaRepository<DictionaryEntry, Long> {
|
||||
|
||||
void deleteAllByTypeIdAndVersionAndValueIn(String typeId, long version, List<String> values);
|
||||
|
||||
@Query("update DictionaryEntry e set e.version = :version where e.type.id =:typeId and e.value in :values ")
|
||||
@Query("update DictionaryEntry e set e.version = :version where e.type.id =:typeId and e.value in :values")
|
||||
void updateVersionWhereTypeIdAndValueIn(long version, String typeId, List<String> values);
|
||||
|
||||
List<DictionaryEntry> findByTypeId(String typeId);
|
||||
|
||||
@ -87,11 +87,6 @@
|
||||
<groupId>com.iqser.red.commons</groupId>
|
||||
<artifactId>spring-commons</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.h2database</groupId>
|
||||
<artifactId>h2</artifactId>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<!-- https://mvnrepository.com/artifact/org.postgresql/postgresql -->
|
||||
<dependency>
|
||||
<groupId>org.postgresql</groupId>
|
||||
@ -157,22 +152,10 @@
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.iqser.red.commons</groupId>
|
||||
<artifactId>cassandra-commons</artifactId>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<artifactId>gremlin-driver</artifactId>
|
||||
<groupId>org.apache.tinkerpop</groupId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
<scope>test</scope>
|
||||
<type>test-jar</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.testcontainers</groupId>
|
||||
<artifactId>cassandra</artifactId>
|
||||
<version>1.15.0</version>
|
||||
<artifactId>postgresql</artifactId>
|
||||
<version>1.15.3</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
package com.iqser.red.service.file.management.v1.server;
|
||||
package com.iqser.red.service.peristence.v1.server;
|
||||
|
||||
import com.iqser.red.commons.spring.DefaultWebMvcConfiguration;
|
||||
import com.iqser.red.service.file.management.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.file.management.v1.server.configuration.CleanupDownloadSchedulerConfiguration;
|
||||
import com.iqser.red.service.file.management.v1.server.configuration.MessagingConfiguration;
|
||||
import com.iqser.red.service.file.management.v1.server.settings.FileManagementServiceSettings;
|
||||
import com.iqser.red.service.peristence.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.peristence.v1.server.configuration.CleanupDownloadSchedulerConfiguration;
|
||||
import com.iqser.red.service.peristence.v1.server.configuration.MessagingConfiguration;
|
||||
import com.iqser.red.service.peristence.v1.server.settings.FileManagementServiceSettings;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.PersistenceServiceProcessorConfiguration;
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfiguration;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server;
|
||||
package com.iqser.red.service.peristence.v1.server;
|
||||
|
||||
import lombok.experimental.UtilityClass;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server;
|
||||
package com.iqser.red.service.peristence.v1.server;
|
||||
|
||||
import lombok.experimental.UtilityClass;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.client;
|
||||
package com.iqser.red.service.peristence.v1.server.client;
|
||||
|
||||
import com.iqser.red.service.redaction.v1.resources.RedactionResource;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.client;
|
||||
package com.iqser.red.service.peristence.v1.server.client;
|
||||
|
||||
import com.iqser.red.service.search.v1.resources.SearchResource;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.configuration;
|
||||
package com.iqser.red.service.peristence.v1.server.configuration;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.configuration;
|
||||
package com.iqser.red.service.peristence.v1.server.configuration;
|
||||
|
||||
import org.springframework.amqp.core.Queue;
|
||||
import org.springframework.amqp.core.QueueBuilder;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.AuditPersistenceService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.audit.AuditModel;
|
||||
@ -1,7 +1,7 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.commons.spring.ErrorMessage;
|
||||
import com.iqser.red.service.file.management.v1.server.exception.InvalidRulesException;
|
||||
import com.iqser.red.service.peristence.v1.server.exception.InvalidRulesException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.ConflictException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException;
|
||||
@ -1,7 +1,7 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.TextNormalizationUtilities;
|
||||
import com.iqser.red.service.file.management.v1.server.validation.DictionaryValidator;
|
||||
import com.iqser.red.service.peristence.v1.server.TextNormalizationUtilities;
|
||||
import com.iqser.red.service.peristence.v1.server.validation.DictionaryValidator;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.ConflictException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.ColorsService;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.DigitalSignatureUpdateModel;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.configuration.DigitalSignature;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierAttributeConfigPersistenceService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.DossierAttributeConfig;
|
||||
@ -1,6 +1,6 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.ConflictException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierAttributeConfigPersistenceService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierAttributePersistenceService;
|
||||
@ -1,8 +1,8 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileStatusService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileStatusService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.DossierNotFoundException;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.CreateOrUpdateDossierRequest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.Dossier;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierTemplatePersistenceService;
|
||||
@ -1,9 +1,10 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.iqser.red.service.file.management.v1.server.model.DownloadJob;
|
||||
import com.iqser.red.service.file.management.v1.server.utils.StorageIdUtils;
|
||||
import com.iqser.red.service.peristence.v1.server.model.DownloadJob;
|
||||
import com.iqser.red.service.peristence.v1.server.utils.StorageIdUtils;
|
||||
import com.iqser.red.service.peristence.v1.server.configuration.MessagingConfiguration;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierPersistenceService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DownloadStatusPersistenceService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.FileStatusPersistenceService;
|
||||
@ -22,8 +23,6 @@ import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.iqser.red.service.file.management.v1.server.configuration.MessagingConfiguration.DOWNLOAD_QUEUE;
|
||||
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class DownloadController implements DownloadResource {
|
||||
@ -77,7 +76,7 @@ public class DownloadController implements DownloadResource {
|
||||
private void addToDownloadQueue(DownloadJob downloadJob, int priority) {
|
||||
|
||||
try {
|
||||
rabbitTemplate.convertAndSend(DOWNLOAD_QUEUE, objectMapper.writeValueAsString(downloadJob), message -> {
|
||||
rabbitTemplate.convertAndSend(MessagingConfiguration.DOWNLOAD_QUEUE, objectMapper.writeValueAsString(downloadJob), message -> {
|
||||
message.getMessageProperties().setPriority(priority);
|
||||
return message;
|
||||
});
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.FileAttributeConfigPersistenceService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.configuration.FileAttributesGeneralConfiguration;
|
||||
@ -1,8 +1,8 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.iqser.red.service.file.management.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileStatusService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileStatusService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.FileAttributeConfigPersistenceService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.FileStatusPersistenceService;
|
||||
@ -1,8 +1,8 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.ExcludeFromAnalysisService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileStatusService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.ExcludeFromAnalysisService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileStatusService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.JSONPrimitive;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.File;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.FileStatus;
|
||||
@ -1,7 +1,7 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.FileStatusProcessingUpdateResource;
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileStatusProcessingUpdateService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileStatusProcessingUpdateService;
|
||||
import com.iqser.red.service.redaction.v1.model.AnalyzeResult;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.LegalBasisMappingRepository;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.configuration.LegalBasis;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
@ -7,7 +7,7 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.LicenseReport;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.LicenseReportRequest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.LicenseReportResource;
|
||||
import com.iqser.red.service.file.management.v1.server.service.LicenseReportService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.LicenseReportService;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.service.ManualRedactionService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.ManualRedactionService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.*;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.annotations.*;
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.ManualRedactionResource;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.NotificationPersistenceService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.audit.AddNotificationRequest;
|
||||
@ -1,8 +1,8 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.google.common.collect.Sets;
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileStatusService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.IndexingService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileStatusService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.IndexingService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.ConflictException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierPersistenceService;
|
||||
@ -1,11 +1,11 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.RedactionLogResource;
|
||||
import com.iqser.red.service.file.management.v1.server.service.RedactionLogService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.RedactionLogService;
|
||||
import com.iqser.red.service.redaction.v1.model.RedactionLog;
|
||||
import com.iqser.red.service.redaction.v1.model.SectionGrid;
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.utils.StorageIdUtils;
|
||||
import com.iqser.red.service.peristence.v1.server.utils.StorageIdUtils;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.ConflictException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.ReportTemplatePersistenceService;
|
||||
@ -1,7 +1,7 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.file.management.v1.server.exception.InvalidRulesException;
|
||||
import com.iqser.red.service.peristence.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.peristence.v1.server.exception.InvalidRulesException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.RulesPersistenceService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.JSONPrimitive;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.configuration.SMTPConfiguration;
|
||||
@ -1,10 +1,10 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.file.management.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileManagementStorageService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileStatusService;
|
||||
import com.iqser.red.service.peristence.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.peristence.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileManagementStorageService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileStatusService;
|
||||
import com.iqser.red.service.pdftron.redaction.v1.api.model.PdfTronFlattenRequest;
|
||||
import com.iqser.red.service.pdftron.redaction.v1.api.model.PdfTronFlattenResponse;
|
||||
import com.iqser.red.service.pdftron.redaction.v1.api.model.PdfTronRedactionRequest;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.annotations.ViewedPage;
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.ViewedPagesResource;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.controller;
|
||||
package com.iqser.red.service.peristence.v1.server.controller;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.configuration.Watermark;
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.WatermarkResource;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.exception;
|
||||
package com.iqser.red.service.peristence.v1.server.exception;
|
||||
|
||||
public class InvalidRulesException extends RuntimeException {
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.exception;
|
||||
package com.iqser.red.service.peristence.v1.server.exception;
|
||||
|
||||
public class JSONParseException extends RuntimeException {
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.model;
|
||||
package com.iqser.red.service.peristence.v1.server.model;
|
||||
|
||||
import lombok.AccessLevel;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -1,7 +1,7 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.client.SearchClient;
|
||||
import com.iqser.red.service.file.management.v1.server.controller.ReanalysisController;
|
||||
import com.iqser.red.service.peristence.v1.server.client.SearchClient;
|
||||
import com.iqser.red.service.peristence.v1.server.controller.ReanalysisController;
|
||||
import com.iqser.red.service.search.v1.model.MatchedSection;
|
||||
import com.iqser.red.service.search.v1.model.SearchRequest;
|
||||
import lombok.Builder;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.ConflictException;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.google.common.collect.Sets;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
|
||||
@ -1,7 +1,7 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.iqser.red.service.file.management.v1.server.utils.StorageIdUtils;
|
||||
import com.iqser.red.service.peristence.v1.server.utils.StorageIdUtils;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.FileType;
|
||||
import com.iqser.red.service.redaction.v1.model.RedactionLog;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.google.common.hash.HashFunction;
|
||||
import com.google.common.hash.Hashing;
|
||||
@ -17,7 +17,6 @@ import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.nio.charset.Charset;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.Arrays;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierPersistenceService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.FileStatus;
|
||||
@ -1,10 +1,11 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.google.common.collect.Sets;
|
||||
import com.iqser.red.service.file.management.v1.server.controller.RulesController;
|
||||
import com.iqser.red.service.peristence.v1.server.controller.RulesController;
|
||||
import com.iqser.red.service.pdftron.redaction.v1.api.model.OcrRequestMessage;
|
||||
import com.iqser.red.service.peristence.v1.server.configuration.MessagingConfiguration;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.UserNotFoundException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierPersistenceService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.FileStatusPersistenceService;
|
||||
@ -23,9 +24,6 @@ import java.time.OffsetDateTime;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import static com.iqser.red.service.file.management.v1.server.configuration.MessagingConfiguration.OCR_QUEUE;
|
||||
import static com.iqser.red.service.file.management.v1.server.configuration.MessagingConfiguration.REDACTION_QUEUE;
|
||||
|
||||
@Slf4j
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@ -237,7 +235,7 @@ public class FileStatusService {
|
||||
analyseRequest.setExcludedPages(fileStatus.getExcludedPages());
|
||||
|
||||
try {
|
||||
rabbitTemplate.convertAndSend(REDACTION_QUEUE, objectMapper.writeValueAsString(analyseRequest), message -> {
|
||||
rabbitTemplate.convertAndSend(MessagingConfiguration.REDACTION_QUEUE, objectMapper.writeValueAsString(analyseRequest), message -> {
|
||||
message.getMessageProperties().setPriority(priority);
|
||||
return message;
|
||||
});
|
||||
@ -250,7 +248,7 @@ public class FileStatusService {
|
||||
private void addToOcrQueue(String dossierId, String fileId, int priority) {
|
||||
|
||||
try {
|
||||
rabbitTemplate.convertAndSend(OCR_QUEUE, objectMapper.writeValueAsString(new OcrRequestMessage(dossierId, fileId)), message -> {
|
||||
rabbitTemplate.convertAndSend(MessagingConfiguration.OCR_QUEUE, objectMapper.writeValueAsString(new OcrRequestMessage(dossierId, fileId)), message -> {
|
||||
message.getMessageProperties().setPriority(priority);
|
||||
return message;
|
||||
});
|
||||
@ -1,7 +1,8 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.iqser.red.service.peristence.v1.server.configuration.MessagingConfiguration;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.Dossier;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.DossierStatus;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.File;
|
||||
@ -17,9 +18,6 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import static com.iqser.red.service.file.management.v1.server.configuration.MessagingConfiguration.DELETE_FROM_INDEX_QUEUE;
|
||||
import static com.iqser.red.service.file.management.v1.server.configuration.MessagingConfiguration.INDEXING_QUEUE;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class IndexingService {
|
||||
@ -65,7 +63,7 @@ public class IndexingService {
|
||||
public void addToIndexingQueue(String dossierTemplateId, String dossierId, String fileId, int priority) {
|
||||
|
||||
try {
|
||||
rabbitTemplate.convertAndSend(INDEXING_QUEUE, objectMapper.writeValueAsString(IndexMessage.builder()
|
||||
rabbitTemplate.convertAndSend(MessagingConfiguration.INDEXING_QUEUE, objectMapper.writeValueAsString(IndexMessage.builder()
|
||||
.dossierTemplateId(dossierTemplateId)
|
||||
.dossierId(dossierId)
|
||||
.fileId(fileId)
|
||||
@ -82,7 +80,7 @@ public class IndexingService {
|
||||
public void addToDeleteFromIndexQueue(String dossierId, String fileId, int priority) {
|
||||
|
||||
try {
|
||||
rabbitTemplate.convertAndSend(DELETE_FROM_INDEX_QUEUE, objectMapper.writeValueAsString(IndexMessage.builder()
|
||||
rabbitTemplate.convertAndSend(MessagingConfiguration.DELETE_FROM_INDEX_QUEUE, objectMapper.writeValueAsString(IndexMessage.builder()
|
||||
.dossierId(dossierId)
|
||||
.fileId(fileId)
|
||||
.build()), message -> {
|
||||
@ -1,11 +1,10 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import static java.util.stream.Collectors.toList;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.ManualRedactions;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.annotations.Comment;
|
||||
@ -1,8 +1,8 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.google.common.hash.HashFunction;
|
||||
import com.google.common.hash.Hashing;
|
||||
import com.iqser.red.service.file.management.v1.server.controller.DictionaryController;
|
||||
import com.iqser.red.service.peristence.v1.server.controller.DictionaryController;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.*;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.*;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.ManualRedactions;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.annotations.Comment;
|
||||
@ -1,9 +1,9 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service;
|
||||
package com.iqser.red.service.peristence.v1.server.service;
|
||||
|
||||
import com.iqser.red.service.peristence.v1.server.client.RedactionClient;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DossierPersistenceService;
|
||||
import com.iqser.red.service.file.management.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.redaction.v1.model.RedactionLog;
|
||||
import com.iqser.red.service.redaction.v1.model.RedactionRequest;
|
||||
import com.iqser.red.service.redaction.v1.model.SectionGrid;
|
||||
@ -1,10 +1,10 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service.download;
|
||||
package com.iqser.red.service.peristence.v1.server.service.download;
|
||||
|
||||
import com.iqser.red.service.peristence.v1.server.settings.FileManagementServiceSettings;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.download.DownloadStatus;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.DossierStatus;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DownloadStatusPersistenceService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.file.management.v1.server.settings.FileManagementServiceSettings;
|
||||
import com.iqser.red.service.peristence.v1.server.service.DossierService;
|
||||
import com.iqser.red.storage.commons.service.StorageService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -1,7 +1,8 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service.download;
|
||||
package com.iqser.red.service.peristence.v1.server.service.download;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.iqser.red.service.file.management.v1.server.model.DownloadJob;
|
||||
import com.iqser.red.service.peristence.v1.server.model.DownloadJob;
|
||||
import com.iqser.red.service.peristence.v1.server.configuration.MessagingConfiguration;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DownloadStatusPersistenceService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.download.DownloadStatus;
|
||||
import com.iqser.red.service.redaction.report.v1.api.model.ReportRequestMessage;
|
||||
@ -15,8 +16,6 @@ import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
import static com.iqser.red.service.file.management.v1.server.configuration.MessagingConfiguration.*;
|
||||
|
||||
@Slf4j
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@ -27,7 +26,7 @@ public class DownloadDLQMessageReceiver {
|
||||
private final RetryTemplate retryTemplate;
|
||||
|
||||
|
||||
@RabbitListener(queues = DOWNLOAD_DLQ)
|
||||
@RabbitListener(queues = MessagingConfiguration.DOWNLOAD_DLQ)
|
||||
public void handleDlqMessage(Message failedMessage) throws IOException {
|
||||
|
||||
DownloadJob downloadJob = objectMapper.readValue(failedMessage.getBody(), DownloadJob.class);
|
||||
@ -37,7 +36,7 @@ public class DownloadDLQMessageReceiver {
|
||||
}
|
||||
|
||||
|
||||
@RabbitListener(queues = REPORT_DLQ)
|
||||
@RabbitListener(queues = MessagingConfiguration.REPORT_DLQ)
|
||||
public void handleReportDlqMessage(Message failedMessage) throws IOException {
|
||||
|
||||
ReportRequestMessage reportRequestMessage = objectMapper.readValue(failedMessage.getBody(), ReportRequestMessage.class);
|
||||
@ -47,7 +46,7 @@ public class DownloadDLQMessageReceiver {
|
||||
}
|
||||
|
||||
|
||||
@RabbitListener(queues = REPORT_RESULT_DLQ)
|
||||
@RabbitListener(queues = MessagingConfiguration.REPORT_RESULT_DLQ)
|
||||
public void handleReportResponseDlqMessage(Message failedMessage) throws IOException {
|
||||
|
||||
ReportResultMessage reportResultMessage = objectMapper.readValue(failedMessage.getBody(), ReportResultMessage.class);
|
||||
@ -1,9 +1,10 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service.download;
|
||||
package com.iqser.red.service.peristence.v1.server.service.download;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.iqser.red.service.file.management.v1.server.model.DownloadJob;
|
||||
import com.iqser.red.service.file.management.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.peristence.v1.server.model.DownloadJob;
|
||||
import com.iqser.red.service.peristence.v1.server.service.DossierService;
|
||||
import com.iqser.red.service.peristence.v1.server.configuration.MessagingConfiguration;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.DownloadStatusPersistenceService;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.File;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.ReportTemplate;
|
||||
@ -20,13 +21,10 @@ import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.iqser.red.service.file.management.v1.server.configuration.MessagingConfiguration.DOWNLOAD_QUEUE;
|
||||
import static com.iqser.red.service.file.management.v1.server.configuration.MessagingConfiguration.REPORT_QUEUE;
|
||||
|
||||
@Slf4j
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@RabbitListener(queues = DOWNLOAD_QUEUE)
|
||||
@RabbitListener(queues = MessagingConfiguration.DOWNLOAD_QUEUE)
|
||||
public class DownloadMessageReceiver {
|
||||
|
||||
private final ObjectMapper objectMapper;
|
||||
@ -67,7 +65,7 @@ public class DownloadMessageReceiver {
|
||||
private void addReportQueue(ReportRequestMessage reportRequestMessage, int priority) {
|
||||
|
||||
try {
|
||||
rabbitTemplate.convertAndSend(REPORT_QUEUE, objectMapper.writeValueAsString(reportRequestMessage), message -> {
|
||||
rabbitTemplate.convertAndSend(MessagingConfiguration.REPORT_QUEUE, objectMapper.writeValueAsString(reportRequestMessage), message -> {
|
||||
message.getMessageProperties().setPriority(priority);
|
||||
return message;
|
||||
});
|
||||
@ -1,9 +1,9 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service.download;
|
||||
package com.iqser.red.service.peristence.v1.server.service.download;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileManagementStorageService;
|
||||
import com.iqser.red.service.file.management.v1.server.service.RedactionLogService;
|
||||
import com.iqser.red.service.file.management.v1.server.utils.FileSystemBackedArchiver;
|
||||
import com.iqser.red.service.peristence.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileManagementStorageService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.RedactionLogService;
|
||||
import com.iqser.red.service.peristence.v1.server.utils.FileSystemBackedArchiver;
|
||||
import com.iqser.red.service.pdftron.redaction.v1.api.model.PdfTronRedactionRequest;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.client.PDFTronRedactionClient;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.NotFoundException;
|
||||
@ -1,9 +1,9 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service.download;
|
||||
package com.iqser.red.service.peristence.v1.server.service.download;
|
||||
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.service.FileManagementStorageService;
|
||||
import com.iqser.red.service.peristence.v1.server.service.FileManagementStorageService;
|
||||
import com.iqser.red.service.redaction.report.v1.api.model.ReportResultMessage;
|
||||
import com.iqser.red.service.redaction.report.v1.api.model.StoredFileInformation;
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
package com.iqser.red.service.file.management.v1.server.service.download;
|
||||
|
||||
import static com.iqser.red.service.file.management.v1.server.configuration.MessagingConfiguration.REPORT_RESULT_QUEUE;
|
||||
package com.iqser.red.service.peristence.v1.server.service.download;
|
||||
|
||||
import com.iqser.red.service.peristence.v1.server.configuration.MessagingConfiguration;
|
||||
import org.springframework.amqp.rabbit.annotation.RabbitHandler;
|
||||
import org.springframework.amqp.rabbit.annotation.RabbitListener;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -16,7 +15,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
@Slf4j
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@RabbitListener(queues = REPORT_RESULT_QUEUE)
|
||||
@RabbitListener(queues = MessagingConfiguration.REPORT_RESULT_QUEUE)
|
||||
public class DownloadReportMessageReceiver {
|
||||
|
||||
private final ObjectMapper objectMapper;
|
||||
@ -33,4 +32,4 @@ public class DownloadReportMessageReceiver {
|
||||
log.info("Successfully prepared download {}", reportResultMessage.getDownloadId());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.settings;
|
||||
package com.iqser.red.service.peristence.v1.server.settings;
|
||||
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.utils;
|
||||
package com.iqser.red.service.peristence.v1.server.utils;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.utils;
|
||||
package com.iqser.red.service.peristence.v1.server.utils;
|
||||
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.FileType;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.validation;
|
||||
package com.iqser.red.service.peristence.v1.server.validation;
|
||||
|
||||
import lombok.experimental.UtilityClass;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@ -13,19 +13,15 @@ storage:
|
||||
key: minioadmin
|
||||
secret: minioadmin
|
||||
|
||||
spring:
|
||||
datasource:
|
||||
jdbcUrl: jdbc:h2:mem:testdb
|
||||
driverClassName: org.h2.Driver
|
||||
username: sa
|
||||
password: password
|
||||
platform: org.hibernate.dialect.H2Dialect
|
||||
url: jdbc:postgresql://localhost:5432/redaction
|
||||
driverClassName: org.postgresql.Driver
|
||||
username: redaction
|
||||
password: redaction
|
||||
platform: org.hibernate.dialect.PostgreSQL95Dialect
|
||||
jpa:
|
||||
database-platform: org.hibernate.dialect.H2Dialect
|
||||
database-platform: org.hibernate.dialect.PostgreSQL95Dialect
|
||||
hibernate:
|
||||
ddl-auto: update
|
||||
naming-strategy: org.hibernate.cfg.ImprovedNamingStrategy
|
||||
generate-ddl: true
|
||||
|
||||
|
||||
open-in-view: true
|
||||
|
||||
@ -14,7 +14,6 @@ spring:
|
||||
|
||||
datasource:
|
||||
url: jdbc:postgresql://${PSQL_HOST}:${PSQL_PORT}/${PSQL_DATABASE}
|
||||
jdbcUrl: jdbc:postgresql://${PSQL_HOST}:${PSQL_PORT}/${PSQL_DATABASE}
|
||||
driverClassName: org.postgresql.Driver
|
||||
username: ${PSQL_USERNAME}
|
||||
password: ${PSQL_PASSWORD}
|
||||
@ -65,3 +64,4 @@ storage:
|
||||
endpoint: 'http://localhost:9000'
|
||||
key: minioadmin
|
||||
secret: minioadmin
|
||||
|
||||
|
||||
@ -0,0 +1,8 @@
|
||||
package com.iqser.red.service.peristence.v1.server.integration.client;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.AuditResource;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
|
||||
@FeignClient(name = "AuditClient", url = "http://localhost:${server.port}")
|
||||
public interface AuditClient extends AuditResource {
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.client;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.client;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.DossierResource;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.client;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.client;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.DossierTemplateResource;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.client;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.client;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.StatusResource;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
@ -0,0 +1,9 @@
|
||||
package com.iqser.red.service.peristence.v1.server.integration.client;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.NotificationRepository;
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.NotificationResource;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
|
||||
@FeignClient(name = "NotificationClient", url = "http://localhost:${server.port}")
|
||||
public interface NotificationClient extends NotificationResource {
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.client;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.client;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.UploadResource;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.client;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.client;
|
||||
|
||||
import com.iqser.red.service.persistence.service.v1.api.resources.ViewedPagesResource;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
@ -1,16 +1,14 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.service;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.service;
|
||||
|
||||
import com.google.common.collect.Sets;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.DossierTemplateClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.DossierTemplateClient;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.CreateOrUpdateDossierTemplateRequest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.Dossier;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.DossierTemplate;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.DownloadFileType;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.List;
|
||||
|
||||
import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
|
||||
|
||||
@ -1,12 +1,9 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.service;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.service;
|
||||
|
||||
import com.google.common.collect.Sets;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.DossierClient;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.DossierTemplateClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.DossierClient;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.CreateOrUpdateDossierRequest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.CreateOrUpdateDossierTemplateRequest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.Dossier;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.DossierTemplate;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.DownloadFileType;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -1,13 +1,12 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.service;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.service;
|
||||
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.FileClient;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.UploadClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.FileClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.UploadClient;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.BinaryFileRequest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.JSONPrimitive;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.Dossier;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.File;
|
||||
import org.checkerframework.checker.units.qual.A;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@ -0,0 +1,44 @@
|
||||
package com.iqser.red.service.peristence.v1.server.integration.tests;
|
||||
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.AuditClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.AuditRepository;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.audit.AuditRequest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.audit.AuditSearchRequest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.audit.CategoryModel;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class AuditTest extends AbstractPersistenceServerServiceTest {
|
||||
|
||||
@Autowired
|
||||
private AuditClient auditClient;
|
||||
|
||||
@Autowired
|
||||
private AuditRepository auditRepository;
|
||||
|
||||
@Test
|
||||
public void testAudit() {
|
||||
|
||||
|
||||
assertThat(auditClient.getCategories()).isEmpty();
|
||||
|
||||
|
||||
auditClient.audit(AuditRequest.builder().category("c1").message("test").userId("1").objectId("1").details(Map.of("key", "value")).build());
|
||||
auditClient.audit(AuditRequest.builder().category("c1").message("test").userId("1").objectId("1").details(Map.of("key", "value")).build());
|
||||
auditClient.audit(AuditRequest.builder().category("c2").message("test").userId("1").objectId("1").details(Map.of("key", "value")).build());
|
||||
|
||||
|
||||
assertThat(auditClient.getCategories().size()).isEqualTo(2);
|
||||
assertThat(auditClient.getCategories().stream().filter(c -> c.getCategory().equals("c1")).findAny().map(CategoryModel::getRecordCount).get()).isEqualTo(2);
|
||||
assertThat(auditClient.getCategories().stream().filter(c -> c.getCategory().equals("c2")).findAny().map(CategoryModel::getRecordCount).get()).isEqualTo(1);
|
||||
|
||||
var result =auditClient.search(AuditSearchRequest.builder().category("c1").page(0).pageSize(10).build());
|
||||
assertThat(result.getTotalElements()).isEqualTo(2);
|
||||
|
||||
}
|
||||
}
|
||||
@ -1,8 +1,8 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.tests;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.tests;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.integration.utils.AbstractFileManagementServerServiceTest;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.DossierTemplateClient;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.service.DossierTemplateTesterAndProvider;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.DossierTemplateClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.service.DossierTemplateTesterAndProvider;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.CreateOrUpdateDossierTemplateRequest;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
@ -10,7 +10,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class DossierTemplateTest extends AbstractFileManagementServerServiceTest {
|
||||
public class DossierTemplateTest extends AbstractPersistenceServerServiceTest {
|
||||
|
||||
@Autowired
|
||||
private DossierTemplateTesterAndProvider dossierTemplateTesterAndProvider;
|
||||
@ -1,8 +1,8 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.tests;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.tests;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.integration.utils.AbstractFileManagementServerServiceTest;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.DossierClient;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.service.DossierTesterAndProvider;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.DossierClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.service.DossierTesterAndProvider;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.CreateOrUpdateDossierRequest;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
@ -10,7 +10,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class DossierTest extends AbstractFileManagementServerServiceTest {
|
||||
public class DossierTest extends AbstractPersistenceServerServiceTest {
|
||||
|
||||
@Autowired
|
||||
private DossierTesterAndProvider dossierTesterAndProvider;
|
||||
@ -1,26 +1,21 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.tests;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.tests;
|
||||
|
||||
|
||||
import com.amazonaws.services.s3.transfer.Upload;
|
||||
import com.google.common.collect.Sets;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.FileClient;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.UploadClient;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.service.DossierTesterAndProvider;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.service.FileTesterAndProvider;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.utils.AbstractFileManagementServerServiceTest;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.FileClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.UploadClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.service.DossierTesterAndProvider;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.service.FileTesterAndProvider;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.JSONPrimitive;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.File;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.dossier.FileStatus;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.assertj.core.api.Assertions.as;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
|
||||
public class FileTest extends AbstractFileManagementServerServiceTest {
|
||||
public class FileTest extends AbstractPersistenceServerServiceTest {
|
||||
|
||||
@Autowired
|
||||
private FileTesterAndProvider fileTesterAndProvider;
|
||||
@ -99,9 +94,11 @@ public class FileTest extends AbstractFileManagementServerServiceTest {
|
||||
fileClient.setStatusUnderReview(dossier.getId(), file.getId());
|
||||
uploadClient.deleteFile(dossier.getId(),file.getId());
|
||||
|
||||
|
||||
var softDeletedFiles = fileClient.getSoftDeletedDossierStatus(dossier.getId());
|
||||
assertThat(softDeletedFiles.size()).isEqualTo(1);
|
||||
|
||||
|
||||
var activeFiles = fileClient.getDossierStatus(dossier.getId());
|
||||
assertThat(activeFiles.size()).isEqualTo(0);
|
||||
|
||||
@ -0,0 +1,13 @@
|
||||
package com.iqser.red.service.peristence.v1.server.integration.tests;
|
||||
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.AuditClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.NotificationClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
|
||||
public class NotificationTest extends AbstractPersistenceServerServiceTest {
|
||||
|
||||
@Autowired
|
||||
private NotificationClient notificationClient;
|
||||
}
|
||||
@ -1,9 +1,9 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.tests;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.tests;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.ViewedPagesClient;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.service.DossierTesterAndProvider;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.service.FileTesterAndProvider;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.utils.AbstractFileManagementServerServiceTest;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.ViewedPagesClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.service.DossierTesterAndProvider;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.service.FileTesterAndProvider;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.model.data.annotations.ViewedPage;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@ -12,7 +12,7 @@ import java.util.List;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class ViewedPagesTest extends AbstractFileManagementServerServiceTest {
|
||||
public class ViewedPagesTest extends AbstractPersistenceServerServiceTest {
|
||||
|
||||
|
||||
@Autowired
|
||||
@ -1,20 +1,18 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.utils;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.utils;
|
||||
|
||||
import com.iqser.red.service.file.management.v1.server.Application;
|
||||
import com.iqser.red.service.file.management.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.file.management.v1.server.client.SearchClient;
|
||||
import com.iqser.red.service.file.management.v1.server.integration.client.FileClient;
|
||||
import com.iqser.red.service.pdftron.redaction.v1.api.model.PdfTronOptimizeRequest;
|
||||
import com.iqser.red.service.pdftron.redaction.v1.api.model.PdfTronOptimizeResponse;
|
||||
import com.iqser.red.service.peristence.v1.server.Application;
|
||||
import com.iqser.red.service.peristence.v1.server.client.RedactionClient;
|
||||
import com.iqser.red.service.peristence.v1.server.client.SearchClient;
|
||||
import com.iqser.red.service.peristence.v1.server.integration.client.FileClient;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.client.PDFTronRedactionClient;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.DossierRepository;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.DossierTemplateRepository;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.FileRepository;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.ViewedPagesRepository;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.persistence.repository.*;
|
||||
import com.iqser.red.storage.commons.StorageAutoConfiguration;
|
||||
import com.iqser.red.storage.commons.service.StorageService;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.ClassRule;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.Mockito;
|
||||
import org.springframework.amqp.rabbit.core.RabbitTemplate;
|
||||
@ -23,18 +21,24 @@ import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.boot.test.mock.mockito.MockBean;
|
||||
import org.springframework.boot.test.util.TestPropertyValues;
|
||||
import org.springframework.cloud.openfeign.EnableFeignClients;
|
||||
import org.springframework.context.ApplicationContextInitializer;
|
||||
import org.springframework.context.ConfigurableApplicationContext;
|
||||
import org.springframework.context.annotation.*;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.testcontainers.containers.PostgreSQLContainer;
|
||||
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
|
||||
@RunWith(SpringRunner.class)
|
||||
@EnableFeignClients(basePackageClasses = FileClient.class)
|
||||
@Import(AbstractFileManagementServerServiceTest.TestConfiguration.class)
|
||||
@Import(AbstractPersistenceServerServiceTest.TestConfiguration.class)
|
||||
@ContextConfiguration(initializers = {AbstractPersistenceServerServiceTest.Initializer.class})
|
||||
@SpringBootTest(classes = Application.class, webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
|
||||
public abstract class AbstractFileManagementServerServiceTest {
|
||||
public abstract class AbstractPersistenceServerServiceTest {
|
||||
|
||||
@Autowired
|
||||
private StorageService storageService;
|
||||
@ -51,6 +55,22 @@ public abstract class AbstractFileManagementServerServiceTest {
|
||||
@MockBean
|
||||
protected PDFTronRedactionClient pdfTronRedactionClient;
|
||||
|
||||
@ClassRule
|
||||
public static PostgreSQLContainer postgreSQLContainer = new PostgreSQLContainer("postgres:11.1")
|
||||
.withDatabaseName("integration-tests-db")
|
||||
.withUsername("sa")
|
||||
.withPassword("sa");
|
||||
|
||||
static class Initializer implements ApplicationContextInitializer<ConfigurableApplicationContext> {
|
||||
public void initialize(ConfigurableApplicationContext configurableApplicationContext) {
|
||||
TestPropertyValues.of(
|
||||
"spring.datasource.url=" + postgreSQLContainer.getJdbcUrl(),
|
||||
"spring.datasource.username=" + postgreSQLContainer.getUsername(),
|
||||
"spring.datasource.password=" + postgreSQLContainer.getPassword()
|
||||
).applyTo(configurableApplicationContext.getEnvironment());
|
||||
}
|
||||
}
|
||||
|
||||
@Before
|
||||
public void setupOptimize() {
|
||||
when(pdfTronRedactionClient.optimize(Mockito.any())).thenAnswer((args) ->
|
||||
@ -59,7 +79,7 @@ public abstract class AbstractFileManagementServerServiceTest {
|
||||
|
||||
@Configuration
|
||||
@EnableAutoConfiguration(exclude = {StorageAutoConfiguration.class, RabbitAutoConfiguration.class})
|
||||
@ComponentScan("com.iqser.red.service.file.management.v1.server")
|
||||
@ComponentScan("com.iqser.red.service.persistence")
|
||||
public static class TestConfiguration {
|
||||
|
||||
@Bean
|
||||
@ -88,13 +108,20 @@ public abstract class AbstractFileManagementServerServiceTest {
|
||||
@Autowired
|
||||
private ViewedPagesRepository viewedPagesRepository;
|
||||
|
||||
@Autowired
|
||||
private NotificationRepository notificationRepository;
|
||||
|
||||
@Autowired
|
||||
private AuditRepository auditRepository;
|
||||
|
||||
@After
|
||||
public void afterTests(){
|
||||
public void afterTests() {
|
||||
viewedPagesRepository.deleteAll();
|
||||
fileRepository.deleteAll();
|
||||
dossierRepository.deleteAll();
|
||||
dossierTemplateRepository.deleteAll();
|
||||
|
||||
notificationRepository.deleteAll();
|
||||
auditRepository.deleteAll();
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.integration.utils;
|
||||
package com.iqser.red.service.peristence.v1.server.integration.utils;
|
||||
|
||||
import com.iqser.red.storage.commons.exception.StorageObjectDoesNotExist;
|
||||
import com.iqser.red.storage.commons.service.StorageService;
|
||||
@ -1,4 +1,4 @@
|
||||
package com.iqser.red.service.file.management.v1.server.utils;
|
||||
package com.iqser.red.service.peristence.v1.server.utils;
|
||||
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -1,4 +1,16 @@
|
||||
spring:
|
||||
|
||||
datasource:
|
||||
driverClassName: org.postgresql.Driver
|
||||
platform: org.hibernate.dialect.PostgreSQL95Dialect
|
||||
jpa:
|
||||
database-platform: org.hibernate.dialect.PostgreSQL95Dialect
|
||||
hibernate:
|
||||
ddl-auto: update
|
||||
naming-strategy: org.hibernate.cfg.ImprovedNamingStrategy
|
||||
generate-ddl: true
|
||||
|
||||
|
||||
rabbitmq:
|
||||
host: ${RABBITMQ_HOST:localhost}
|
||||
port: ${RABBITMQ_PORT:5672}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user