/**
  * Returns the new level of node from $dest node and position.
  *
  * @param  \BackBee\CoreDomain\NestedNode\AbstractNestedNode $dest
  * @param  string                          $position
  * @return \BackBee\CoreDomain\NestedNode\AbstractNestedNode
  * @throws InvalidArgumentException        Occurs if $position is unknown
  */
 private function getNewLevelFromPosition(AbstractNestedNode $dest, $position)
 {
     switch ($position) {
         case 'before':
         case 'after':
             $newlevel = $dest->getLevel();
             break;
         case 'firstin':
         case 'lastin':
             $newlevel = $dest->getLevel() + 1;
             break;
         default:
             throw new InvalidArgumentException(sprintf('Unknown position %s to move node', $position));
     }
     return $newlevel;
 }