# HG changeset patch # User Søren Løvborg # Date 1484754986 -3600 # Node ID d7d1e0a3850a99bed6259b17cb09ecf4909f62ea # Parent eb1a4c3cb76c94f62cdd6008f9dac05a041dad12 model: inline calls to BaseModel._get_repo diff -r eb1a4c3cb76c -r d7d1e0a3850a kallithea/controllers/pullrequests.py --- a/kallithea/controllers/pullrequests.py Wed Jan 18 16:46:52 2017 +0100 +++ b/kallithea/controllers/pullrequests.py Wed Jan 18 16:56:26 2017 +0100 @@ -49,7 +49,7 @@ from kallithea.lib.vcs.utils import safe_str from kallithea.lib.vcs.utils.hgcompat import unionrepo from kallithea.model.db import PullRequest, ChangesetStatus, ChangesetComment, \ - PullRequestReviewer, User + PullRequestReviewer, Repository, User from kallithea.model.pull_request import PullRequestModel from kallithea.model.meta import Session from kallithea.model.repo import RepoModel @@ -323,7 +323,7 @@ # heads up: org and other might seem backward here ... org_repo_name = _form['org_repo'] org_ref = _form['org_ref'] # will have merge_rev as rev but symbolic name - org_repo = RepoModel()._get_repo(org_repo_name) + org_repo = Repository.guess_instance(org_repo_name) (org_ref_type, org_ref_name, org_rev) = org_ref.split(':') @@ -334,7 +334,7 @@ other_repo_name = _form['other_repo'] other_ref = _form['other_ref'] # will have symbolic name and head revision - other_repo = RepoModel()._get_repo(other_repo_name) + other_repo = Repository.guess_instance(other_repo_name) (other_ref_type, other_ref_name, other_rev) = other_ref.split(':') diff -r eb1a4c3cb76c -r d7d1e0a3850a kallithea/lib/celerylib/tasks.py --- a/kallithea/lib/celerylib/tasks.py Wed Jan 18 16:46:52 2017 +0100 +++ b/kallithea/lib/celerylib/tasks.py Wed Jan 18 16:56:26 2017 +0100 @@ -434,7 +434,7 @@ copy_fork_permissions = form_data.get('copy_permissions') try: - fork_of = RepoModel(DBS)._get_repo(form_data.get('fork_parent_id')) + fork_of = Repository.guess_instance(form_data.get('fork_parent_id')) RepoModel(DBS)._create_repo( repo_name=repo_name_full, diff -r eb1a4c3cb76c -r d7d1e0a3850a kallithea/model/base.py --- a/kallithea/model/base.py Wed Jan 18 16:46:52 2017 +0100 +++ b/kallithea/model/base.py Wed Jan 18 16:56:26 2017 +0100 @@ -60,15 +60,6 @@ else: self.sa = meta.Session() - def _get_repo(self, repository): - """ - Helper method to get repository by ID, or repository name - - :param repository: RepoID, repository name or Repository Instance - """ - from kallithea.model.db import Repository - return Repository.guess_instance(repository) - def _get_perm(self, permission): """ Helper method to get permission by ID, or permission name diff -r eb1a4c3cb76c -r d7d1e0a3850a kallithea/model/changeset_status.py --- a/kallithea/model/changeset_status.py Wed Jan 18 16:46:52 2017 +0100 +++ b/kallithea/model/changeset_status.py Wed Jan 18 16:56:26 2017 +0100 @@ -29,7 +29,7 @@ from sqlalchemy.orm import joinedload from kallithea.model.base import BaseModel -from kallithea.model.db import ChangesetStatus, PullRequest, User +from kallithea.model.db import ChangesetStatus, PullRequest, Repository, User from kallithea.lib.exceptions import StatusChangeOnClosedPullRequestError log = logging.getLogger(__name__) @@ -39,7 +39,7 @@ def _get_status_query(self, repo, revision, pull_request, with_revisions=False): - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) q = ChangesetStatus.query() \ .filter(ChangesetStatus.repo == repo) @@ -149,7 +149,7 @@ if last status was for pull request and it's closed. We shouldn't mess around this manually """ - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) q = ChangesetStatus.query() if revision is not None: @@ -185,7 +185,7 @@ new_status = ChangesetStatus() new_status.version = 0 # default new_status.author = User.guess_instance(user) - new_status.repo = self._get_repo(repo) + new_status.repo = Repository.guess_instance(repo) new_status.status = status new_status.comment = comment new_status.revision = rev diff -r eb1a4c3cb76c -r d7d1e0a3850a kallithea/model/comment.py --- a/kallithea/model/comment.py Wed Jan 18 16:46:52 2017 +0100 +++ b/kallithea/model/comment.py Wed Jan 18 16:56:26 2017 +0100 @@ -34,7 +34,7 @@ from kallithea.lib import helpers as h from kallithea.model.base import BaseModel from kallithea.model.db import ChangesetComment, User, \ - Notification, PullRequest + Notification, PullRequest, Repository from kallithea.model.notification import NotificationModel from kallithea.model.meta import Session @@ -168,7 +168,7 @@ log.warning('Missing text for comment, skipping...') return None - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) author = User.guess_instance(author) comment = ChangesetComment() comment.repo = repo diff -r eb1a4c3cb76c -r d7d1e0a3850a kallithea/model/repo.py --- a/kallithea/model/repo.py Wed Jan 18 16:46:52 2017 +0100 +++ b/kallithea/model/repo.py Wed Jan 18 16:56:26 2017 +0100 @@ -102,7 +102,7 @@ return repo.scalar() def get_repo(self, repository): - return self._get_repo(repository) + return Repository.guess_instance(repository) def get_by_repo_name(self, repo_name, cache=False): repo = self.sa.query(Repository) \ @@ -305,7 +305,7 @@ def update(self, repo, **kwargs): try: - cur_repo = self._get_repo(repo) + cur_repo = Repository.guess_instance(repo) org_repo_name = cur_repo.repo_name if 'owner' in kwargs: cur_repo.owner = User.get_by_username(kwargs['owner']) @@ -369,7 +369,7 @@ from kallithea.model.scm import ScmModel owner = User.guess_instance(owner) - fork_of = self._get_repo(fork_of) + fork_of = Repository.guess_instance(fork_of) repo_group = self._get_repo_group(repo_group) try: repo_name = safe_unicode(repo_name) @@ -523,7 +523,7 @@ """ if not cur_user: cur_user = getattr(get_current_authuser(), 'username', None) - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) if repo is not None: if forks == 'detach': for r in repo.forks: @@ -558,7 +558,7 @@ :param perm: Instance of Permission, or permission_name """ user = User.guess_instance(user) - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) permission = self._get_perm(perm) # check if we have that permission already @@ -585,7 +585,7 @@ """ user = User.guess_instance(user) - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) obj = self.sa.query(UserRepoToPerm) \ .filter(UserRepoToPerm.repository == repo) \ @@ -605,7 +605,7 @@ or user group name :param perm: Instance of Permission, or permission_name """ - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) group_name = self._get_user_group(group_name) permission = self._get_perm(perm) @@ -634,7 +634,7 @@ :param group_name: Instance of UserGroup, users_group_id, or user group name """ - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) group_name = self._get_user_group(group_name) obj = self.sa.query(UserGroupRepoToPerm) \ @@ -651,7 +651,7 @@ :param repo_name: """ - repo = self._get_repo(repo_name) + repo = Repository.guess_instance(repo_name) try: obj = self.sa.query(Statistics) \ .filter(Statistics.repository == repo).scalar() diff -r eb1a4c3cb76c -r d7d1e0a3850a kallithea/model/repo_permission.py --- a/kallithea/model/repo_permission.py Wed Jan 18 16:46:52 2017 +0100 +++ b/kallithea/model/repo_permission.py Wed Jan 18 16:56:26 2017 +0100 @@ -26,7 +26,7 @@ import logging from kallithea.model.base import BaseModel from kallithea.model.db import User, UserRepoToPerm, UserGroupRepoToPerm, \ - Permission + Permission, Repository log = logging.getLogger(__name__) @@ -34,7 +34,7 @@ class RepositoryPermissionModel(BaseModel): def get_user_permission(self, repository, user): - repository = self._get_repo(repository) + repository = Repository.guess_instance(repository) user = User.guess_instance(user) return UserRepoToPerm.query() \ diff -r eb1a4c3cb76c -r d7d1e0a3850a kallithea/model/scm.py --- a/kallithea/model/scm.py Wed Jan 18 16:46:52 2017 +0100 +++ b/kallithea/model/scm.py Wed Jan 18 16:56:26 2017 +0100 @@ -310,18 +310,18 @@ return f is not None def get_followers(self, repo): - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) return self.sa.query(UserFollowing) \ .filter(UserFollowing.follows_repository == repo).count() def get_forks(self, repo): - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) return self.sa.query(Repository) \ .filter(Repository.fork == repo).count() def get_pull_requests(self, repo): - repo = self._get_repo(repo) + repo = Repository.guess_instance(repo) return self.sa.query(PullRequest) \ .filter(PullRequest.other_repo == repo) \ .filter(PullRequest.status != PullRequest.STATUS_CLOSED).count()