from enum import Enum


class AnalysisRequestAnalysisJustification(str, Enum):
    CODE_NOT_PRESENT = "CODE_NOT_PRESENT"
    CODE_NOT_REACHABLE = "CODE_NOT_REACHABLE"
    NOT_SET = "NOT_SET"
    PROTECTED_AT_PERIMETER = "PROTECTED_AT_PERIMETER"
    PROTECTED_AT_RUNTIME = "PROTECTED_AT_RUNTIME"
    PROTECTED_BY_COMPILER = "PROTECTED_BY_COMPILER"
    PROTECTED_BY_MITIGATING_CONTROL = "PROTECTED_BY_MITIGATING_CONTROL"
    REQUIRES_CONFIGURATION = "REQUIRES_CONFIGURATION"
    REQUIRES_DEPENDENCY = "REQUIRES_DEPENDENCY"
    REQUIRES_ENVIRONMENT = "REQUIRES_ENVIRONMENT"

    def __str__(self) -> str:
        return str(self.value)
