Skip to content
Snippets Groups Projects
Commit cb2d99a6 authored by Karel van Klink's avatar Karel van Klink :smiley_cat:
Browse files

convert google-style docstrings to pydoc strings

parent 3a6fa164
No related branches found
No related tags found
1 merge request!80Feature/update documentation
This commit is part of merge request !80. Comments created here will be created in the context of that merge request.
from typing import Any, Dict
from typing import Any
from uuid import UUID
from fastapi import Depends, HTTPException, status
......@@ -30,20 +30,16 @@ def _start_process(process_name: str, data: dict) -> UUID:
@router.post("/sites", status_code=status.HTTP_201_CREATED, response_model=ImportResponseModel)
def import_site(site: SiteImportModel) -> Dict[str, Any]:
def import_site(site: SiteImportModel) -> dict[str, Any]:
"""Import a site by running the import_site workflow.
Args:
-----
site (SiteImportModel): The site information to be imported.
:param site: The site information to be imported.
:type site: SiteImportModel
Returns:
--------
dict: A dictionary containing the process id of the started process and detail message.
:return: A dictionary containing the process id of the started process and detail message.
:rtype: dict[str, Any]
Raises:
-------
HTTPException: If the site already exists or if there's an error in the process.
:raises HTTPException: If the site already exists or if there's an error in the process.
"""
try:
subscription = subscriptions.retrieve_subscription_by_subscription_instance_value(
......@@ -59,20 +55,16 @@ def import_site(site: SiteImportModel) -> Dict[str, Any]:
@router.post("/routers", status_code=status.HTTP_201_CREATED, response_model=ImportResponseModel)
def import_router(router_data: RouterImportModel) -> Dict[str, Any]:
def import_router(router_data: RouterImportModel) -> dict[str, Any]:
"""Import a router by running the import_router workflow.
Args:
-----
router_data (RouterImportModel): The router information to be imported.
:param router_data: The router information to be imported.
:type router_data: RouterImportModel
Returns:
--------
dict: A dictionary containing the process id of the started process and detail message.
:return: A dictionary containing the process id of the started process and detail message.
:rtype: dict[str, Any]
Raises:
-------
HTTPException: If there's an error in the process.
:raises HTTPException: If there's an error in the process.
"""
pid = _start_process("import_router", router_data.dict())
......@@ -80,20 +72,16 @@ def import_router(router_data: RouterImportModel) -> Dict[str, Any]:
@router.post("/iptrunks", status_code=status.HTTP_201_CREATED, response_model=ImportResponseModel)
def import_iptrunk(iptrunk_data: IptrunkImportModel) -> Dict[str, Any]:
def import_iptrunk(iptrunk_data: IptrunkImportModel) -> dict[str, Any]:
"""Import an iptrunk by running the import_iptrunk workflow.
Args:
-----
iptrunk_data (IptrunkImportModel): The iptrunk information to be imported.
:param iptrunk_data: The iptrunk information to be imported.
:type iptrunk_data: IptrunkImportModel
Returns:
--------
dict: A dictionary containing the process id of the started process and detail message.
:return: A dictionary containing the process id of the started process and detail message.
:rtype: dict[str, Any]
Raises:
-------
HTTPException: If there's an error in the process.
:raises HTTPException: If there's an error in the process.
"""
pid = _start_process("import_iptrunk", iptrunk_data.dict())
......
......@@ -18,14 +18,13 @@ def get_active_subscriptions(
) -> list[Subscription]:
"""Retrieve active subscriptions for a specific product type.
Args:
-----
product_type (str): The type of the product for which to retrieve subscriptions.
fields (list[str]): List of fields to be included in the returned Subscription objects.
Returns:
--------
list[Subscription]: A list of Subscription objects that match the query.
:param product_type: The type of the product for which to retrieve subscriptions.
:type product_type: str
:param fields: List of fields to be included in the returned Subscription objects.
:type fields: list[str]
:return: A list of Subscription objects that match the query.
:rtype: list[Subscription]
"""
dynamic_fields = [getattr(SubscriptionTable, field) for field in fields]
......@@ -43,13 +42,11 @@ def get_active_subscriptions(
def get_active_site_subscriptions(fields: list[str]) -> list[Subscription]:
"""Retrieve active subscriptions specifically for sites.
Args:
-----
fields (list[str]): The fields to be included in the returned Subscription objects.
:param fields: The fields to be included in the returned Subscription objects.
:type fields: list[str]
Returns:
--------
list[Subscription]: A list of Subscription objects for sites.
:return: A list of Subscription objects for sites.
:rtype: list[Subscription]
"""
return get_active_subscriptions(ProductType.SITE, fields)
......@@ -57,13 +54,11 @@ def get_active_site_subscriptions(fields: list[str]) -> list[Subscription]:
def get_active_router_subscriptions(fields: list[str]) -> list[Subscription]:
"""Retrieve active subscriptions specifically for routers.
Args:
-----
fields (list[str]): The fields to be included in the returned Subscription objects.
:param fields: The fields to be included in the returned Subscription objects.
:type fields: list[str]
Returns:
--------
list[Subscription]: A list of Subscription objects for routers.
:return: A list of Subscription objects for routers.
:rtype: list[Subscription]
"""
return get_active_subscriptions(product_type=ProductType.ROUTER, fields=fields)
......@@ -71,13 +66,11 @@ def get_active_router_subscriptions(fields: list[str]) -> list[Subscription]:
def get_product_id_by_name(product_name: ProductType) -> UUID:
"""Retrieve the :term:`UUID` of a product by its name.
Args:
-----
product_name (ProductType): The name of the product.
:param product_name: The name of the product.
:type product_name: ProductType
Returns:
--------
:term:`UUID`: The :term:`UUID` of the product.
:return UUID: The :term:`UUID` of the product.
:rtype: UUID
"""
return ProductTable.query.filter_by(name=product_name).first().product_id
......@@ -85,13 +78,11 @@ def get_product_id_by_name(product_name: ProductType) -> UUID:
def get_active_site_subscription_by_name(site_name: str) -> Subscription:
"""Retrieve an active subscription for a site by the site's name.
Args:
-----
site_name (str): The name of the site for which to retrieve the subscription.
:param site_name: The name of the site for which to retrieve the subscription.
:type site_name: str
Returns:
--------
Subscription: The Subscription object for the site.
:return: The Subscription object for the site.
:rtype: Subscription
"""
return (
SubscriptionTable.query.join(ProductTable)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment