View Javadoc
1   package de.dlr.shepard.context.references.dataobject.io;
2   
3   import de.dlr.shepard.context.references.basicreference.io.BasicReferenceIO;
4   import de.dlr.shepard.context.references.dataobject.entities.DataObjectReference;
5   import jakarta.validation.constraints.NotNull;
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 = "DataObjectReference")
15  public class DataObjectReferenceIO extends BasicReferenceIO {
16  
17    @NotNull
18    @Schema(required = true)
19    private long referencedDataObjectId;
20  
21    @Schema(nullable = true)
22    private String relationship;
23  
24    public DataObjectReferenceIO(DataObjectReference ref) {
25      super(ref);
26      this.referencedDataObjectId = ref.getReferencedDataObject() != null
27        ? ref.getReferencedDataObject().getShepardId()
28        : -1;
29      this.relationship = ref.getRelationship();
30    }
31  }