# Path: src/booking/source/classroom/model/Classroom.py
# class Classroom:
#     """
#     Class that represents a single classroom.
#     """
# 
#     def __init__(self, identifier: str, name: str, building: Building, floor: str):
#         self._identifier = identifier
#         self._name = name
#         self._building = building
#         self._floor = floor
# 
#     def get_identifier(self) -> str:
#         return self._identifier
# 
#     def get_name(self) -> str:
#         return self._name
# 
#     def get_building(self) -> Building:
#         return self._building
# 
#     def get_floor(self) -> str:
#         return self._floor
# 
# Path: src/booking/source/classroom/model/Building.py
# class Building:
# 
#     """
#     Class that represents a building.
#     """
# 
#     def __init__(self, identifier: str, name: str):
#         self._identifier = identifier
#         self._name = name
# 
#     def get_identifier(self):
#         return self._identifier
# 
#     def get_name(self) -> str:
#         return self._name


from abc import abstractmethod, ABC
from typing import List
from .model import Classroom, Building


class ClassroomSource(ABC):

    """
    Class that have the responsibility to save the classroom and to provide access to them.
    """

    @abstractmethod

# Path: src/booking/source/classroom/model/Classroom.py
# class Classroom:
#     """
#     Class that represents a single classroom.
#     """
# 
#     def __init__(self, identifier: str, name: str, building: Building, floor: str):
#         self._identifier = identifier
#         self._name = name
#         self._building = building
#         self._floor = floor
# 
#     def get_identifier(self) -> str:
#         return self._identifier
# 
#     def get_name(self) -> str:
#         return self._name
# 
#     def get_building(self) -> Building:
#         return self._building
# 
#     def get_floor(self) -> str:
#         return self._floor
# 
# Path: src/booking/source/classroom/model/Building.py
# class Building:
# 
#     """
#     Class that represents a building.
#     """
# 
#     def __init__(self, identifier: str, name: str):
#         self._identifier = identifier
#         self._name = name
# 
#     def get_identifier(self):
#         return self._identifier
# 
#     def get_name(self) -> str:
#         return self._name


# Path: src/booking/source/classroom/ClassroomSource.py
from abc import abstractmethod, ABC
from typing import List
from .model import Classroom, Building



class ClassroomSource(ABC):

    """
    Class that have the responsibility to save the classroom and to provide access to them.
    """

    @abstractmethod

    def get_classroom(self, identifier: str) -> Classroom: