def delete(workspace, user): """ Delete a workspace and its permissions. Args: workspace: Returns: """ permission_api.delete_permission(workspace.read_perm_id) permission_api.delete_permission(workspace.write_perm_id) workspace.delete()
def delete(workspace, user): """Delete a workspace and its permissions. Args: workspace: Returns: """ # Can't delete a global workspace if workspace.is_global: raise exceptions.ModelError("The global workspace can not be deleted.") permission_api.delete_permission(workspace.read_perm_id) permission_api.delete_permission(workspace.write_perm_id) workspace.delete()
def create_and_save(title, owner_id=None, is_public=False): """ Create and save a workspace. It will also create permissions. Args: owner_id title is_public Returns: """ workspace = _create_workspace(title, owner_id, is_public) try: return workspace.save() except Exception as ex: # Rollback permissions permission_api.delete_permission(workspace.read_perm_id) permission_api.delete_permission(workspace.write_perm_id) raise exceptions.ModelError(ex.message)