From 8b09113eb40c39ada3dc902cb4e869c8f012c97d Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 29 Jun 2017 23:51:47 +0200 Subject: Create mailman.workflows package. Move base Workflow there. - Also introduce IWorkflow, ISubscriptionWorkflow, IUnsubscriptionWorkflow. --- src/mailman/interfaces/workflow.py | 67 -------------------------------------- 1 file changed, 67 deletions(-) delete mode 100644 src/mailman/interfaces/workflow.py (limited to 'src/mailman/interfaces/workflow.py') diff --git a/src/mailman/interfaces/workflow.py b/src/mailman/interfaces/workflow.py deleted file mode 100644 index 5b3582b58..000000000 --- a/src/mailman/interfaces/workflow.py +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright (C) 2015-2017 by the Free Software Foundation, Inc. -# -# This file is part of GNU Mailman. -# -# GNU Mailman is free software: you can redistribute it and/or modify it under -# the terms of the GNU General Public License as published by the Free -# Software Foundation, either version 3 of the License, or (at your option) -# any later version. -# -# GNU Mailman is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. -# -# You should have received a copy of the GNU General Public License along with -# GNU Mailman. If not, see . - -"""Interfaces describing the state of a workflow.""" - -from public import public -from zope.interface import Attribute, Interface - - -@public -class IWorkflowState(Interface): - """The state of a workflow.""" - - token = Attribute('A unique key identifying the workflow instance.') - - step = Attribute("This workflow's next step.") - - data = Attribute('Additional data (may be JSON-encoded).') - - -@public -class IWorkflowStateManager(Interface): - """The workflow states manager.""" - - def save(token, step, data=None): - """Save the state of a workflow. - - :param token: A unique token identifying this workflow instance. - :type token: str - :param step: The next step for this workflow. - :type step: str - :param data: Additional data (workflow-specific). - :type data: str - """ - - def restore(token): - """Get the saved state for a workflow or None if nothing was saved. - - :param token: A unique token identifying this workflow instance. - :type token: str - :return: The saved state associated with this name/token pair, or None - if the pair isn't in the database. - :rtype: ``IWorkflowState`` - """ - - def discard(token): - """Throw away the saved state for a workflow. - - :param token: A unique token identifying this workflow instance. - :type token: str - """ - - count = Attribute('The number of saved workflows in the database.') -- cgit v1.2.3-70-g09d2