Files
@ 76b358f81926
Branch filter:
Location: kallithea/rhodecode/controllers/api/api.py - annotation
76b358f81926
970 B
text/x-python
extended safe_str and safe_unicode with chardet fallback.
- if chardet is installed and utf-8 decoding fails we'll fallback to detect encoding
- if chardet is installed and utf-8 decoding fails we'll fallback to detect encoding
c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c c78f6bf52e9c | from rhodecode.controllers.api import JSONRPCController, JSONRPCError
from rhodecode.lib.auth import HasPermissionAllDecorator
from rhodecode.model.scm import ScmModel
class ApiController(JSONRPCController):
"""
API Controller
Each method needs to have USER as argument this is then based on given
API_KEY propagated as instance of user object
Preferably this should be first argument also
Each function should also **raise** JSONRPCError for any
errors that happens
"""
@HasPermissionAllDecorator('hg.admin')
def pull(self, user, repo):
"""
Dispatch pull action on given repo
param user:
param repo:
"""
try:
ScmModel().pull_changes(repo, self.rhodecode_user.username)
return 'Pulled from %s' % repo
except Exception:
raise JSONRPCError('Unable to pull changes from "%s"' % repo)
|