class_docstr: A DataStoreStorage defines the interface of communication between the
  higher-level datastores and the actual storage system.
  
  Both the ContentAddressedStore and the TaskDataStore use these methods to
  read/write/list from the actual storage system. These methods are meant to
  be low-level; they are in a class to provide better abstraction but this
  class itself is not meant to be initialized.
docstr: Returns a tuple where the first element is True or False depending on
  whether path refers to a valid file-like object (like is_file) and the
  second element is a dictionary of metadata associated with the file or
  None if the file does not exist or there is no metadata.
  
  Parameters
  ----------
  path : string
      Path to the object
  
  Returns
  -------
  tuple
      (bool, dict)
docstr_tok: ["Returns","a","tuple","where","the","first","element","is","True","or","False","depending","on","whether","path","refers","to","a","valid","file-like","object","(","like","is_file",")","and","the","second","element","is","a","dictionary","of","metadata","associated","with","the","file","or","None","if","the","file","does","not","exist","or","there","is","no","metadata",".","Parameters","--","--","--","--","--","path",":","string","Path","to","the","object","Returns","--","--","--","-","tuple","(","bool",",","dict",")"]
code: def info_file(self, path):
      """
      Returns a tuple where the first element is True or False depending on
      whether path refers to a valid file-like object (like is_file) and the
      second element is a dictionary of metadata associated with the file or
      None if the file does not exist or there is no metadata.
  
      Parameters
      ----------
      path : string
          Path to the object
  
      Returns
      -------
      tuple
          (bool, dict)
      """
      raise NotImplementedError
  
imports: from collections import namedtuple
  import re
  from .exceptions import DataException
label_desc: Use image node_id 10 for calling the DataStoreStorage obj's underlying member method code with example usage: obj.info_file(path) without return types