karbor.services.protection.graph Module¶karbor.services.protection.graph.FoundLoopError¶Bases: exceptions.RuntimeError
karbor.services.protection.graph.GraphNode(value, child_nodes)¶Bases: tuple
child_nodes¶Alias for field number 1
value¶Alias for field number 0
karbor.services.protection.graph.GraphWalker¶Bases: object
register_listener(graph_walker_listener)¶unregister_listener(graph_walker_listener)¶walk_graph(source_nodes)¶karbor.services.protection.graph.GraphWalkerListener¶Bases: object
Interface for listening to GraphWaler events
Classes that want to be able to use the graph walker to iterate over a graph should implement this interface.
on_node_enter(node, already_visited)¶on_node_exit(node)¶karbor.services.protection.graph.PackGraphWalker(adjacency_list, nodes_dict)¶Bases: karbor.services.protection.graph.GraphWalkerListener
Pack a list of GraphNode
Allocate a serialized id (sid) for every node and build an adjacency list, suitable for graph unpacking.
on_node_enter(node, already_visited)¶on_node_exit(node)¶karbor.services.protection.graph.PackedGraph(nodes, adjacency)¶Bases: tuple
adjacency¶Alias for field number 1
nodes¶Alias for field number 0
karbor.services.protection.graph.build_graph(start_nodes, get_child_nodes_func)¶karbor.services.protection.graph.deserialize_resource_graph(serialized_resource_graph)¶karbor.services.protection.graph.pack_graph(start_nodes)¶Return a PackedGraph from a list of GraphNodes
Packs a graph into a flat PackedGraph (nodes dictionary, adjacency list).
karbor.services.protection.graph.serialize_resource_graph(resource_graph)¶karbor.services.protection.graph.unpack_graph(packed_graph)¶Return a list of GraphNodes from a PackedGraph
Unpacks a PackedGraph, which must have the property: each parent node in the adjacency list appears after its children.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.