code: def GetDisplayNameForPathSpec(
        cls, path_spec, mount_path=None, text_prepend=None):
      
      if not path_spec:
        return None
  
      relative_path = cls.GetRelativePathForPathSpec(
          path_spec, mount_path=mount_path)
      if not relative_path:
        return path_spec.type_indicator
  
      if text_prepend:
        relative_path = '{0:s}{1:s}'.format(text_prepend, relative_path)
  
      parent_path_spec = path_spec.parent
      if parent_path_spec and path_spec.type_indicator in (
          dfvfs_definitions.TYPE_INDICATOR_BZIP2,
          dfvfs_definitions.TYPE_INDICATOR_GZIP):
        parent_path_spec = parent_path_spec.parent
  
      if parent_path_spec and parent_path_spec.type_indicator == (
          dfvfs_definitions.TYPE_INDICATOR_VSHADOW):
        store_index = getattr(path_spec.parent, 'store_index', None)
        if store_index is not None:
          return 'VSS{0:d}:{1:s}:{2:s}'.format(
              store_index + 1, path_spec.type_indicator, relative_path)
  
      return '{0:s}:{1:s}'.format(path_spec.type_indicator, relative_path)
docs: Retrieves the display name of a path specification.
  
      Args:
        path_spec (dfvfs.PathSpec): path specification.
        mount_path (Optional[str]): path where the file system that is used
            by the path specification is mounted, such as "/mnt/image". The
            mount path will be stripped from the absolute path defined by
            the path specification.
        text_prepend (Optional[str]): text to prepend.
  
      Returns:
        str: human readable version of the path specification or None.