code: def add_permission(self, permission):
          
          if 'permissions' not in self.data:
              self.data['superuser'] = False
              self.data['permissions'] = {'permission':[]}
          
          for p in permission:
              self.data['permissions']['permission'].append(p.data)
          self.update()
docs: Add a permission to this Admin User. A role defines permissions that
          can be enabled or disabled. Elements define the target for permission
          operations and can be either Access Control Lists, Engines or Policy
          elements. Domain specifies where the access is granted. The Shared
          Domain is default unless specific domain provided. Change is committed
          at end of method call.
          
          :param permission: permission/s to add to admin user
          :type permission: list(Permission)
          :raises UpdateElementFailed: failed updating admin user
          :return: None