src/main/java/org/embulk/output/BigqueryWriter.java in embulk-output-bigquery-0.1.4 vs src/main/java/org/embulk/output/BigqueryWriter.java in embulk-output-bigquery-0.1.5

- old
+ new

@@ -54,10 +54,11 @@ private final String encoding; private final boolean preventDuplicateInsert; private final long jobStatusMaxPollingTime; private final long jobStatusPollingInterval; private final boolean isSkipJobResultCheck; + private final boolean ignoreUnknownValues; private final Bigquery bigQueryClient; public BigqueryWriter(Builder builder) throws FileNotFoundException, IOException, GeneralSecurityException { this.project = builder.project; @@ -71,10 +72,11 @@ this.encoding = builder.encoding.toUpperCase(); this.preventDuplicateInsert = builder.preventDuplicateInsert; this.jobStatusMaxPollingTime = builder.jobStatusMaxPollingTime; this.jobStatusPollingInterval = builder.jobStatusPollingInterval; this.isSkipJobResultCheck = builder.isSkipJobResultCheck; + this.ignoreUnknownValues = builder.ignoreUnknownValues; BigqueryAuthentication auth = new BigqueryAuthentication(builder.authMethod, builder.serviceAccountEmail, builder.p12KeyFilePath, builder.applicationName); this.bigQueryClient = auth.getBigqueryClient(); checkConfig(); @@ -170,10 +172,11 @@ loadConfig.setCreateDisposition("CREATE_IF_NEEDED"); log.info(String.format("table:[%s] will be create if not exists", table)); } else { loadConfig.setCreateDisposition("CREATE_NEVER"); } + loadConfig.setIgnoreUnknownValues(ignoreUnknownValues); loadConfig.setDestinationTable(createTableReference()); File file = new File(localFilePath); InputStreamContent mediaContent = new InputStreamContent("application/octet-stream", @@ -346,10 +349,11 @@ private String encoding; private boolean preventDuplicateInsert; private int jobStatusMaxPollingTime; private int jobStatusPollingInterval; private boolean isSkipJobResultCheck; + private boolean ignoreUnknownValues; public Builder(String authMethod) { this.authMethod = authMethod; } @@ -445,9 +449,15 @@ } public Builder setIsSkipJobResultCheck(boolean isSkipJobResultCheck) { this.isSkipJobResultCheck = isSkipJobResultCheck; + return this; + } + + public Builder setIgnoreUnknownValues(boolean ignoreUnknownValues) + { + this.ignoreUnknownValues = ignoreUnknownValues; return this; } public BigqueryWriter build() throws IOException, GeneralSecurityException { \ No newline at end of file