Skip to content

Commit

Permalink
Added documentation functions
Browse files Browse the repository at this point in the history
  • Loading branch information
bramenn committed May 3, 2023
1 parent c63db29 commit 1475bb3
Showing 1 changed file with 36 additions and 10 deletions.
46 changes: 36 additions & 10 deletions menuflow/flow.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,29 +38,55 @@ def flow_variables(self) -> Dict:
return self.data.get("flow_variables", {})

def get_node_by_id(self, node_id: str) -> Dict | None:
node = self.nodes_by_id.get(node_id)
if node:
return node
"""This function returns a node from a cache or a list of nodes based on its ID.
Parameters
----------
node_id : str
The ID of the node that we want to retrieve from the graph.
Returns
-------
This function returns a dictionary object representing a node in a graph, or `None`
if the node with the given ID is not found.
"""

try:
return self.nodes_by_id[node_id]
except KeyError:
pass

for node in self.nodes:
if node_id == node.get("id", ""):
self._add_node_to_cache(node)
return node

return None

def get_middleware_by_id(self, middleware_id: str) -> Dict | None:
middleware = self.middlewares_by_id.get(middleware_id)
if middleware:
return middleware
"""This function retrieves a middleware by its ID from a cache or a list of middlewares.
Parameters
----------
middleware_id : str
A string representing the ID of the middleware that needs to be retrieved.
Returns
-------
This function returns a dictionary object representing a middleware in a graph, or `None`
if the node with the given ID is not found.
"""

try:
return self.middlewares_by_id[middleware_id]
except KeyError:
pass

for middleware in self.middlewares:
if middleware_id == middleware.get("id", ""):
self._add_middleware_to_cache(middleware)
return middleware

return None

def middleware(self, middleware_id: str, room: Room) -> HTTPMiddleware:
middleware_data = self.get_middleware_by_id(middleware_id=middleware_id)

Expand Down

0 comments on commit 1475bb3

Please sign in to comment.