code: def _download_project(self, activity, project, temp_directory, path_filter):
          
          self.print_func("Downloading a copy of '{}'.".format(project.name))
          project_download = ProjectDownload(self.remote_store, project, temp_directory, path_filter,
                                             file_download_pre_processor=DownloadedFileRelations(activity))
          project_download.run()
docs: Download the project with project_name to temp_directory.
          :param activity: CopyActivity: info about the copy activity are downloading for
          :param project: remotestore.RemoteProject project to download
          :param temp_directory: str path to directory we can download into
          :param path_filter: PathFilter: filters what files are shared