Рефакторинг. docstring
This commit is contained in:
parent
060f4de175
commit
37f9e3abfb
14 changed files with 1234 additions and 243 deletions
|
|
@ -8,7 +8,23 @@ ip_service = IPService()
|
|||
|
||||
@router.post("/check_ip")
|
||||
async def check_ip_config(data: Dict[str, Any] = Body(...)):
|
||||
"""Проверяет доступность IP-адреса"""
|
||||
"""Проверяет доступность IP-адреса перед его применением.
|
||||
|
||||
Выполняет ARP-сканирование для проверки, занят ли указанный IP-адрес,
|
||||
и возвращает результат проверки.
|
||||
|
||||
Args:
|
||||
data (Dict[str, Any]): Словарь с данными конфигурации, включая
|
||||
"ipv4_updates" с полем "ipv4.address-data" для нового IP-адреса.
|
||||
|
||||
Returns:
|
||||
Dict[str, Any]: Словарь с ключами:
|
||||
- "available" (bool): Доступен ли IP-адрес.
|
||||
- "message" (str): Сообщение о результате проверки.
|
||||
|
||||
Raises:
|
||||
HTTPException: Если произошла внутренняя ошибка (status_code=500).
|
||||
"""
|
||||
try:
|
||||
result = await ip_service.check_ip_config(data)
|
||||
return result
|
||||
|
|
@ -20,37 +36,63 @@ async def check_ip_config(data: Dict[str, Any] = Body(...)):
|
|||
|
||||
@router.post("/apply_ip")
|
||||
async def apply_ip_config(data: Dict[str, Any] = Body(...)):
|
||||
"""Применяет проверенные IP-настройки"""
|
||||
"""Применяет проверенные IP-настройки к указанному сетевому профилю.
|
||||
|
||||
Обновляет настройки соединения через NetworkManager, отключает и
|
||||
переподключает устройство к сети.
|
||||
|
||||
Args:
|
||||
data (Dict[str, Any]): Словарь с данными конфигурации, включая
|
||||
"connection_id" и "ipv4_updates" с обновлениями IP-настроек.
|
||||
|
||||
Returns:
|
||||
dict: Словарь с ключами:
|
||||
- "success" (bool): Успешность операции.
|
||||
- "message" (str): Сообщение об успешном применении настроек.
|
||||
|
||||
Raises:
|
||||
HTTPException: Если подключение не найдено (status_code=404) или
|
||||
произошла внутренняя ошибка (status_code=500).
|
||||
"""
|
||||
try:
|
||||
await ip_service.apply_ip_config(data)
|
||||
return {
|
||||
"success":
|
||||
True,
|
||||
"message":
|
||||
f"Настройки сетевого профиля для {data['connection_id']} применены",
|
||||
"success": True,
|
||||
"message": f"Настройки сетевого профиля для {data['connection_id']} применены",
|
||||
}
|
||||
except ValueError as e:
|
||||
raise HTTPException(status_code=404, detail=str(e))
|
||||
except Exception as e:
|
||||
raise HTTPException(
|
||||
status_code=500,
|
||||
detail=f"Ошибка проверки IP конфигурации: {str(e)}")
|
||||
raise HTTPException(status_code=500, detail=f"Ошибка проверки IP конфигурации: {str(e)}")
|
||||
|
||||
|
||||
@router.post("/save_ip")
|
||||
async def save_ip_config(data: Dict[str, Any] = Body(...)):
|
||||
"""Применяет проверенные IP-настройки (Нужен для того, чтобы откатить настройки сетевого профиля обратно)"""
|
||||
"""Применяет проверенные IP-настройки для отката сетевого профиля.
|
||||
|
||||
Используется для сохранения и отката настроек сетевого профиля к предыдущему
|
||||
состоянию через NetworkManager.
|
||||
|
||||
Args:
|
||||
data (Dict[str, Any]): Словарь с данными конфигурации, включая
|
||||
"connection_id" и "ipv4_updates" с обновлениями IP-настроек.
|
||||
|
||||
Returns:
|
||||
dict: Словарь с ключами:
|
||||
- "success" (bool): Успешность операции.
|
||||
- "message" (str): Сообщение об успешном применении настроек.
|
||||
|
||||
Raises:
|
||||
HTTPException: Если подключение не найдено (status_code=404) или
|
||||
произошла внутренняя ошибка (status_code=500).
|
||||
"""
|
||||
try:
|
||||
await ip_service.apply_ip_config(data)
|
||||
return {
|
||||
"success":
|
||||
True,
|
||||
"message":
|
||||
f"Настройки сетевого профиля для {data['connection_id']} применены",
|
||||
"success": True,
|
||||
"message": f"Настройки сетевого профиля для {data['connection_id']} применены",
|
||||
}
|
||||
except ValueError as e:
|
||||
raise HTTPException(status_code=404, detail=str(e))
|
||||
except Exception as e:
|
||||
raise HTTPException(
|
||||
status_code=500,
|
||||
detail=f"Ошибка проверки IP конфигурации: {str(e)}")
|
||||
raise HTTPException(status_code=500, detail=f"Ошибка проверки IP конфигурации: {str(e)}")
|
||||
Loading…
Add table
Add a link
Reference in a new issue