Revision 9a6e5099
Added by Andreas Müller almost 2 years ago
cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/PolytomousKeyNode.java | ||
---|---|---|
154 | 154 |
@Entity |
155 | 155 |
@Audited |
156 | 156 |
public class PolytomousKeyNode extends VersionableEntity implements IMultiLanguageTextHolder { |
157 |
|
|
157 | 158 |
private static final Logger logger = LogManager.getLogger(PolytomousKeyNode.class); |
158 | 159 |
|
159 | 160 |
// This is the main key a node belongs to. Although other keys may also |
... | ... | |
189 | 190 |
@XmlSchemaType(name = "IDREF") |
190 | 191 |
@Cascade({ CascadeType.SAVE_UPDATE, CascadeType.MERGE }) |
191 | 192 |
@ManyToOne(fetch = FetchType.LAZY, targetEntity = PolytomousKeyNode.class) |
192 |
@JoinColumn(name = "parent_id" /*, insertable=false, updatable=false, nullable=false */)
|
|
193 |
@JoinColumn(name = "parent_id") |
|
193 | 194 |
private PolytomousKeyNode parent; |
194 | 195 |
|
195 | 196 |
//see comment on children @IndexColumn |
... | ... | |
468 | 469 |
} |
469 | 470 |
|
470 | 471 |
if(nodeNumber == null) { |
471 |
nodeNumber = getMaxNodeNumberFromRoot() + 1;
|
|
472 |
nodeNumber = getMaxNodeNumberFromRoot() + 1;
|
|
472 | 473 |
} |
473 | 474 |
|
474 | 475 |
children.add(index, child); |
... | ... | |
578 | 579 |
} else { |
579 | 580 |
node.setNodeNumber(nodeN); |
580 | 581 |
newNodeN++; |
581 |
List<PolytomousKeyNode> children = node.getChildren();;
|
|
582 |
List<PolytomousKeyNode> children = node.getChildren(); |
|
582 | 583 |
for (PolytomousKeyNode child : children) { |
583 | 584 |
if (node == child){ |
584 | 585 |
throw new RuntimeException("Parent and child are the same for the given key node. This will lead to an infinite loop when updating node numbers."); |
Also available in: Unified diff
cleanup