3 * FusionForge source control management
5 * Copyright 2003-2004, Tim Perdue/GForge, LLC
7 * This file is part of FusionForge.
9 * FusionForge is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published
11 * by the Free Software Foundation; either version 2 of the License,
12 * or (at your option) any later version.
14 * FusionForge is distributed in the hope that it will be useful, but
15 * WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 * General Public License for more details.
19 * You should have received a copy of the GNU General Public License
20 * along with FusionForge; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
25 require_once $gfcommon.'include/Error.class.php';
26 require_once $gfcommon.'include/PluginManager.class.php';
28 class SCMFactory extends Error {
41 * @return boolean success.
43 function SCMFactory() {
47 if (!forge_get_config('use_scm')) {
48 $this->setError('SCMFactory::sys_use_scm');
55 * getSCMs - get an array of Plugin SCM objects.
57 * @return array The array of SCM objects.
60 $scm_plugins = array();
64 $hookParams['scm_plugins']=& $scm_plugins;
65 plugin_hook("scm_plugin", $hookParams);
66 $this->scms= $scm_plugins;
74 // c-file-style: "bsd"