package org.embulk.output.kintone; import java.util.List; import java.util.Map; import java.util.Optional; import java.util.Set; import org.embulk.config.Config; import org.embulk.config.ConfigDefault; import org.embulk.config.Task; import org.embulk.output.kintone.record.Skip; import org.embulk.spi.Column; public interface PluginTask extends Task { @Config("domain") String getDomain(); @Config("app_id") int getAppId(); @Config("guest_space_id") @ConfigDefault("null") Optional getGuestSpaceId(); @Config("token") @ConfigDefault("null") Optional getToken(); @Config("username") @ConfigDefault("null") Optional getUsername(); @Config("password") @ConfigDefault("null") Optional getPassword(); @Config("basic_auth_username") @ConfigDefault("null") Optional getBasicAuthUsername(); @Config("basic_auth_password") @ConfigDefault("null") Optional getBasicAuthPassword(); @Config("column_options") @ConfigDefault("{}") Map getColumnOptions(); @Config("prefer_nulls") @ConfigDefault("\"false\"") boolean getPreferNulls(); @Config("ignore_nulls") @ConfigDefault("\"false\"") boolean getIgnoreNulls(); @Config("skip_if_non_existing_id_or_update_key") @ConfigDefault("\"auto\"") Skip getSkipIfNonExistingIdOrUpdateKey(); @Config("mode") @ConfigDefault("\"insert\"") String getMode(); @Config("update_key") @ConfigDefault("null") Optional getUpdateKeyName(); @Config("reduce_key") @ConfigDefault("null") Optional getReduceKeyName(); @Config("sort_columns") @ConfigDefault("[]") List getSortColumns(); @Config("max_sort_tmp_files") @ConfigDefault("null") Optional getMaxSortTmpFiles(); @Config("max_sort_memory") @ConfigDefault("null") Optional getMaxSortMemory(); @Config("chunk_size") @ConfigDefault("100") Integer getChunkSize(); @Config("retry_options") @ConfigDefault("{}") KintoneRetryOption getRetryOptions(); Set getDerivedColumns(); void setDerivedColumns(Set columns); }