// really do the move private boolean moveStructureToNewParent( final String subjectStructId, final String oldParStructId, final String newParStructId, int newPos) { PortfolioStructure structToBeMvd; PortfolioStructure oldParStruct; PortfolioStructure newParStruct; try { structToBeMvd = ePFMgr.loadPortfolioStructureByKey(new Long(subjectStructId)); oldParStruct = ePFMgr.loadPortfolioStructureByKey(new Long(oldParStructId)); newParStruct = ePFMgr.loadPortfolioStructureByKey(new Long(newParStructId)); } catch (final Exception e) { log.error( "could not load: structure to be moved, old or new structure while trying to move", e); return false; } if (oldParStructId.equals(newParStructId)) { // this is only a position move return ePFMgr.moveStructureToPosition(structToBeMvd, newPos); } return ePFMgr.moveStructureToNewParentStructure( structToBeMvd, oldParStruct, newParStruct, newPos); }