code: def initHashStore(data_dir, name, config=None, read_only=False) -> HashStore:
      
      config = config or getConfig()
      hsConfig = config.hashStore['type'].lower()
      if hsConfig == HS_FILE:
          return FileHashStore(dataDir=data_dir,
                               fileNamePrefix=name)
      elif hsConfig == HS_LEVELDB or hsConfig == HS_ROCKSDB:
          return DbHashStore(dataDir=data_dir,
                             fileNamePrefix=name,
                             db_type=hsConfig,
                             read_only=read_only,
                             config=config)
      else:
          return MemoryHashStore()
docs: Create and return a hashStore implementation based on configuration