protected function checkProperties()
    {
        if (!$this->getRequestReader() instanceof RequestReader) {
            $this->throwException('Class for RequestReader should be inherit from "%baseClass%" ' .
                '(see SmartLoad option/property "%option%")', array(
                '%baseClass%' => RequestReader::className(),
                '%option%'    => 'requestReaderClassName'
            ));
        }

        $supportedHashAlgorithms = hash_algos();
        if (is_string($this->hashMethod) && !in_array($this->hashMethod, $supportedHashAlgorithms)) {
            $this->throwException('Incorrect hashing method (see SmartLoad option/property "%option%"). ' .
                'Supported hash algorithms: %hashAlgorithms% ', array(
                '%hashAlgorithms%' => join(', ', $supportedHashAlgorithms),
                '%option%'         => 'hashMethod'
            ));
        }

        // todo check other properties
    }