diff options
| author | Jenkins <jenkins@review.openstack.org> | 2015-03-30 07:36:17 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2015-03-30 07:36:17 +0000 |
| commit | d24eebf19487a365c8e517ae5b6f71daeab1a8be (patch) | |
| tree | 32d4bbc1f23719682aa5536815d68a3f32fc9811 /taskflow/patterns | |
| parent | 179854e3eee11306cb888ef669cd3728b5e5bbb5 (diff) | |
| parent | 977d19caa3a632e1cd4ed133b35d7ef274fc05d3 (diff) | |
| download | taskflow-d24eebf19487a365c8e517ae5b6f71daeab1a8be.tar.gz | |
Merge "Make the graph '_unsatisfied_requires' be a staticmethod"
Diffstat (limited to 'taskflow/patterns')
| -rw-r--r-- | taskflow/patterns/graph_flow.py | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/taskflow/patterns/graph_flow.py b/taskflow/patterns/graph_flow.py index d36a72f..bb779cb 100644 --- a/taskflow/patterns/graph_flow.py +++ b/taskflow/patterns/graph_flow.py @@ -22,7 +22,6 @@ from taskflow.types import graph as gr def _unsatisfied_requires(node, graph, *additional_provided): - """Extracts the unsatisified symbol requirements of a single node.""" requires = set(node.requires) if not requires: return requires @@ -64,6 +63,9 @@ class Flow(flow.Flow): self._graph = gr.DiGraph() self._graph.freeze() + #: Extracts the unsatisified symbol requirements of a single node. + _unsatisfied_requires = staticmethod(_unsatisfied_requires) + def link(self, u, v): """Link existing node u as a runtime dependency of existing node v.""" if not self._graph.has_node(u): @@ -153,8 +155,8 @@ class Flow(flow.Flow): provided[value].append(self._retry) for item in self._graph.nodes_iter(): - for value in _unsatisfied_requires(item, self._graph, - retry_provides): + for value in self._unsatisfied_requires(item, self._graph, + retry_provides): required[value].append(item) for value in item.provides: provided[value].append(item) @@ -168,8 +170,8 @@ class Flow(flow.Flow): # Try to find a valid provider. if resolve_requires: - for value in _unsatisfied_requires(item, tmp_graph, - retry_provides): + for value in self._unsatisfied_requires(item, tmp_graph, + retry_provides): if value in provided: providers = provided[value] if len(providers) > 1: @@ -232,7 +234,8 @@ class Flow(flow.Flow): retry_provides.update(self._retry.provides) g = self._get_subgraph() for item in g.nodes_iter(): - requires.update(_unsatisfied_requires(item, g, retry_provides)) + requires.update(self._unsatisfied_requires(item, g, + retry_provides)) return frozenset(requires) |
