3 * FusionForge source control management
5 * Copyright 2003-2004, Tim Perdue/GForge, LLC
7 * This file is part of FusionForge. FusionForge is free software;
8 * you can redistribute it and/or modify it under the terms of the
9 * GNU General Public License as published by the Free Software
10 * Foundation; either version 2 of the Licence, or (at your option)
13 * FusionForge is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License along
19 * with FusionForge; if not, write to the Free Software Foundation, Inc.,
20 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
23 require_once $gfcommon.'include/Error.class.php';
24 require_once $gfcommon.'include/PluginManager.class.php';
26 class SCMFactory extends Error {
39 * @return boolean success.
41 function SCMFactory() {
45 if (!forge_get_config('use_scm')) {
46 $this->setError('SCMFactory::sys_use_scm');
53 * getSCMs - get an array of Plugin SCM objects.
55 * @return array The array of SCM objects.
58 $scm_plugins = array();
62 $hookParams['scm_plugins']=& $scm_plugins;
63 plugin_hook("scm_plugin", $hookParams);
64 $this->scms= $scm_plugins;
72 // c-file-style: "bsd"