in beam-collector/src/main/java/com/google/collector/loaders/LoadFromCsv.java [34:62]
public void processElement(ProcessContext ctx) throws IllegalArgumentException {
ImmutableList<String> columns = loadColumns(ctx);
// hacky skip of unwanted lines: header, empties, unparsed
if (columns.isEmpty() || columns.size() <= 12 || columns.get(1).equals("report_time")) {
return;
}
CspReport cspReport = CspReport.newBuilder()
.setReferrer(columns.get(4))
.setBlockedUri(columns.get(5))
.setViolatedDirective(columns.get(6))
.setOriginalPolicy(columns.get(7))
.setSourceFile(columns.get(8))
.setEffectiveDirective(columns.get(13))
.setScriptSample(columns.get(19))
.setLineNumber(-1)
.setColumnNumber(-1)
.build();
SecurityReport securityReport = SecurityReport.newBuilder()
.setReportChecksum("foo")
.setReportTime(1L)
.setReportCount(1L)
.setUserAgent("foo")
.setDisposition(Disposition.REPORTING)
.setCspReport(cspReport)
.build();
ctx.output(securityReport);
}