* Moves existing {@link ColumnConfigInfo}.
*/
public void command_MOVE(ColumnConfigInfo column, ColumnConfigInfo nextColumn) throws Exception {
ArrayCreation columnsArray = getColumnsArray(true);
Assert.isNotNull(columnsArray);
ArrayInitializer arrayInitializer = columnsArray.getInitializer();
JavaInfo oldParent = column.getParent() instanceof JavaInfo ? column.getParentJava() : null;
int oldIndex = column.getParent().getChildren(ColumnConfigInfo.class).indexOf(column);
int newIndex = getChildren(ColumnConfigInfo.class).indexOf(nextColumn);
newIndex = newIndex == -1 ? arrayInitializer.expressions().size() : newIndex;
// fire before event
getBroadcastObject().childMoveBefore(getParent(), column, nextColumn);
getBroadcastJava().moveBefore(column, oldParent, this);
// move hierarchy
if (column.getParent() == this && column.getAssociation() instanceof ArrayAssociation) {