Package coprs :: Package logic :: Module dist_git_logic
[hide private]
[frames] | no frames]

Source Code for Module coprs.logic.dist_git_logic

 1  from sqlalchemy import desc 
 2  from coprs import models 
3 4 5 -class DistGitLogic:
6 @classmethod
7 - def ordered(cls):
8 'get the default dist git instance object' 9 query = models.DistGitInstance.query 10 return query.order_by(desc('priority'), 'name')
11 12 @classmethod
13 - def get_with_default(cls, distgit_name=None):
14 if distgit_name is None: 15 return cls.ordered().limit(1).one() 16 query = models.DistGitInstance.query.filter_by(name=distgit_name) 17 return query.one()
18 19 @classmethod
20 - def get_clone_url(cls, distgit_name, package_name, namespace=None):
21 """ 22 Using the DistGit instance name, package name and namespace, generate 23 and return the appropriate git clone URL 24 """ 25 distgit = cls.get_with_default(distgit_name) 26 return distgit.package_clone_url(package_name, namespace)
27