Revision b8352ce4 kamaki/cli/commands/errors.py

b/kamaki/cli/commands/errors.py
191 191
        return _raise
192 192

  
193 193
    @classmethod
194
    def cluster_size(this, foo):
195
        def _raise(self, *args, **kwargs):
196
            size = kwargs.get('size', None)
197
            try:
198
                size = int(size)
199
                assert size > 0, 'Cluster size must be a positive integer'
200
                return foo(self, *args, **kwargs)
201
            except ValueError as ve:
202
                msg = 'Invalid cluster size value %s' % size
203
                raiseCLIError(ve, msg, importance=1, details=[
204
                    'Cluster size must be a positive integer'])
205
            except AssertionError as ae:
206
                raiseCLIError(
207
                    ae, 'Invalid cluster size %s' % size, importance=1)
208
            except ClientError:
209
                raise
210
        return _raise
211

  
212
    @classmethod
194 213
    def network_id(this, foo):
195 214
        def _raise(self, *args, **kwargs):
196 215
            network_id = kwargs.get('network_id', None)

Also available in: Unified diff