Skip to main content
Glama
user_manager.py3.06 kB
""" Example Python module for testing deep code analysis """ from typing import List, Optional, Dict from dataclasses import dataclass @dataclass class User: """ Represents a user in the system. Attributes: id: Unique user identifier name: User's full name email: User's email address """ id: int name: str email: str active: bool = True def get_display_name(self) -> str: """ Returns a formatted display name for the user. Returns: Formatted name string """ return f"{self.name} <{self.email}>" @staticmethod def validate_email(email: str) -> bool: """ Validates an email address. Args: email: Email address to validate Returns: True if valid, False otherwise """ return "@" in email and "." in email class UserManager: """ Manages user operations in the application. This class provides methods for creating, updating, and retrieving users. """ def __init__(self, database_url: str): """ Initialize the UserManager. Args: database_url: URL of the database connection """ self.database_url = database_url self.users: Dict[int, User] = {} def create_user(self, name: str, email: str) -> User: """ Create a new user. Args: name: User's full name email: User's email address Returns: Created User object Raises: ValueError: If email is invalid """ if not User.validate_email(email): raise ValueError("Invalid email address") user_id = len(self.users) + 1 user = User(id=user_id, name=name, email=email) self.users[user_id] = user return user async def fetch_user(self, user_id: int) -> Optional[User]: """ Fetch a user by ID asynchronously. Args: user_id: ID of the user to fetch Returns: User object if found, None otherwise """ return self.users.get(user_id) def list_active_users(self) -> List[User]: """Get all active users""" return [user for user in self.users.values() if user.active] def format_user_list(users: List[User]) -> str: """ Format a list of users as a string. Args: users: List of User objects Returns: Formatted string representation """ return "\n".join(user.get_display_name() for user in users) async def send_notification(user: User, message: str) -> bool: """ Send a notification to a user. Args: user: User to notify message: Notification message Returns: True if sent successfully """ print(f"Sending to {user.email}: {message}") return True

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/LiL-Loco/documentation-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server