I have the following legacy relationship entity which I'd like to upgrade to the latest SDN with @RelationshipProperties and @TargetNode :
@RelationshipEntity(type = "HAS_VALUE_ON")
public class RelationshipValue {
@Id
@GeneratedValue
private Long graphId;
@StartNode
private Decision decision;
@EndNode
private Characteristic characteristic;
Could you please show how to implement it with @RelationshipProperties and @TargetNode annotations ?
A relationship with properties does not point towards both entities anymore but is a directed relationship. We do not make any assumptions if the TargetNode is an end or a start node. This is defined in the relationship-defining class.
Assuming the RelationshipValue is used in Decision and this should get connected to Characteristic, you would define something like:
@RelationshipProperties
public class RelationshipValue {
@Id
@GeneratedValue
private Long graphId;
@TargetNode
private Characteristic characteristic;
and in Decision
public class Decision {
@Relationship("HAS_VALUE_ON") // direction can be OUTGOING (default) or INCOMING
private RelationshipValue relationshipValue;
}
@gerrit.meier , In the code of the class RelationshipValue there is no extra data so we can skip the definition of the class, but when we add some fields it will be somehow complecated
Please is there any information about using spring data rest with SDN 6 to persist RealtionshipProperties through an HTTP request