in src/main/java/org/apache/openejb/tools/release/util/References.java [129:145]
private static void swap(final Node shouldAfterNode, final Node shouldBeforeNode, final Node rootNode) {
Node currentNode = shouldBeforeNode;
while (currentNode.next != rootNode) {
if (currentNode.next == shouldAfterNode) {
return;
}
currentNode = currentNode.next;
}
//Remove the shouldAfterNode from list
shouldAfterNode.previous.next = shouldAfterNode.next;
shouldAfterNode.next.previous = shouldAfterNode.previous;
//Insert the node immediately after the shouldBeforeNode
shouldAfterNode.previous = shouldBeforeNode;
shouldAfterNode.next = shouldBeforeNode.next;
shouldBeforeNode.next = shouldAfterNode;
shouldAfterNode.next.previous = shouldAfterNode;
}