import logging

import features


logger = logging.getLogger(__name__)


class SecurityConfigValidator(object):
  """ Helper class for validating the security scanner configuration. """
  def __init__(self, config):
    if not features.SECURITY_SCANNER:
      return

    self._config = config

  def valid(self):
    if not features.SECURITY_SCANNER:
      return False

    if self._config.get('SECURITY_SCANNER_ENDPOINT') is None:
      logger.debug('Missing SECURITY_SCANNER_ENDPOINT configuration')
      return False

    endpoint = self._config.get('SECURITY_SCANNER_ENDPOINT')
    if not endpoint.startswith('http://') and not endpoint.startswith('https://'):
      logger.debug('SECURITY_SCANNER_ENDPOINT configuration must start with http or https')
      return False

    return True