Code Duplication    Length = 9-12 lines in 3 locations

src/Kunstmaan/MediaBundle/Repository/FolderRepository.php 3 locations

@@ 56-65 (lines=10) @@
53
    /**
54
     * @param Folder $folder
55
     */
56
    public function delete(Folder $folder)
57
    {
58
        $em = $this->getEntityManager();
59
60
        $this->deleteMedia($folder);
61
        $this->deleteChildren($folder);
62
        $folder->setDeleted(true);
63
        $em->persist($folder);
64
        $em->flush();
65
    }
66
67
    /**
68
     * @param Folder $folder
@@ 71-79 (lines=9) @@
68
     * @param Folder $folder
69
     * @param bool   $alsoDeleteFolders
70
     */
71
    public function emptyFolder(Folder $folder, $alsoDeleteFolders = false)
72
    {
73
        $em = $this->getEntityManager();
74
        $this->deleteMedia($folder);
75
        if ($alsoDeleteFolders) {
76
            $this->deleteChildren($folder);
77
        }
78
        $em->flush();
79
    }
80
81
    /**
82
     * @param Folder $folder
@@ 98-109 (lines=12) @@
95
    /**
96
     * @param Folder $folder
97
     */
98
    private function deleteChildren(Folder $folder)
99
    {
100
        $em = $this->getEntityManager();
101
102
        /** @var Folder $child */
103
        foreach ($folder->getChildren() as $child) {
104
            $this->deleteMedia($child);
105
            $this->deleteChildren($child);
106
            $child->setDeleted(true);
107
            $em->persist($child);
108
        }
109
    }
110
111
    /**
112
     * @param int $limit