Skip to content
Snippets Groups Projects
Commit 0ee1ff5e authored by OZGCloud's avatar OZGCloud
Browse files

Merge branch 'master' into OZG-2541

parents 5c7e17c6 96497eef
Branches
Tags
No related merge requests found
Showing
with 358 additions and 24271 deletions
...@@ -8,7 +8,7 @@ import { Observable } from "rxjs"; ...@@ -8,7 +8,7 @@ import { Observable } from "rxjs";
export class KommentarFormService extends AbstractFormService { export class KommentarFormService extends AbstractFormService {
static readonly TEXT = 'text'; static readonly TEXT = 'text';
static readonly FIELD_PATH_PREFIX = 'command.kommentar'; static readonly FIELD_PATH_PREFIX = 'command.body';
constructor(formBuilder: FormBuilder, private kommentarService: KommentarService) { constructor(formBuilder: FormBuilder, private kommentarService: KommentarService) {
super(formBuilder); super(formBuilder);
......
This diff is collapsed.
...@@ -85,6 +85,10 @@ ...@@ -85,6 +85,10 @@
<groupId>de.itvsh.ozg.pluto</groupId> <groupId>de.itvsh.ozg.pluto</groupId>
<artifactId>pluto-interface</artifactId> <artifactId>pluto-interface</artifactId>
</dependency> </dependency>
<dependency>
<groupId>de.itvsh.ozg.pluto</groupId>
<artifactId>pluto-utils</artifactId>
</dependency>
<!-- tools --> <!-- tools -->
<dependency> <dependency>
...@@ -133,6 +137,13 @@ ...@@ -133,6 +137,13 @@
<artifactId>spring-security-test</artifactId> <artifactId>spring-security-test</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency>
<groupId>de.itvsh.ozg.pluto</groupId>
<artifactId>pluto-utils</artifactId>
<type>test-jar</type>
<scope>test</scope>
<version>${pluto.version}</version>
</dependency>
<dependency> <dependency>
<groupId>com.thedeanda</groupId> <groupId>com.thedeanda</groupId>
......
...@@ -7,7 +7,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -7,7 +7,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import de.itvsh.goofy.common.callcontext.ContextService; import de.itvsh.goofy.common.callcontext.ContextService;
import de.itvsh.ozg.pluto.common.GrpcObjectMapper; import de.itvsh.kop.pluto.common.grpc.GrpcObjectMapper;
import de.itvsh.ozg.pluto.grpc.command.CommandServiceGrpc.CommandServiceBlockingStub; import de.itvsh.ozg.pluto.grpc.command.CommandServiceGrpc.CommandServiceBlockingStub;
import de.itvsh.ozg.pluto.grpc.command.GrpcCreateCommandRequest; import de.itvsh.ozg.pluto.grpc.command.GrpcCreateCommandRequest;
import de.itvsh.ozg.pluto.grpc.command.GrpcExistsPendingCommandsRequest; import de.itvsh.ozg.pluto.grpc.command.GrpcExistsPendingCommandsRequest;
......
...@@ -136,8 +136,8 @@ public class ExceptionController { ...@@ -136,8 +136,8 @@ public class ExceptionController {
} }
private Optional<DynamicViolationParameter> getDynamicPayload(ConstraintViolation<?> violation) { private Optional<DynamicViolationParameter> getDynamicPayload(ConstraintViolation<?> violation) {
var hibernateViolation = violation.unwrap(HibernateConstraintViolation.class); HibernateConstraintViolation<?> hibernateViolation = violation.unwrap(HibernateConstraintViolation.class);
return Optional.ofNullable((DynamicViolationParameter) hibernateViolation.getDynamicPayload(DynamicViolationParameter.class)); return Optional.ofNullable(hibernateViolation.getDynamicPayload(DynamicViolationParameter.class));
} }
@ExceptionHandler(TechnicalException.class) @ExceptionHandler(TechnicalException.class)
......
package de.itvsh.goofy.common.file;
import com.google.protobuf.ByteString;
import lombok.Builder;
import lombok.Getter;
@Builder
@Getter
public class OzgFileData {
private String name;
private String contentType;
private long size;
private ByteString content;
}
\ No newline at end of file
package de.itvsh.goofy.common.file;
import org.mapstruct.Mapper;
import de.itvsh.ozg.pluto.grpc.file.GrpcOzgFileData;
import org.mapstruct.Mapping;
@Mapper
public interface OzgFileDataMapper {
OzgFileData toOzgFileData(GrpcOzgFileData data);
@Mapping(target = "mergeFrom", ignore = true)
@Mapping(target = "clearField", ignore = true)
@Mapping(target = "clearOneof", ignore = true)
@Mapping(target = "mergeUnknownFields", ignore = true)
@Mapping(target = "contentTypeBytes", ignore = true)
@Mapping(target = "nameBytes", ignore = true)
@Mapping(target = "unknownFields", ignore = true)
@Mapping(target = "allFields", ignore = true)
GrpcOzgFileData toGrpcOzgFileData(OzgFileData data);
}
\ No newline at end of file
...@@ -5,11 +5,9 @@ import java.util.stream.Stream; ...@@ -5,11 +5,9 @@ import java.util.stream.Stream;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import de.itvsh.goofy.common.binaryfile.FileId;
import de.itvsh.goofy.common.callcontext.ContextService; import de.itvsh.goofy.common.callcontext.ContextService;
import de.itvsh.ozg.pluto.grpc.file.FileServiceGrpc.FileServiceBlockingStub; import de.itvsh.ozg.pluto.grpc.file.FileServiceGrpc.FileServiceBlockingStub;
import de.itvsh.ozg.pluto.grpc.file.GrpcGetAttachmentsRequest; import de.itvsh.ozg.pluto.grpc.file.GrpcGetAttachmentsRequest;
import de.itvsh.ozg.pluto.grpc.file.GrpcGetOzgFileDataRequest;
import de.itvsh.ozg.pluto.grpc.file.GrpcGetRepresentationsRequest; import de.itvsh.ozg.pluto.grpc.file.GrpcGetRepresentationsRequest;
import net.devh.boot.grpc.client.inject.GrpcClient; import net.devh.boot.grpc.client.inject.GrpcClient;
...@@ -22,8 +20,6 @@ public class OzgFileRemoteService { ...@@ -22,8 +20,6 @@ public class OzgFileRemoteService {
private ContextService contextService; private ContextService contextService;
@Autowired @Autowired
private OzgFileMapper fileMapper; private OzgFileMapper fileMapper;
@Autowired
private OzgFileDataMapper ozgFileDataMapper;
public Stream<OzgFile> getAttachmentsByEingang(String eingangId) { public Stream<OzgFile> getAttachmentsByEingang(String eingangId) {
var response = fileServiceStub.getAttachments(buildGrpcGetAttachmentsRequest(eingangId)); var response = fileServiceStub.getAttachments(buildGrpcGetAttachmentsRequest(eingangId));
...@@ -50,17 +46,4 @@ public class OzgFileRemoteService { ...@@ -50,17 +46,4 @@ public class OzgFileRemoteService {
.setEingangId(eingangId) .setEingangId(eingangId)
.build(); .build();
} }
public OzgFileData getOzgFileData(FileId fileId) {
var response = fileServiceStub.getFileData(buildGetOzgFileDataRequest(fileId));
return ozgFileDataMapper.toOzgFileData(response.getFileData());
}
private GrpcGetOzgFileDataRequest buildGetOzgFileDataRequest(FileId fileId) {
return GrpcGetOzgFileDataRequest.newBuilder()
.setContext(contextService.createCallContext())
.setFileId(fileId.toString())
.build();
}
} }
\ No newline at end of file
...@@ -5,8 +5,6 @@ import java.util.stream.Stream; ...@@ -5,8 +5,6 @@ import java.util.stream.Stream;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import de.itvsh.goofy.common.binaryfile.FileId;
@Service @Service
public class OzgFileService { public class OzgFileService {
...@@ -20,8 +18,4 @@ public class OzgFileService { ...@@ -20,8 +18,4 @@ public class OzgFileService {
public Stream<OzgFile> getRepresentationsByEingang(String eingangId) { public Stream<OzgFile> getRepresentationsByEingang(String eingangId) {
return remoteService.getRepresentationsByEingang(eingangId); return remoteService.getRepresentationsByEingang(eingangId);
} }
public OzgFileData getOzgFileData(FileId fileId) {
return remoteService.getOzgFileData(fileId);
}
} }
\ No newline at end of file
...@@ -6,7 +6,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -6,7 +6,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import de.itvsh.goofy.GoofyServerApplication; import de.itvsh.goofy.GoofyServerApplication;
import de.itvsh.ozg.pluto.common.GrpcObjectMapper; import de.itvsh.kop.pluto.common.grpc.GrpcObjectMapper;
import de.itvsh.ozg.pluto.vorgangAttachedItem.GrpcFindVorgangAttachedItemRequest; import de.itvsh.ozg.pluto.vorgangAttachedItem.GrpcFindVorgangAttachedItemRequest;
import de.itvsh.ozg.pluto.vorgangAttachedItem.GrpcFindVorgangAttachedItemResponse; import de.itvsh.ozg.pluto.vorgangAttachedItem.GrpcFindVorgangAttachedItemResponse;
import de.itvsh.ozg.pluto.vorgangAttachedItem.GrpcVorgangAttachedItemRequest; import de.itvsh.ozg.pluto.vorgangAttachedItem.GrpcVorgangAttachedItemRequest;
......
...@@ -4,6 +4,7 @@ import org.mapstruct.Mapper; ...@@ -4,6 +4,7 @@ import org.mapstruct.Mapper;
import org.mapstruct.NullValueCheckStrategy; import org.mapstruct.NullValueCheckStrategy;
import org.mapstruct.NullValuePropertyMappingStrategy; import org.mapstruct.NullValuePropertyMappingStrategy;
import de.itvsh.kop.pluto.common.grpc.GrpcFormDataMapper;
import de.itvsh.ozg.pluto.vorgang.GrpcAntragsteller; import de.itvsh.ozg.pluto.vorgang.GrpcAntragsteller;
@Mapper(uses = { GrpcFormDataMapper.class }, // @Mapper(uses = { GrpcFormDataMapper.class }, //
......
package de.itvsh.goofy.vorgang; package de.itvsh.goofy.vorgang;
import java.util.Collection;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Objects;
import org.apache.commons.lang3.tuple.Pair;
import org.mapstruct.CollectionMappingStrategy; import org.mapstruct.CollectionMappingStrategy;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
import org.mapstruct.Mapping; import org.mapstruct.Mapping;
import de.itvsh.kop.pluto.common.grpc.GrpcFormDataMapper;
import de.itvsh.ozg.pluto.vorgang.GrpcEingang; import de.itvsh.ozg.pluto.vorgang.GrpcEingang;
import de.itvsh.ozg.pluto.vorgang.GrpcFormData;
import de.itvsh.ozg.pluto.vorgang.GrpcFormField;
import de.itvsh.ozg.pluto.vorgang.GrpcSubForm;
@Mapper(uses = { AntragstellerMapper.class, @Mapper(uses = { AntragstellerMapper.class,
EingangHeaderMapper.class, ZustaendigeStelleMapper.class }, collectionMappingStrategy = CollectionMappingStrategy.ADDER_PREFERRED) EingangHeaderMapper.class, ZustaendigeStelleMapper.class,
GrpcFormDataMapper.class }, collectionMappingStrategy = CollectionMappingStrategy.ADDER_PREFERRED)
interface EingangMapper { interface EingangMapper {
@Mapping(source = "formData", target = "formData") @Mapping(source = "formData", target = "formData")
Eingang fromGrpc(GrpcEingang eingang); Eingang fromGrpc(GrpcEingang eingang);
default Map<String, Object> mapFormData(GrpcFormData formData) {
Map<String, Object> result = new HashMap<>();
result.putAll(mapSubFormFields(formData.getFieldList()));
result.putAll(mapFormData(formData.getFormList()));
return result;
}
default Map<String, Object> mapFormData(List<GrpcSubForm> subForms) {
return subForms.stream().map(subForm -> Pair.of(subForm.getTitle(), mapSubForm(subForm)))
.collect(HashMap<String, Object>::new, this::pairAccumulator, this::combiner);
}
private Map<String, Object> pairAccumulator(Map<String, Object> map, Pair<String, Map<String, Object>> pair) {
return addToMap(map, pair.getLeft(), pair.getRight());
}
default Map<String, Object> mapSubForm(GrpcSubForm subForm) {
Map<String, Object> result = new HashMap<>();
result.putAll(mapSubFormFields(subForm.getFieldList()));
result.putAll(mapFormData(subForm.getSubFormList()));
return result;
}
default Map<String, Object> mapSubFormFields(List<GrpcFormField> fields) {
return fields.stream().collect(HashMap<String, Object>::new, this::accumulator, this::combiner);
}
private Map<String, Object> accumulator(Map<String, Object> map, GrpcFormField field) {
return addToMap(map, field.getName(), field.getValue());
}
default Map<String, Object> combiner(Map<String, Object> map1, Map<String, Object> map2) {
for (Entry<String, Object> entry : map2.entrySet()) {
addToMap(map1, entry.getKey(), entry.getValue());
}
return map1;
}
@SuppressWarnings("unchecked")
private Map<String, Object> addToMap(Map<String, Object> map, String name, Object value) {
var valueInMap = map.get(name);
if (Objects.isNull(valueInMap)) {
map.put(name, value);
} else {
if (value instanceof Collection) {
addCollectionValue(map, name, (Collection<Object>) value);
} else {
addNonCollectionValue(map, name, value);
}
}
return map;
}
@SuppressWarnings("unchecked")
private Map<String, Object> addCollectionValue(Map<String, Object> map, String name, Collection<Object> value) {
var valueInMap = map.get(name);
var newList = new LinkedList<Object>();
if (valueInMap instanceof Collection) {
newList.addAll((Collection<? extends Object>) valueInMap);
newList.addAll(value);
} else {
newList.add(valueInMap);
newList.addAll(value);
}
map.put(name, newList);
return map;
}
@SuppressWarnings("unchecked")
private Map<String, Object> addNonCollectionValue(Map<String, Object> map, String name, Object value) {
var valueInMap = map.get(name);
if (valueInMap instanceof Collection) {
var newList = new LinkedList<>((Collection<Object>) valueInMap);
newList.add(value);
map.put(name, newList);
} else {
map.put(name, new LinkedList<>(List.of(valueInMap, value)));
}
return map;
}
} }
package de.itvsh.goofy.vorgang;
import java.util.Collection;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Objects;
import java.util.stream.Collectors;
import org.apache.commons.lang3.tuple.Pair;
import org.mapstruct.CollectionMappingStrategy;
import org.mapstruct.Mapper;
import org.mapstruct.NullValueCheckStrategy;
import org.mapstruct.NullValuePropertyMappingStrategy;
import org.mapstruct.ReportingPolicy;
import de.itvsh.ozg.pluto.vorgang.GrpcFormData;
import de.itvsh.ozg.pluto.vorgang.GrpcFormField;
import de.itvsh.ozg.pluto.vorgang.GrpcSubForm;
@Mapper(unmappedTargetPolicy = ReportingPolicy.WARN, //
unmappedSourcePolicy = ReportingPolicy.WARN, //
nullValuePropertyMappingStrategy = NullValuePropertyMappingStrategy.IGNORE, //
nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS, //
collectionMappingStrategy = CollectionMappingStrategy.ADDER_PREFERRED)
interface GrpcFormDataMapper {
default GrpcFormData mapToFormData(Map<String, Object> formData) {
return GrpcFormData.newBuilder()
.addAllField(mapToAllFields(formData))
.addAllForm(mapToSubForms(formData))
.addAllField(mapStringListsToFields(formData))
.addAllForm(mapObjectListsToFields(formData)).build();
}
default List<GrpcFormField> mapToAllFields(Map<String, Object> formData) {
return formData.entrySet().stream().filter(entry -> entry.getValue() instanceof String)//
.map(entry -> mapToField(entry.getKey(), entry.getValue().toString()))//
.collect(Collectors.toList());
}
default List<GrpcFormField> mapStringListsToFields(Map<String, Object> formData) {
return formData.entrySet().stream()
.filter(entry -> entry.getValue() instanceof List)
.map(this::mapListStringElementsToFormFields)
.flatMap(List::stream)
.collect(Collectors.toList());
}
@SuppressWarnings("unchecked")
private List<GrpcFormField> mapListStringElementsToFormFields(Entry<String, Object> entry) {
return ((List<Object>) entry.getValue()).stream()
.filter(String.class::isInstance)
.map(String.class::cast)
.map(e -> mapToField(entry.getKey(), e))
.collect(Collectors.toList());
}
default List<GrpcSubForm> mapObjectListsToFields(Map<String, Object> formData) {
return formData.entrySet().stream()
.filter(entry -> entry.getValue() instanceof List)
.map(this::mapListObjectElementsToFormFields)
.flatMap(List::stream)
.collect(Collectors.toList());
}
@SuppressWarnings("unchecked")
private List<GrpcSubForm> mapListObjectElementsToFormFields(Entry<String, Object> entry) {
return ((List<Object>) entry.getValue()).stream()
.filter(Map.class::isInstance)
.map(Map.class::cast)
.map(e -> buildSubForm(entry.getKey(), e))
.collect(Collectors.toList());
}
@SuppressWarnings("unchecked")
default List<GrpcSubForm> mapToSubForms(Map<String, Object> formData) {
return formData.entrySet().stream()
.filter(entry -> entry.getValue() instanceof Map)
.map(entry -> buildSubForm(entry.getKey(), (Map<String, Object>) entry.getValue()))
.collect(Collectors.toList());
}
default GrpcSubForm buildSubForm(String name, Map<String, Object> map) {
return GrpcSubForm.newBuilder().setTitle(name)
.addAllField(mapToAllFields(map))
.addAllSubForm(mapToSubForms(map))
.addAllField(mapStringListsToFields(map))
.addAllSubForm(mapObjectListsToFields(map)).build();
}
default GrpcFormField mapToField(String name, String value) {
return GrpcFormField.newBuilder().setName(name).setValue(value).build();
}
default Map<String, Object> mapFromFormData(GrpcFormData formData) {
Map<String, Object> result = new HashMap<>();
result.putAll(mapSubFormFields(formData.getFieldList()));
result.putAll(mapFormData(formData.getFormList()));
return result;
}
default Map<String, Object> mapFormData(List<GrpcSubForm> subForms) {
return subForms.stream().map(subForm -> Pair.of(subForm.getTitle(), mapSubForm(subForm)))
.collect(HashMap<String, Object>::new, this::pairAccumulator, this::combiner);
}
private Map<String, Object> pairAccumulator(Map<String, Object> map, Pair<String, Map<String, Object>> pair) {
return addToMap(map, pair.getLeft(), pair.getRight());
}
default Map<String, Object> mapSubForm(GrpcSubForm subForm) {
Map<String, Object> result = new HashMap<>();
result.putAll(mapSubFormFields(subForm.getFieldList()));
result.putAll(mapFormData(subForm.getSubFormList()));
return result;
}
default Map<String, Object> mapSubFormFields(List<GrpcFormField> fields) {
return fields.stream().collect(HashMap<String, Object>::new, this::accumulator, this::combiner);
}
private Map<String, Object> accumulator(Map<String, Object> map, GrpcFormField field) {
return addToMap(map, field.getName(), field.getValue());
}
default Map<String, Object> combiner(Map<String, Object> map1, Map<String, Object> map2) {
for (Entry<String, Object> entry : map2.entrySet()) {
addToMap(map1, entry.getKey(), entry.getValue());
}
return map1;
}
@SuppressWarnings("unchecked")
private Map<String, Object> addToMap(Map<String, Object> map, String name, Object value) {
var valueInMap = map.get(name);
if (Objects.isNull(valueInMap)) {
map.put(name, value);
} else {
if (value instanceof Collection) {
addCollectionValue(map, name, (Collection<Object>) value);
} else {
addNonCollectionValue(map, name, value);
}
}
return map;
}
@SuppressWarnings("unchecked")
private Map<String, Object> addCollectionValue(Map<String, Object> map, String name, Collection<Object> value) {
var valueInMap = map.get(name);
var newList = new LinkedList<Object>();
if (valueInMap instanceof Collection) {
newList.addAll((Collection<? extends Object>) valueInMap);
newList.addAll(value);
} else {
newList.add(valueInMap);
newList.addAll(value);
}
map.put(name, newList);
return map;
}
@SuppressWarnings("unchecked")
private Map<String, Object> addNonCollectionValue(Map<String, Object> map, String name, Object value) {
var valueInMap = map.get(name);
if (valueInMap instanceof Collection) {
var newList = new LinkedList<>((Collection<Object>) valueInMap);
newList.add(value);
map.put(name, newList);
} else {
map.put(name, new LinkedList<>(List.of(valueInMap, value)));
}
return map;
}
}
...@@ -10,7 +10,7 @@ import org.springframework.context.ApplicationContext; ...@@ -10,7 +10,7 @@ import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import de.itvsh.goofy.GoofyServerApplication; import de.itvsh.goofy.GoofyServerApplication;
import de.itvsh.ozg.pluto.common.GrpcObjectMapper; import de.itvsh.kop.pluto.common.grpc.GrpcObjectMapper;
import de.itvsh.ozg.pluto.grpc.clientAttribute.ClientAttributeServiceGrpc.ClientAttributeServiceBlockingStub; import de.itvsh.ozg.pluto.grpc.clientAttribute.ClientAttributeServiceGrpc.ClientAttributeServiceBlockingStub;
import de.itvsh.ozg.pluto.grpc.clientAttribute.GrpcAccessPermission; import de.itvsh.ozg.pluto.grpc.clientAttribute.GrpcAccessPermission;
import de.itvsh.ozg.pluto.grpc.clientAttribute.GrpcClientAttribute; import de.itvsh.ozg.pluto.grpc.clientAttribute.GrpcClientAttribute;
......
...@@ -10,7 +10,7 @@ spring: ...@@ -10,7 +10,7 @@ spring:
pathmatch: pathmatch:
matching-strategy: ant-path-matcher matching-strategy: ant-path-matcher
application: application:
name: goofy name: Goofy
jackson: jackson:
deserialization: deserialization:
'ADJUST_DATES_TO_CONTEXT_TIME_ZONE': false 'ADJUST_DATES_TO_CONTEXT_TIME_ZONE': false
......
...@@ -33,7 +33,6 @@ import de.itvsh.goofy.common.GrpcCallContextTestFactory; ...@@ -33,7 +33,6 @@ import de.itvsh.goofy.common.GrpcCallContextTestFactory;
import de.itvsh.goofy.common.callcontext.ContextService; import de.itvsh.goofy.common.callcontext.ContextService;
import de.itvsh.goofy.common.file.GrpcOzgFileTestFactory; import de.itvsh.goofy.common.file.GrpcOzgFileTestFactory;
import de.itvsh.goofy.common.file.OzgFile; import de.itvsh.goofy.common.file.OzgFile;
import de.itvsh.goofy.common.file.OzgFileDataMapper;
import de.itvsh.goofy.common.file.OzgFileMapper; import de.itvsh.goofy.common.file.OzgFileMapper;
import de.itvsh.goofy.common.file.OzgFileTestFactory; import de.itvsh.goofy.common.file.OzgFileTestFactory;
import de.itvsh.kop.common.errorhandling.TechnicalException; import de.itvsh.kop.common.errorhandling.TechnicalException;
...@@ -61,8 +60,6 @@ class BinaryFileRemoteServiceTest { ...@@ -61,8 +60,6 @@ class BinaryFileRemoteServiceTest {
@Mock @Mock
private OzgFileMapper ozgFileMapper; private OzgFileMapper ozgFileMapper;
@Mock @Mock
private OzgFileDataMapper ozgFileDataMapper;
@Mock
private FileIdMapper fileIdMapper; private FileIdMapper fileIdMapper;
private GrpcCallContext callContext = GrpcCallContextTestFactory.create(); private GrpcCallContext callContext = GrpcCallContextTestFactory.create();
......
...@@ -9,14 +9,9 @@ import org.springframework.util.unit.DataSize; ...@@ -9,14 +9,9 @@ import org.springframework.util.unit.DataSize;
import com.thedeanda.lorem.LoremIpsum; import com.thedeanda.lorem.LoremIpsum;
import de.itvsh.goofy.common.GrpcCallContextTestFactory;
import de.itvsh.goofy.common.file.GrpcOzgFileDataTestFactory;
import de.itvsh.goofy.common.file.GrpcOzgFileTestFactory; import de.itvsh.goofy.common.file.GrpcOzgFileTestFactory;
import de.itvsh.goofy.vorgang.VorgangHeaderTestFactory; import de.itvsh.goofy.vorgang.VorgangHeaderTestFactory;
import de.itvsh.ozg.pluto.grpc.binaryFile.GrpcBinaryFileDataResponse;
import de.itvsh.ozg.pluto.grpc.binaryFile.GrpcFindFilesResponse; import de.itvsh.ozg.pluto.grpc.binaryFile.GrpcFindFilesResponse;
import de.itvsh.ozg.pluto.grpc.binaryFile.GrpcUploadRequest;
import de.itvsh.ozg.pluto.grpc.binaryFile.GrpcUploadResponse;
public class BinaryFileTestFactory { public class BinaryFileTestFactory {
...@@ -32,25 +27,10 @@ public class BinaryFileTestFactory { ...@@ -32,25 +27,10 @@ public class BinaryFileTestFactory {
public static final String VORGANG_ID = VorgangHeaderTestFactory.ID; public static final String VORGANG_ID = VorgangHeaderTestFactory.ID;
static final InputStream STREAM = new ByteArrayInputStream(DATA); static final InputStream STREAM = new ByteArrayInputStream(DATA);
public static GrpcUploadRequest createFileUploadRequest() {
return GrpcUploadRequest.newBuilder().setContext(GrpcCallContextTestFactory.create())
.setField(FIELD)
.setVorgangId(VORGANG_ID)
.build();
}
public static GrpcUploadResponse createFileUploadReponse() {
return GrpcUploadResponse.newBuilder().setFileId(BinaryFileTestFactory.ID).build();
}
public static GrpcFindFilesResponse createFindBinaryFilesResponse() { public static GrpcFindFilesResponse createFindBinaryFilesResponse() {
return GrpcFindFilesResponse.newBuilder().addFile(GrpcOzgFileTestFactory.create()).build(); return GrpcFindFilesResponse.newBuilder().addFile(GrpcOzgFileTestFactory.create()).build();
} }
public static GrpcBinaryFileDataResponse createBinaryFileDataResponse() {
return GrpcBinaryFileDataResponse.newBuilder().setData(GrpcOzgFileDataTestFactory.create()).build();
}
public static byte[] createByteOfSize(DataSize size) { public static byte[] createByteOfSize(DataSize size) {
var testStr = LoremIpsum.getInstance().getWords(1); var testStr = LoremIpsum.getInstance().getWords(1);
var contentSize = (int) size.toBytes(); var contentSize = (int) size.toBytes();
......
...@@ -202,6 +202,7 @@ class CommandBodyMapperTest { ...@@ -202,6 +202,7 @@ class CommandBodyMapperTest {
assertThat(mappedItemMap).contains(attachmentsEntry); assertThat(mappedItemMap).contains(attachmentsEntry);
} }
@SuppressWarnings("unchecked")
private Map<String, Object> getMappedItemEntry() { private Map<String, Object> getMappedItemEntry() {
return (Map<String, Object>) mapToBodyMap().get(CommandBodyMapper.ITEM_PROPERTY); return (Map<String, Object>) mapToBodyMap().get(CommandBodyMapper.ITEM_PROPERTY);
} }
......
...@@ -26,8 +26,8 @@ import org.mockito.Spy; ...@@ -26,8 +26,8 @@ import org.mockito.Spy;
import de.itvsh.goofy.common.callcontext.ContextService; import de.itvsh.goofy.common.callcontext.ContextService;
import de.itvsh.goofy.vorgang.RedirectRequestTestFactory; import de.itvsh.goofy.vorgang.RedirectRequestTestFactory;
import de.itvsh.goofy.vorgang.VorgangHeaderTestFactory; import de.itvsh.goofy.vorgang.VorgangHeaderTestFactory;
import de.itvsh.kop.pluto.common.grpc.GrpcObjectMapper;
import de.itvsh.ozg.pluto.common.GrpcObject; import de.itvsh.ozg.pluto.common.GrpcObject;
import de.itvsh.ozg.pluto.common.GrpcObjectMapper;
import de.itvsh.ozg.pluto.grpc.command.CommandServiceGrpc.CommandServiceBlockingStub; import de.itvsh.ozg.pluto.grpc.command.CommandServiceGrpc.CommandServiceBlockingStub;
import de.itvsh.ozg.pluto.grpc.command.GrpcCallContext; import de.itvsh.ozg.pluto.grpc.command.GrpcCallContext;
import de.itvsh.ozg.pluto.grpc.command.GrpcCommand; import de.itvsh.ozg.pluto.grpc.command.GrpcCommand;
......
...@@ -33,10 +33,12 @@ public class ExceptionTestFactory { ...@@ -33,10 +33,12 @@ public class ExceptionTestFactory {
return ExceptionTestFactory.buildMockedConstraintViolationWithDynamicPayload(null); return ExceptionTestFactory.buildMockedConstraintViolationWithDynamicPayload(null);
} }
public static ConstraintViolation<?> buildMockedConstraintViolationWithDynamicPayload(DynamicViolationParameter dynamicViolationParameter) { @SuppressWarnings({ "rawtypes", "unchecked" })
var violation = mock(ConstraintViolation.class); public static <T> ConstraintViolation<T> buildMockedConstraintViolationWithDynamicPayload(DynamicViolationParameter dynamicViolationParameter) {
var hibernateViolation = mock(HibernateConstraintViolation.class); ConstraintViolation violation = mock(ConstraintViolation.class);
var constraintDescriptor = mock(ConstraintDescriptor.class); HibernateConstraintViolation hibernateViolation = mock(HibernateConstraintViolation.class);
ConstraintDescriptor constraintDescriptor = mock(ConstraintDescriptor.class);
var path = mock(Path.class); var path = mock(Path.class);
when(path.toString()).thenReturn(PATH); when(path.toString()).thenReturn(PATH);
when(violation.getPropertyPath()).thenReturn(path); when(violation.getPropertyPath()).thenReturn(path);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment