summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/toaster/orm/models.py
diff options
context:
space:
mode:
authorMichael Wood <michael.g.wood@intel.com>2015-11-04 14:48:54 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-02-10 13:29:16 +0000
commit648753b30d494268bdb1cd3ea07afd6a88633c5b (patch)
tree8d8eaab28283c5ffbf9bcc6fa9522f1a6a93f62e /bitbake/lib/toaster/orm/models.py
parenta92fc3025b12bf7e794745c05c8567cc491bb073 (diff)
downloadpoky-648753b30d494268bdb1cd3ea07afd6a88633c5b.tar.gz
bitbake: toaster: orm Add sum of dependencies size function to PackageDependencyManager
Add function that returns the Sum of the size of all the packages which depend on a package. Access get_total_source_deps_size via a packages's dependency manager. (Bitbake rev: e4c86d2f6c2e86ad054b37d0a5bf7464a4de4f9a) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/toaster/orm/models.py')
-rw-r--r--bitbake/lib/toaster/orm/models.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/bitbake/lib/toaster/orm/models.py b/bitbake/lib/toaster/orm/models.py
index 9c573bf003..37f78d7102 100644
--- a/bitbake/lib/toaster/orm/models.py
+++ b/bitbake/lib/toaster/orm/models.py
@@ -20,7 +20,7 @@
20# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 20# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
21 21
22from django.db import models, IntegrityError 22from django.db import models, IntegrityError
23from django.db.models import F, Q, Avg, Max 23from django.db.models import F, Q, Avg, Max, Sum
24from django.utils import timezone 24from django.utils import timezone
25 25
26from django.core.urlresolvers import reverse 26from django.core.urlresolvers import reverse
@@ -727,6 +727,12 @@ class Package_DependencyManager(models.Manager):
727 def get_queryset(self): 727 def get_queryset(self):
728 return super(Package_DependencyManager, self).get_queryset().exclude(package_id = F('depends_on__id')) 728 return super(Package_DependencyManager, self).get_queryset().exclude(package_id = F('depends_on__id'))
729 729
730 def get_total_source_deps_size(self):
731 """ Returns the total file size of all the packages that depend on
732 thispackage.
733 """
734 return self.all().aggregate(Sum('depends_on__size'))
735
730class Package_Dependency(models.Model): 736class Package_Dependency(models.Model):
731 TYPE_RDEPENDS = 0 737 TYPE_RDEPENDS = 0
732 TYPE_TRDEPENDS = 1 738 TYPE_TRDEPENDS = 1