Пример #1
0
def account_add(args, manager):

    if args.accountdata is not None:
        account_data = json.loads(args.accountdata)
        if isinstance(account_data, dict):
            if account_data.has_key('account_id'):
                account_id = account_data['account_id']
            else:
                raise InputError(
                    "account argument must contain key account_id")

            if account_data.has_key('account_description'):
                account_description = account_data['account_description']
            else:
                account_description = None

            if account_data.has_key('provisioning_description'):
                provisioning_description = account_data[
                    'provisioning_description']
            else:
                provisioning_description = None

            if account_data.has_key('account_properties'):
                if isinstance(account_data['account_properties'], dict):
                    account_properties = account_data['account_properties']
                else:
                    account_properties = None
            else:
                account_properties = None
        else:
            raise InputError("Invalid format of account argument.")
    else:
        raise InputError("Account is required argument for this action.")

    account_to_create = AtomiaAccount(
        account_id=account_id,
        account_description=account_description,
        account_properties=account_properties,
        provisioning_description=provisioning_description)

    manager.add_account([account_to_create.to_xml_friendly_object()])

    accounts_result = manager.get_account(account_id)

    if accounts_result.has_key("GetAccountResult") and len(
            accounts_result["GetAccountResult"].children()) > 0:
        account_result = AtomiaAccount()
        account_result.from_simplexml(accounts_result["GetAccountResult"])
        account_result.print_me()
        return account_result
    else:
        raise Exception("Could not find any account with number " + account_id)
Пример #2
0
def account_show(args, manager):

    accounts_result = manager.get_account(args.account)

    if accounts_result.has_key("GetAccountResult") and accounts_result["GetAccountResult"].children() is not None and len(accounts_result["GetAccountResult"].children()) > 0:
        account_result = AtomiaAccount()
        account_result.from_simplexml(accounts_result["GetAccountResult"])
        account_result.print_me()
        return account_result
    else:
        result = "{\n\t\"error\": \"don't exist\"\n}"
	print result
        return result
Пример #3
0
def account_show(args, manager):

    accounts_result = manager.get_account(args.account)

    if accounts_result.has_key("GetAccountResult") and accounts_result[
            "GetAccountResult"].children() is not None and len(
                accounts_result["GetAccountResult"].children()) > 0:
        account_result = AtomiaAccount()
        account_result.from_simplexml(accounts_result["GetAccountResult"])
        account_result.print_me()
        return account_result
    else:
        result = "{\n\t\"error\": \"don't exist\"\n}"
        print result
        return result
Пример #4
0
def account_add(args, manager):
    
    if args.accountdata is not None:
        account_data = json.loads(args.accountdata)
        if isinstance(account_data, dict):
            if account_data.has_key('account_id'):
                account_id = account_data['account_id']
            else:
                raise InputError("account argument must contain key account_id")
            
            if account_data.has_key('account_description'):
                account_description = account_data['account_description']
            else:
                account_description = None
                
            if account_data.has_key('provisioning_description'):
                provisioning_description = account_data['provisioning_description']
            else:
                provisioning_description = None
            
            if account_data.has_key('account_properties'):
                if isinstance(account_data['account_properties'], dict):
                    account_properties = account_data['account_properties']
                else:
                    account_properties = None
            else:
                account_properties = None
        else:
            raise InputError("Invalid format of account argument.")
    else:
        raise InputError("Account is required argument for this action.")
    
    account_to_create = AtomiaAccount(account_id = account_id, account_description = account_description, account_properties = account_properties, provisioning_description = provisioning_description)
    
    manager.add_account([account_to_create.to_xml_friendly_object()])
    
    accounts_result = manager.get_account(account_id)
    
    if accounts_result.has_key("GetAccountResult") and len(accounts_result["GetAccountResult"].children()) > 0:
        account_result = AtomiaAccount()
        account_result.from_simplexml(accounts_result["GetAccountResult"])
        account_result.print_me()
        return account_result
    else:
        raise Exception("Could not find any account with number " + account_id)