from lib.services.cloud_blueprint.projects_client import ProjectsClientInterface
from lib.api_schema.response.flava_services.cloud_blueprint.v1_0 import (
    projects as schema,
)


class FlavaProjectsClient(ProjectsClientInterface):
    """Service client for the Flava Cloud Blueprint Projects API.

    This client provides the schema and path to each API endpoint for dependency
    injection.
    """

    def get_schema(self):
        """Provide the response schema of the Projects API."""
        return schema

    def get_projects_path(self):
        """Provide the API endpoint path for creating projects."""
        return "/api/v1/projects"

    def get_project_path(self, project_name):
        """Provide the API endpoint path for a specific project."""
        return f"/api/v1/projects/{project_name}"
