aboutsummaryrefslogtreecommitdiffstats
path: root/lib/python2.7/site-packages/buildbot_slave-0.8.8-py2.7.egg/buildslave/commands/registry.py
blob: 22dc3ee68f65048c94efc0328f56a1753333bb69 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# This file is part of Buildbot.  Buildbot is free software: you can
# redistribute it and/or modify it under the terms of the GNU General Public
# License as published by the Free Software Foundation, version 2.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Software Foundation, Inc., 51
# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Copyright Buildbot Team Members

from twisted.python import reflect

commandRegistry = {
    # command name : fully qualified factory name (callable)
    "shell" : "buildslave.commands.shell.SlaveShellCommand",
    "uploadFile" : "buildslave.commands.transfer.SlaveFileUploadCommand",
    "uploadDirectory" : "buildslave.commands.transfer.SlaveDirectoryUploadCommand",
    "downloadFile" : "buildslave.commands.transfer.SlaveFileDownloadCommand",
    "downloadDirectory" : "buildslave.commands.transfer.SlaveDirectoryDownloadCommand",
    "svn" : "buildslave.commands.svn.SVN",
    "bk" : "buildslave.commands.bk.BK",
    "cvs" : "buildslave.commands.cvs.CVS",
    "darcs" : "buildslave.commands.darcs.Darcs",
    "git" : "buildslave.commands.git.Git",
    "repo" : "buildslave.commands.repo.Repo",
    "bzr" : "buildslave.commands.bzr.Bzr",
    "hg" : "buildslave.commands.hg.Mercurial",
    "p4" : "buildslave.commands.p4.P4",
    "mtn" : "buildslave.commands.mtn.Monotone",
    "mkdir" : "buildslave.commands.fs.MakeDirectory",
    "rmdir" : "buildslave.commands.fs.RemoveDirectory",
    "cpdir" : "buildslave.commands.fs.CopyDirectory",
    "mv" : "buildslave.commands.fs.Move",    
    "stat" : "buildslave.commands.fs.StatFile",
}

def getFactory(command):
    factory_name = commandRegistry[command]
    factory = reflect.namedObject(factory_name)
    return factory

def getAllCommandNames():
    return commandRegistry.keys()