Source code for eclypse.builders.application.sock_shop.rest_services.user
"""The `UserService` class.
It manages all user-related functionality, including registration,\
authentication, and profile management.
- Key Responsibilities:
- Handles user sign-up, login, and logout processes.
- Manages user data, including credentials, personal information, and addresses.
"""
from eclypse.remote.communication import rest
from eclypse.remote.service import RESTService
from eclypse.utils import format_log_kv
[docs]
class UserService(RESTService):
"""REST endpoints for the User service."""
[docs]
@rest.endpoint("/user", "GET")
def get_catalog(self, user_id: int, **_):
"""Get the user's profile information.
Args:
user_id (int): The user's ID.
Returns:
int: The HTTP status code.
dict: The response body.
Example:
.. code-block:: python
(
200,
{
"user_id": 12345,
"name": "John Doe",
"email": "john@example.com",
"address": "123 Main St",
"phone": "555-1234",
},
)
"""
self.logger.info("Received request | " + format_log_kv(user_id=user_id))
return 200, {
"user_id": user_id,
"name": "John Doe",
"email": "john@example.com",
"address": "123 Main St",
"phone": "555-1234",
}