Revision e311d555 snf-astakos-app/astakos/quotaholder/exception.py

b/snf-astakos-app/astakos/quotaholder/exception.py
51 51
class CommissionException(QuotaholderError):
52 52
    data = {}
53 53

  
54
    def add_data(self, kwargs, key):
55
        value = kwargs.pop(key, None)
56
        if value is not None:
57
            self.data[key] = value
58

  
54 59
    def __init__(self, *args, **kwargs):
55 60
        self.data['name'] = self.__class__.__name__
56

  
57
        provision = kwargs.pop('provision', None)
58
        if provision is not None:
59
            self.data['provision'] = provision
61
        self.add_data(kwargs, 'provision')
60 62

  
61 63
        QuotaholderError.__init__(self, *args, **kwargs)
62 64

  
63 65

  
64 66
class NoCapacityError(CommissionException):
65 67
    def __init__(self, *args, **kwargs):
66
        available = kwargs.pop('available', None)
67
        if available is not None:
68
            self.data['available'] = available
69

  
68
        self.add_data(kwargs, 'usage')
69
        self.add_data(kwargs, 'limit')
70 70
        CommissionException.__init__(self, *args, **kwargs)
71 71

  
72 72

  
73 73
class NoQuantityError(CommissionException):
74 74
    def __init__(self, *args, **kwargs):
75
        available = kwargs.pop('available', None)
76
        if available is not None:
77
            self.data['available'] = available
78

  
75
        self.add_data(kwargs, 'available')
79 76
        CommissionException.__init__(self, *args, **kwargs)
80 77

  
81 78

  

Also available in: Unified diff