diff options
| author | J08nY | 2017-08-07 19:00:49 +0200 |
|---|---|---|
| committer | J08nY | 2017-08-07 19:00:49 +0200 |
| commit | ee9da27283ffb7adc836f764f1442cd06e3fb2a5 (patch) | |
| tree | 2b687f39714580b1de70baf9e3dd9957326c4989 /src/mailman/model/workflow.py | |
| parent | d107fd41f03b57f7731b60bb7ba921febc3ce3b9 (diff) | |
| parent | b902d7858d8302d248add89a5983c521c3581c4c (diff) | |
| download | mailman-plugin.tar.gz mailman-plugin.tar.zst mailman-plugin.zip | |
Diffstat (limited to 'src/mailman/model/workflow.py')
| -rw-r--r-- | src/mailman/model/workflow.py | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/src/mailman/model/workflow.py b/src/mailman/model/workflow.py deleted file mode 100644 index 3ca3412a6..000000000 --- a/src/mailman/model/workflow.py +++ /dev/null @@ -1,71 +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 <http://www.gnu.org/licenses/>. - -"""Model for workflow states.""" - -from mailman.database.model import Model -from mailman.database.transaction import dbconnection -from mailman.database.types import SAUnicode -from mailman.interfaces.workflow import IWorkflowState, IWorkflowStateManager -from public import public -from sqlalchemy import Column -from zope.interface import implementer - - -@public -@implementer(IWorkflowState) -class WorkflowState(Model): - """Workflow states.""" - - __tablename__ = 'workflowstate' - - token = Column(SAUnicode, primary_key=True) - step = Column(SAUnicode) - data = Column(SAUnicode) - - -@public -@implementer(IWorkflowStateManager) -class WorkflowStateManager: - """See `IWorkflowStateManager`.""" - - @dbconnection - def save(self, store, token, step=None, data=None): - """See `IWorkflowStateManager`.""" - state = WorkflowState(token=token, step=step, data=data) - store.add(state) - - @dbconnection - def restore(self, store, token): - """See `IWorkflowStateManager`.""" - state = store.query(WorkflowState).get(token) - if state is not None: - store.delete(state) - return state - - @dbconnection - def discard(self, store, token): - """See `IWorkflowStateManager`.""" - state = store.query(WorkflowState).get(token) - if state is not None: - store.delete(state) - - @property - @dbconnection - def count(self, store): - """See `IWorkflowStateManager`.""" - return store.query(WorkflowState).count() |
