Load all available validators
(self)
| 19 | self._load_validators() |
| 20 | |
| 21 | def _load_validators(self): |
| 22 | """Load all available validators""" |
| 23 | try: |
| 24 | # Try relative import first, then absolute |
| 25 | try: |
| 26 | from .http_validator import HTTPValidator |
| 27 | except ImportError: |
| 28 | from validators.http_validator import HTTPValidator |
| 29 | self.validators['http'] = HTTPValidator |
| 30 | logger.debug("Loaded HTTPValidator") |
| 31 | except ImportError as e: |
| 32 | logger.warning(f"Failed to load HTTPValidator: {e}") |
| 33 | |
| 34 | try: |
| 35 | try: |
| 36 | from .smb_shares_manager import SMBSharesManager |
| 37 | except ImportError: |
| 38 | from validators.smb_shares_manager import SMBSharesManager |
| 39 | self.validators['smb'] = SMBSharesManager |
| 40 | logger.debug("Loaded SMBSharesManager") |
| 41 | except ImportError as e: |
| 42 | logger.warning(f"Failed to load SMBSharesManager: {e}") |
| 43 | |
| 44 | # Add more validators here as they are created |
| 45 | |
| 46 | logger.info(f"Loaded {len(self.validators)} protocol validators: {list(self.validators.keys())}") |
| 47 | |
| 48 | def get_available_protocols(self) -> List[str]: |
| 49 | """Get list of available protocol names""" |