/**
  * Get the absolute path of the filesystem object.
  * A canonicalized version of the absolute path will be returned if the filesystem object exists.
  *
  * @return string|null Absolute path of the filesystem object or null on failure.
  */
 public function getAbsolutePath()
 {
     // Return the absolute path if it's cached
     if ($this->cache->has(self::CACHE_ABSOLUTE_PATH)) {
         return $this->cache->get(self::CACHE_ABSOLUTE_PATH, $this->path);
     }
     // Get the absolute path
     $path = FilesystemObjectHelper::getAbsolutePath($this);
     // Cache and return the absolute path
     $this->cache->set(self::CACHE_ABSOLUTE_PATH, $path);
     return $path;
 }