/**
  * @inheritdoc
  */
 public function moveMessages($sourceFolder, $targetFolder)
 {
     $data = array('sourceFolder' => $sourceFolder, 'targetFolder' => $targetFolder);
     $config = array();
     ArrayUtil::apply($config, $this->getFolderHybridCheckConfiguration('targetFolder'));
     ArrayUtil::apply($config, $this->getFolderHybridCheckConfiguration('sourceFolder'));
     ArgumentCheck::check($config, $data);
     $sourceEntity = $this->makeFolderEntity($sourceFolder);
     $targetEntity = $this->makeFolderEntity($targetFolder);
     try {
         $this->messageRepository->moveMessagesFromFolder($sourceEntity, $targetEntity);
     } catch (\Exception $e) {
         throw new FolderServiceException("Exception thrown by previous exception", 0, $e);
     }
 }