Merge "Fix order creation on the command line"

This commit is contained in:
Jenkins
2015-03-30 18:49:13 +00:00
committed by Gerrit Code Review
2 changed files with 11 additions and 1 deletions

View File

@@ -27,6 +27,8 @@ class CreateOrder(show.ShowOne):
parser = super(CreateOrder, self).get_parser(prog_name)
parser.add_argument('--name', '-n',
help='a human-friendly name.')
parser.add_argument('--type', '-p',
help='the type of the order to create.')
parser.add_argument('--algorithm', '-a', default='aes',
help='the algorithm to be used with the '
'requested key (default: '
@@ -49,7 +51,8 @@ class CreateOrder(show.ShowOne):
def take_action(self, args):
entity = self.app.client.orders.create(
name=args.name, payload_content_type=args.payload_content_type,
name=args.name, type=args.type,
payload_content_type=args.payload_content_type,
algorithm=args.algorithm, bit_length=args.bit_length,
mode=args.mode, expiration=args.expiration)
entity.submit()

View File

@@ -335,6 +335,13 @@ class OrderManager(base.BaseEntityManager):
else:
raise TypeError('Unknown Order type "{0}"'.format(order_type))
def create(self, type=None, **kwargs):
order_type = self._order_type_to_class_map.get(type.lower())
if order_type is not None:
return order_type(self._api, **kwargs)
else:
raise TypeError('Unknown Order type "{0}"'.format(type))
def create_key(self, name=None, algorithm=None, bit_length=None, mode=None,
payload_content_type=None, expiration=None):
"""