parameters: (
          self,
          target_protocol=None,
          cache_storage="TMP",
          cache_check=10,
          check_files=False,
          expiry_time=604800,
          target_options=None,
          fs=None,
          same_names=False,
          **kwargs
      )
docstring: Parameters
          ----------
          target_protocol: str (optional)
              Target filesystem protocol. Provide either this or ``fs``.
          cache_storage: str or list(str)
              Location to store files. If "TMP", this is a temporary directory,
              and will be cleaned up by the OS when this process ends (or later).
              If a list, each location will be tried in the order given, but
              only the last will be considered writable.
          cache_check: int
              Number of seconds between reload of cache metadata
          check_files: bool
              Whether to explicitly see if the UID of the remote file matches
              the stored one before using. Warning: some file systems such as
              HTTP cannot reliably give a unique hash of the contents of some
              path, so be sure to set this option to False.
          expiry_time: int
              The time in seconds after which a local copy is considered useless.
              Set to falsy to prevent expiry. The default is equivalent to one
              week.
          target_options: dict or None
              Passed to the instantiation of the FS, if fs is None.
          fs: filesystem instance
              The target filesystem to run against. Provide this or ``protocol``.
          same_names: bool (optional)
              By default, target URLs are hashed, so that files from different backends
              with the same basename do not conflict. If this is true, the original
              basename is used.
function: def __init__(
          self,
          target_protocol=None,
          cache_storage="TMP",
          cache_check=10,
          check_files=False,
          expiry_time=604800,
          target_options=None,
          fs=None,
          same_names=False,
          **kwargs
      ):
          """
  
          Parameters
          ----------
          target_protocol: str (optional)
              Target filesystem protocol. Provide either this or ``fs``.
          cache_storage: str or list(str)
              Location to store files. If "TMP", this is a temporary directory,
              and will be cleaned up by the OS when this process ends (or later).
              If a list, each location will be tried in the order given, but
              only the last will be considered writable.
          cache_check: int
              Number of seconds between reload of cache metadata
          check_files: bool
              Whether to explicitly see if the UID of the remote file matches
              the stored one before using. Warning: some file systems such as
              HTTP cannot reliably give a unique hash of the contents of some
              path, so be sure to set this option to False.
          expiry_time: int
              The time in seconds after which a local copy is considered useless.
              Set to falsy to prevent expiry. The default is equivalent to one
              week.
          target_options: dict or None
              Passed to the instantiation of the FS, if fs is None.
          fs: filesystem instance
              The target filesystem to run against. Provide this or ``protocol``.
          same_names: bool (optional)
              By default, target URLs are hashed, so that files from different backends
              with the same basename do not conflict. If this is true, the original
              basename is used.
          """
          super().__init__(**kwargs)
          if not (fs is None) ^ (target_protocol is None):
              raise ValueError(
                  "Please provide one of filesystem instance (fs) or"
                  " remote_protocol, not both"
              )
          if cache_storage == "TMP":
              storage = [tempfile.mkdtemp()]
          else:
              if isinstance(cache_storage, str):
                  storage = [cache_storage]
              else:
                  storage = cache_storage
          os.makedirs(storage[-1], exist_ok=True)
          self.storage = storage
          self.kwargs = target_options or {}
          self.cache_check = cache_check
          self.check_files = check_files
          self.expiry = expiry_time
          self.same_names = same_names
          self.target_protocol = (
              target_protocol if isinstance(target_protocol, str) else fs.protocol
          )
          self.load_cache()
          self.fs = fs if fs is not None else filesystem(target_protocol, **self.kwargs)
function_tokens: def __init__ ( self , target_protocol = None , cache_storage = "TMP" , cache_check = 10 , check_files = False , expiry_time = 604800 , target_options = None , fs = None , same_names = False , * * kwargs ) : super ( ) . __init__ ( * * kwargs ) if not ( fs is None ) ^ ( target_protocol is None ) : raise ValueError ( "Please provide one of filesystem instance (fs) or" " remote_protocol, not both" ) if cache_storage == "TMP" : storage = [ tempfile . mkdtemp ( ) ] else : if isinstance ( cache_storage , str ) : storage = [ cache_storage ] else : storage = cache_storage os . makedirs ( storage [ - 1 ] , exist_ok = True ) self . storage = storage self . kwargs = target_options or { } self . cache_check = cache_check self . check_files = check_files self . expiry = expiry_time self . same_names = same_names self . target_protocol = ( target_protocol if isinstance ( target_protocol , str ) else fs . protocol ) self . load_cache ( ) self . fs = fs if fs is not None else filesystem ( target_protocol , * * self . kwargs )