public static function listAll()
    {
        $result = array();
        $structure = General::listStructure(DATASOURCES, '/data.[\\w-]+.php/', false, 'ASC', DATASOURCES);

        if (is_array($structure['filelist']) && !empty($structure['filelist'])) {
            foreach ($structure['filelist'] as $f) {
                $f = self::__getHandleFromFilename($f);

                if ($about = self::about($f)) {
                    $classname = self::__getClassName($f);
                    $env = array();
                    $class = new $classname($env, false);

                    $about['can_parse'] = method_exists($class, 'allowEditorToParse')
                        ? $class->allowEditorToParse()
                        : false;

                    $about['source'] = method_exists($class, 'getSource')
                        ? $class->getSource()
                        : null;

                    $result[$f] = $about;
                }
            }
        }

        $extensions = Symphony::ExtensionManager()->listInstalledHandles();

        if (is_array($extensions) && !empty($extensions)) {
            foreach ($extensions as $e) {
                if (!is_dir(EXTENSIONS . "/$e/data-sources")) {
                    continue;
                }

                $tmp = General::listStructure(EXTENSIONS . "/$e/data-sources", '/data.[\\w-]+.php/', false, 'ASC', EXTENSIONS . "/$e/data-sources");

                if (is_array($tmp['filelist']) && !empty($tmp['filelist'])) {
                    foreach ($tmp['filelist'] as $f) {
                        $f = self::__getHandleFromFilename($f);

                        if ($about = self::about($f)) {
                            $about['can_parse'] = false;
                            $about['source'] = null;
                            $result[$f] = $about;
                        }
                    }
                }
            }
        }

        ksort($result);
        return $result;
    }
public static function listAll()
    {
        $result = array();
        $structure = General::listStructure(DATASOURCES, '/data.[\\w-]+.php/', false, 'ASC', DATASOURCES);

        if (is_array($structure['filelist']) && !empty($structure['filelist'])) {
            foreach ($structure['filelist'] as $f) {
                $f = self::__getHandleFromFilename($f);

                if ($about = self::about($f)) {
                    $classname = self::__getClassName($f);
                    $env = array();
                    $class = new $classname($env, false);

                    $about['can_parse'] = method_exists($class, 'allowEditorToParse')
                        ? $class->allowEditorToParse()
                        : false;

                    $about['source'] = method_exists($class, 'getSource')
                        ? $class->getSource()
                        : null;

                    $result[$f] = $about;
                }
            }
        }

        $extensions = Symphony::ExtensionManager()->listInstalledHandles();

        if (is_array($extensions) && !empty($extensions)) {
            foreach ($extensions as $e) {
                if (!is_dir(EXTENSIONS . "/$e/data-sources")) {
                    continue;
                }

                $tmp = General::listStructure(EXTENSIONS . "/$e/data-sources", '/data.[\\w-]+.php/', false, 'ASC', EXTENSIONS . "/$e/data-sources");

                if (is_array($tmp['filelist']) && !empty($tmp['filelist'])) {
                    foreach ($tmp['filelist'] as $f) {
                        $f = self::__getHandleFromFilename($f);

                        if ($about = self::about($f)) {
                            $about['can_parse'] = false;
                            $about['source'] = null;
                            $result[$f] = $about;
                        }
                    }
                }
            }
        }

        ksort($result);
        return $result;
    }
public static function listAll ( ) { $ result = array ( ) ; $ structure = General :: listStructure ( DATASOURCES , '/data.[\\w-]+.php/' , false , 'ASC' , DATASOURCES ) ; if ( is_array ( $ structure [ 'filelist' ] ) && ! empty ( $ structure [ 'filelist' ] ) ) { foreach ( $ structure [ 'filelist' ] as $ f ) { $ f = self :: __getHandleFromFilename ( $ f ) ; if ( $ about = self :: about ( $ f ) ) { $ classname = self :: __getClassName ( $ f ) ; $ env = array ( ) ; $ class = new $ classname ( $ env , false ) ; $ about [ 'can_parse' ] = method_exists ( $ class , 'allowEditorToParse' ) ? $ class -> allowEditorToParse ( ) : false ; $ about [ 'source' ] = method_exists ( $ class , 'getSource' ) ? $ class -> getSource ( ) : null ; $ result [ $ f ] = $ about ; } } } $ extensions = Symphony :: ExtensionManager ( ) -> listInstalledHandles ( ) ; if ( is_array ( $ extensions ) && ! empty ( $ extensions ) ) { foreach ( $ extensions as $ e ) { if ( ! is_dir ( EXTENSIONS . "/$e/data-sources" ) ) { continue ; } $ tmp = General :: listStructure ( EXTENSIONS . "/$e/data-sources" , '/data.[\\w-]+.php/' , false , 'ASC' , EXTENSIONS . "/$e/data-sources" ) ; if ( is_array ( $ tmp [ 'filelist' ] ) && ! empty ( $ tmp [ 'filelist' ] ) ) { foreach ( $ tmp [ 'filelist' ] as $ f ) { $ f = self :: __getHandleFromFilename ( $ f ) ; if ( $ about = self :: about ( $ f ) ) { $ about [ 'can_parse' ] = false ; $ about [ 'source' ] = null ; $ result [ $ f ] = $ about ; } } } } } ksort ( $ result ) ; return $ result ; }
Finds all available Datasources by searching the data-sources folder in
the workspace and in all installed extension folders. Returns an
associative array of data sources.

@see toolkit.Manager#about()
@return array
Associative array of Datasources with the key being the handle of the
Datasource and the value being the Datasource's `about()` information.
Finds all available Datasources by searching the data - sources folder in the workspace and in all installed extension folders . Returns an associative array of data sources .