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)