Revision 0da5e49a snf-astakos-app/astakos/im/management/commands/astakos-quota.py

b/snf-astakos-app/astakos/im/management/commands/astakos-quota.py
80 80
        else:
81 81
            log = self.run(sync)
82 82

  
83
        qh_l, qh_c, astakos_i, diff_q, info = log
83
        qh_limits, qh_quotas, astakos_i, diff_q, info = log
84 84

  
85 85
        if list_only:
86
            self.list_quotas(qh_l, qh_c, astakos_i, info)
86
            self.list_quotas(qh_quotas, astakos_i, info)
87 87
        else:
88 88
            if verify:
89
                self.print_verify(qh_l, diff_q)
89
                self.print_verify(qh_limits, diff_q)
90 90
            if sync:
91 91
                self.print_sync(diff_q)
92 92

  
......
125 125
            logger.exception(e)
126 126
            raise CommandError("Syncing failed.")
127 127

  
128
    def list_quotas(self, qh_limits, qh_counters, astakos_initial, info):
129
        labels = ('uuid', 'email', 'resource', 'initial', 'total', 'usage')
130
        columns = (36, 30, 24, 12, 12, 12)
128
    def list_quotas(self, qh_quotas, astakos_initial, info):
129
        labels = ('uuid', 'email', 'source', 'resource', 'initial', 'total', 'usage')
130
        columns = (36, 30, 20, 24, 12, 12, 12)
131 131

  
132 132
        line = ' '.join(l.rjust(w) for l, w in zip(labels, columns))
133 133
        self.stdout.write(line + '\n')
134 134
        sep = '-' * len(line)
135 135
        self.stdout.write(sep + '\n')
136 136

  
137
        for holder, resources in qh_limits.iteritems():
138
            h_counters = qh_counters[holder]
137
        for holder, holder_quotas in qh_quotas.iteritems():
139 138
            h_initial = astakos_initial[holder]
140 139
            email = info[holder]
141
            for resource, limits in resources.iteritems():
142
                initial = str(h_initial[resource])
143
                capacity = str(limits)
144
                used = str(h_counters[resource])
145

  
146
                fields = holder, email, resource, initial, capacity, used
147
                output = []
148
                for field, width in zip(fields, columns):
149
                    s = field.rjust(width)
150
                    output.append(s)
151

  
152
                line = ' '.join(output)
153
                self.stdout.write(line + '\n')
140
            for source, source_quotas in holder_quotas.iteritems():
141
                s_initial = h_initial[source]
142
                for resource, values in source_quotas.iteritems():
143
                    initial = str(s_initial[resource])
144
                    capacity = str(values['limit'])
145
                    used = str(values['used'])
146

  
147
                    fields = holder, email, source, resource, initial, capacity, used
148
                    output = []
149
                    for field, width in zip(fields, columns):
150
                        s = field.rjust(width)
151
                        output.append(s)
152

  
153
                    line = ' '.join(output)
154
                    self.stdout.write(line + '\n')
154 155

  
155 156
    def print_sync(self, diff_quotas):
156 157
        size = len(diff_quotas)

Also available in: Unified diff