code: def _OpenFileObject(self, path_spec):
      
      if not path_spec.HasParent():
        raise errors.PathSpecError(
            'Unsupported path specification without parent.')
  
      parent_path_spec = path_spec.parent
  
      file_system = resolver.Resolver.OpenFileSystem(
          parent_path_spec, resolver_context=self._resolver_context)
  
      # Note that we cannot use pyewf's glob function since it does not
      # handle the file system abstraction dfvfs provides.
      segment_file_path_specs = ewf.EWFGlobPathSpec(file_system, path_spec)
      if not segment_file_path_specs:
        return None
  
      if parent_path_spec.IsSystemLevel():
        # Typically the file-like object cache should have room for 127 items.
        self._resolver_context.SetMaximumNumberOfFileObjects(
            len(segment_file_path_specs) + 127)
  
      for segment_file_path_spec in segment_file_path_specs:
        file_object = resolver.Resolver.OpenFileObject(
            segment_file_path_spec, resolver_context=self._resolver_context)
        self._file_objects.append(file_object)
  
      ewf_handle = pyewf.handle()
      ewf_handle.open_file_objects(self._file_objects)
      return ewf_handle
docs: Opens the file-like object defined by path specification.
  
      Args:
        path_spec (PathSpec): path specification.
  
      Returns:
        pyewf.handle: a file-like object or None.
  
      Raises:
        PathSpecError: if the path specification is invalid.