예제 #1
0
 /**
  * @return void
  */
 protected function evaluateExceptionDirectory()
 {
     if (!$this->exceptionDirectory) {
         $path_parts = pathinfo($this->logFilePath);
         $this->exceptionDirectory = \Tx_PtExtbase_Utility_Files::concatenatePaths(array(realpath($path_parts['dirname']), 'Exceptions'));
         \Tx_PtExtbase_Utility_Files::createDirectoryRecursively($this->exceptionDirectory);
     }
 }
 /**
  * @param $rootDirectory
  */
 public function __construct($rootDirectory)
 {
     Tx_PtExtbase_Utility_Files::createDirectoryRecursively($rootDirectory);
     $this->rootDirectory = $rootDirectory;
 }
 /**
  * @param $astId
  * @param bool $createDirectory
  * @throws \InvalidArgumentException
  * @return string
  */
 public function getHashPath($astId, $createDirectory = false)
 {
     $astId = (int) $astId;
     if ($astId == 0) {
         throw new \InvalidArgumentException('The AstId must be an integer > 0', 1369816965);
     }
     $level1 = $astId % 10;
     $level2 = $astId % 100;
     $hashPath = Tx_PtExtbase_Utility_Files::concatenatePaths(array($this->rootDirectory, $level1, $level2, $astId));
     if ($createDirectory) {
         Tx_PtExtbase_Utility_Files::createDirectoryRecursively($hashPath);
     }
     return $hashPath;
 }