protected function createDirectory(Gpf_Io_File $directory)
 {
     if ($directory->isExists() && !$directory->isWritable()) {
         throw new Gpf_Exception($this->_('Directory %s is not writable by web server user. Please remove it or set write permissions.', $directory->getFileName()));
     }
     if (!$directory->isExists()) {
         $directory->mkdir(true);
     }
 }
 private static function resolveCompileDirInInstallMode()
 {
     $tempDir = new Gpf_Io_File(str_replace('\\', '/', self::getSysTempDir()));
     if ($tempDir->isDirectory() && $tempDir->isWritable()) {
         return $tempDir->getFileName();
     }
     $accountsDir = new Gpf_Io_File(Gpf_Paths::getInstance()->getFullBaseServerPath() . Gpf_Paths::ACCOUNTS_DIR);
     if ($accountsDir->isDirectory() && $accountsDir->isWritable()) {
         return self::getTempInAccountsDir();
     }
     return self::INSTALL_STREAM . '://:';
 }