code: def handle_archive(self, open_fn, extractall_fn, path):
      with open_fn(path) as archive:
          tempdir = tempfile.mkdtemp()
          self.cleanups.append(
              partial(shutil.rmtree, tempdir, ignore_errors=True)
          )
  
          extractall_fn(archive, tempdir)
          self.install(Path(tempdir))
  
file_path: gluonts/src/gluonts/shell/sagemaker/dyn.py
imports: import os
  import shutil
  import subprocess
  import sys
  import tarfile
  import tempfile
  import zipfile
  from functools import partial
  from pathlib import Path
  from typing import Optional
  from gluonts.util import safe_extractall
label_desc: Use image node_id 7 for calling the Installer obj's underlying member method code with example usage: obj.handle_archive(open_fn, extractall_fn, path) without return types