|
- from http import HTTPStatus
- from typing import Any, Optional, Union
-
- import httpx
-
- from ... import errors
- from ...client import AuthenticatedClient, Client
- from ...models.remove_item import RemoveItem
- from ...types import Response
-
-
- def _get_kwargs(
- *,
- body: RemoveItem,
- ) -> dict[str, Any]:
- headers: dict[str, Any] = {}
-
- _kwargs: dict[str, Any] = {
- "method": "post",
- "url": "/removeSubject",
- }
-
- _kwargs["json"] = body.to_dict()
-
- headers["Content-Type"] = "application/json"
-
- _kwargs["headers"] = headers
- return _kwargs
-
-
- def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Optional[Any]:
- if response.status_code == 201:
- return None
- if response.status_code == 400:
- return None
- if response.status_code == 409:
- return None
- if client.raise_on_unexpected_status:
- raise errors.UnexpectedStatus(response.status_code, response.content)
- else:
- return None
-
-
- def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Any]:
- return Response(
- status_code=HTTPStatus(response.status_code),
- content=response.content,
- headers=response.headers,
- parsed=_parse_response(client=client, response=response),
- )
-
-
- def sync_detailed(
- *,
- client: Union[AuthenticatedClient, Client],
- body: RemoveItem,
- ) -> Response[Any]:
- """Remove a subject item
-
- Remove a subject
-
- Args:
- body (RemoveItem): Item to be removed
-
- Raises:
- errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
- httpx.TimeoutException: If the request takes longer than Client.timeout.
-
- Returns:
- Response[Any]
- """
-
- kwargs = _get_kwargs(
- body=body,
- )
-
- response = client.get_httpx_client().request(
- **kwargs,
- )
-
- return _build_response(client=client, response=response)
-
-
- async def asyncio_detailed(
- *,
- client: Union[AuthenticatedClient, Client],
- body: RemoveItem,
- ) -> Response[Any]:
- """Remove a subject item
-
- Remove a subject
-
- Args:
- body (RemoveItem): Item to be removed
-
- Raises:
- errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
- httpx.TimeoutException: If the request takes longer than Client.timeout.
-
- Returns:
- Response[Any]
- """
-
- kwargs = _get_kwargs(
- body=body,
- )
-
- response = await client.get_async_httpx_client().request(**kwargs)
-
- return _build_response(client=client, response=response)
|