public function touch($modificationTime = null, $accessTime = null)
    {
        if ($this->isFile()) {
            if (is_null($modificationTime)) {
                $modificationTime = time();
            }

            if (is_null($accessTime)) {
                $accessTime = $modificationTime;
            }

            return touch($this->getPathname(), (int)$modificationTime, (int)$accessTime);
        } else {
            throw new FileException('File can not be touched, because it is no file or do not exist.', E_NOTICE);
        }
    }