1 package de.dlr.shepard.common.neo4j.io;
2
3 import de.dlr.shepard.common.neo4j.entities.BasicContainer;
4 import de.dlr.shepard.common.neo4j.entities.ContainerType;
5 import java.util.Arrays;
6 import lombok.Data;
7 import lombok.EqualsAndHashCode;
8 import lombok.NoArgsConstructor;
9 import org.eclipse.microprofile.openapi.annotations.media.Schema;
10
11 @Data
12 @EqualsAndHashCode(callSuper = true)
13 @NoArgsConstructor
14 @Schema(name = "BasicContainer")
15 public class BasicContainerIO extends BasicEntityIO {
16
17 @Schema(readOnly = true, required = true)
18 private ContainerType type;
19
20 public BasicContainerIO(BasicContainer container) {
21 super(container);
22 type = Arrays.stream(ContainerType.values())
23 .filter(containerType -> containerType.getTypeName().equals(container.getClass().getSimpleName()))
24 .findFirst()
25 .orElse(ContainerType.BASIC);
26 }
27 }