public function listForms()
    {
        $this->assertSavePathIsValid();

        $forms = [];
        $directoryIterator = new \DirectoryIterator($this->savePath);

        foreach ($directoryIterator as $fileObject) {
            if (!$fileObject->isFile()) {
                continue;
            }
            $fileInfo = pathinfo($fileObject->getFilename());
            if (strtolower($fileInfo['extension']) !== 'yaml') {
                continue;
            }
            $persistenceIdentifier = $fileInfo['filename'];
            $form = $this->load($persistenceIdentifier);
            $forms[] = array(
                'identifier' => $form['identifier'],
                'name' => isset($form['label']) ? $form['label'] : $form['identifier'],
                'persistenceIdentifier' => $persistenceIdentifier
            );
        }
        return $forms;
    }