Source code for testapp.command.read

from my_logger import Logger
from testapp.command.__interface import CommandInterface
from testapp.ssd_driver import SsdDriver
from testapp.util import validate_ssd_lba


[docs] class ReadCommand(CommandInterface): """ Read 클래스는 지정된 LBA에서 데이터를 읽는 명령어를 구현합니다. Attributes: driver (SsdDriver): SSD 드라이버 객체 """
[docs] required_args_cnt: int = 1
def __init__(self): super().__init__()
[docs] self.driver = SsdDriver()
[docs] def run(self, lba: str | int) -> str: """ 지정된 LBA에서 데이터를 읽습니다. 읽어온 데이터를 화면에 출력합니다. Args: lba (str | int): 논리 블록 주소 """ read_value = self.driver.read(lba) Logger().info(read_value) return read_value
@staticmethod
[docs] def is_valid_args(*args) -> bool: """ 주어진 인자가 유효한지 확인합니다. Returns: bool: 인자가 유효한 경우 True, 그렇지 않으면 False """ n_lba = args[1] validate_ssd_lba(n_lba) return True