def MatchBestComponentName(self, component):
    fd = self.OpenAsContainer()

    # Adjust the component casing
    file_listing = set(fd.ListNames())

    # First try an exact match
    if component not in file_listing:
      # Now try to match lower case
      lower_component = component.lower()
      for x in file_listing:
        if lower_component == x.lower():
          component = x
          break

    if fd.supported_pathtype != self.pathspec.pathtype:
      new_pathspec = rdf_paths.PathSpec(path=component,
                                        pathtype=fd.supported_pathtype)
    else:
      new_pathspec = self.pathspec.last.Copy()
      new_pathspec.path = component

    return new_pathspec
Returns an SQLAlchemy Column Type suitable to store a Json dict.
dataset/ETHPy150Open google/grr/grr/client/vfs.py/VFSHandler.MatchBestComponentName--crossover with--dataset/ETHPy150Open openstack/sahara/sahara/db/sqlalchemy/types.py/JsonDictType