protected function generateFilePath()
    {
        $hash = $this->getHash();
        
        $dir = '';
        
        $depth = $this->getDepth();
        for($i = 0; $i < $depth; ++$i)
        {
            $dir .= $hash[$i].'/';
        }
        
        if ('' != $this->getExtension())
        {
            $hash .= '.'.$this->getExtension();
        }
        
        $parts = array(
        	$this->getClassName(),
            $this->getFieldName(),
            rtrim($dir, '/'),
            $hash,
        );
        
        return implode('/', $parts);
    }