in services/library/src/main/java/com/google/cloud/pso/bq_pii_classifier/functions/dispatcher/Dispatcher.java [288:325]
public List<JsonMessage> processProjects(
List<String> projectIncludeList,
List<String> datasetExcludeList,
List<String> tableExcludeList
) throws IOException, InterruptedException, NonRetryableApplicationException {
List<String> datasetIncludeList = new ArrayList<>();
logger.logInfoWithTracker(runId, String.format("Will process projects %s", projectIncludeList));
for (String project : projectIncludeList) {
logger.logInfoWithTracker(runId, String.format("Inspecting project %s", project));
try {
// get all datasets with tables that have DLP findings
List<String> projectDatasets = scanner.listParents(project);
datasetIncludeList.addAll(projectDatasets);
if (projectDatasets.isEmpty()) {
String msg = String.format(
"No datasets found under project '%s'.",
project);
logger.logWarnWithTracker(runId, msg);
} else {
logger.logInfoWithTracker(runId, String.format("Datasets found in project %s : %s", project, projectDatasets));
}
} catch (Exception exception) {
// log and continue
logger.logFailedDispatcherEntityId(runId, project, exception);
}
}
return processDatasets(datasetIncludeList, datasetExcludeList, tableExcludeList);
}