def collect_cdf_datasources(self):
report_count = <NUM_LIT:0><EOL>if self.status != '<STR_LIT:OK>':<EOL><INDENT>return False<EOL><DEDENT>diff_cdf_datasource = sorted(set(self.reports[<NUM_LIT:0>].cdf_datasource) & set(self.reports[<NUM_LIT:1>].cdf_datasource))<EOL>if diff_cdf_datasource:<EOL><INDENT>self.reports[<NUM_LIT:0>].cdf_datasource = diff_cdf_datasource<EOL>self.reports[<NUM_LIT:1>].cdf_datasource = diff_cdf_datasource<EOL><DEDENT>else:<EOL><INDENT>self.status = '<STR_LIT>'<EOL>logger.error('<STR_LIT>')<EOL>return False<EOL><DEDENT>for report in self.reports:<EOL><INDENT>report.label = report_count<EOL>report_count += <NUM_LIT:1><EOL>report.local_location = os.path.join(self.resource_directory, str(report.label))<EOL>try:<EOL><INDENT>os.makedirs(report.local_location)<EOL><DEDENT>except OSError as exeption:<EOL><INDENT>if exeption.errno != errno.EEXIST:<EOL><INDENT>raise<EOL><DEDENT><DEDENT>if report.remote_location != '<STR_LIT>':<EOL><INDENT>naarad.httpdownload.download_url_list(map(lambda x: report.remote_location + '<STR_LIT:/>' + self.resource_path + '<STR_LIT:/>' + x + '<STR_LIT>', report.cdf_datasource),<EOL>report.local_location)<EOL><DEDENT>else:<EOL><INDENT>for filename in report.cdf_datasource:<EOL><INDENT>try:<EOL><INDENT>shutil.copy(os.path.join(os.path.join(report.location, self.resource_path), filename + '<STR_LIT>'), report.local_location)<EOL><DEDENT>except IOError as exeption:<EOL><INDENT>continue<EOL><DEDENT><DEDENT><DEDENT><DEDENT>return True<EOL>
Identify what cdf series exist in both the diffed reports and download them to the diff report resources directory
:return: True/False : return status of whether the download of time series resources succeeded.