def AddFile(self, path, file_handle):
    assert not self.in_transaction, 'Already in a transaction.'
    assert file_handle is not None

    reason = appinfo.ValidFilename(path)
    if reason:
      logging.error(reason)
      return

    pos = file_handle.tell()
    content_hash = _Hash(file_handle.read())
    file_handle.seek(pos, 0)

    self.files[path] = content_hash
generate VAR signals, and apply the api to them
dataset/ETHPy150Open CollabQ/CollabQ/.google_appengine/google/appengine/tools/appcfg.py/AppVersionUpload.AddFile--crossover with--dataset/ETHPy150Open scot-dev/scot/scot/tests/test_ooapi.py/TestMVARICA.testFunctionality