1 package de.dlr.shepard.context.version.entities;
2
3 import de.dlr.shepard.common.neo4j.entities.BasicEntity;
4 import de.dlr.shepard.common.util.Constants;
5 import lombok.Data;
6 import lombok.EqualsAndHashCode;
7 import lombok.NoArgsConstructor;
8 import lombok.ToString;
9 import org.neo4j.ogm.annotation.Index;
10 import org.neo4j.ogm.annotation.NodeEntity;
11 import org.neo4j.ogm.annotation.Relationship;
12
13 @NodeEntity
14 @Data
15 @ToString(callSuper = true)
16 @EqualsAndHashCode(callSuper = true)
17 @NoArgsConstructor
18 public class VersionableEntity extends BasicEntity {
19
20 @Index
21 private Long shepardId;
22
23 @Relationship(type = Constants.HAS_VERSION)
24 protected Version version;
25
26
27
28
29
30
31 protected VersionableEntity(long id) {
32 super(id);
33 }
34
35 @Override
36 public long getNumericId() {
37 return getShepardId();
38 }
39 }