1 package de.dlr.shepard.common.neo4j.entities;
2
3 import de.dlr.shepard.auth.permission.model.Permissions;
4 import de.dlr.shepard.common.util.Constants;
5 import de.dlr.shepard.common.util.HasId;
6 import lombok.Data;
7 import lombok.NoArgsConstructor;
8 import lombok.ToString;
9 import org.neo4j.ogm.annotation.Relationship;
10
11 @Data
12 @ToString(callSuper = true)
13 @NoArgsConstructor
14 public class BasicContainer extends BasicEntity {
15
16 @ToString.Exclude
17 @Relationship(type = Constants.HAS_PERMISSIONS)
18 private Permissions permissions;
19
20
21
22
23
24
25 public BasicContainer(long id) {
26 super(id);
27 }
28
29 @Override
30 public int hashCode() {
31 final int prime = 31;
32 int result = super.hashCode();
33 result = prime * result + HasId.hashcodeHelper(permissions);
34 return result;
35 }
36
37 @Override
38 public boolean equals(Object obj) {
39 if (this == obj) return true;
40 if (!super.equals(obj)) return false;
41 if (!(obj instanceof BasicContainer)) return false;
42 BasicContainer other = (BasicContainer) obj;
43 return HasId.equalsHelper(permissions, other.permissions);
44 }
45 }