Mercurial > kallithea
comparison rhodecode/model/__init__.py @ 2432:d3ac7491a5c8 codereview
Share common getter functions in base model, and remove duplicated functions from other models
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Sat, 09 Jun 2012 20:23:48 +0200 |
parents | 50aa7cb78cfe |
children | e4d2271e1193 |
comparison
equal
deleted
inserted
replaced
2431:60dfc369df1d | 2432:d3ac7491a5c8 |
---|---|
40 # | 40 # |
41 # You should have received a copy of the GNU General Public License | 41 # You should have received a copy of the GNU General Public License |
42 # along with this program. If not, see <http://www.gnu.org/licenses/>. | 42 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
43 | 43 |
44 import logging | 44 import logging |
45 | 45 from rhodecode.model.db import User, Repository, Permission |
46 from rhodecode.model import meta | 46 from rhodecode.model import meta |
47 | 47 |
48 log = logging.getLogger(__name__) | 48 log = logging.getLogger(__name__) |
49 | 49 |
50 | 50 |
94 'given object must be int, long or Instance of %s ' | 94 'given object must be int, long or Instance of %s ' |
95 'got %s, no callback provided' % (cls, type(instance)) | 95 'got %s, no callback provided' % (cls, type(instance)) |
96 ) | 96 ) |
97 else: | 97 else: |
98 return callback(instance) | 98 return callback(instance) |
99 | |
100 def _get_user(self, user): | |
101 """ | |
102 Helper method to get user by ID, or username fallback | |
103 | |
104 :param user: | |
105 :type user: UserID, username, or User instance | |
106 """ | |
107 return self._get_instance(User, user, | |
108 callback=User.get_by_username) | |
109 | |
110 def _get_repo(self, repository): | |
111 """ | |
112 Helper method to get repository by ID, or repository name | |
113 | |
114 :param repository: | |
115 :type repository: RepoID, repository name or Repository Instance | |
116 """ | |
117 return self._get_instance(Repository, repository, | |
118 callback=Repository.get_by_repo_name) | |
119 | |
120 def _get_perm(self, permission): | |
121 """ | |
122 Helper method to get permission by ID, or permission name | |
123 | |
124 :param permission: | |
125 :type permission: PermissionID, permission_name or Permission instance | |
126 """ | |
127 return self._get_instance(Permission, permission, | |
128 callback=Permission.get_by_key) |