Skip to content

Commit dda43a9

Browse files
author
Bingqin Zhou
authored
Merge pull request #242 from ilanjiR/master
Update keyfile config to be a PASSWORD
2 parents 8b4939d + b20c03f commit dda43a9

File tree

4 files changed

+13
-5
lines changed

4 files changed

+13
-5
lines changed

kcbq-connector/src/main/java/com/wepay/kafka/connect/bigquery/BigQuerySinkConnector.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ private BigQuery getBigQuery() {
9191
return testBigQuery;
9292
}
9393
String projectName = config.getString(config.PROJECT_CONFIG);
94-
String key = config.getString(config.KEYFILE_CONFIG);
94+
String key = config.getKeyFile();
9595
String keySource = config.getString(config.KEY_SOURCE_CONFIG);
9696
return new BigQueryHelper().setKeySource(keySource).connect(projectName, key);
9797
}

kcbq-connector/src/main/java/com/wepay/kafka/connect/bigquery/BigQuerySinkTask.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,7 @@ private BigQuery getBigQuery() {
265265
return testBigQuery;
266266
}
267267
String projectName = config.getString(config.PROJECT_CONFIG);
268-
String keyFile = config.getString(config.KEYFILE_CONFIG);
268+
String keyFile = config.getKeyFile();
269269
String keySource = config.getString(config.KEY_SOURCE_CONFIG);
270270
return new BigQueryHelper().setKeySource(keySource).connect(projectName, keyFile);
271271
}
@@ -302,7 +302,7 @@ private Storage getGcs() {
302302
return testGcs;
303303
}
304304
String projectName = config.getString(config.PROJECT_CONFIG);
305-
String key = config.getString(config.KEYFILE_CONFIG);
305+
String key = config.getKeyFile();
306306
String keySource = config.getString(config.KEY_SOURCE_CONFIG);
307307
return new GCSBuilder(projectName).setKey(key).setKeySource(keySource).build();
308308

kcbq-connector/src/main/java/com/wepay/kafka/connect/bigquery/config/BigQuerySinkConfig.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import com.wepay.kafka.connect.bigquery.convert.SchemaConverter;
2929

3030
import org.apache.kafka.common.config.AbstractConfig;
31+
import org.apache.kafka.common.config.types.Password;
3132
import org.apache.kafka.common.config.ConfigDef;
3233
import org.apache.kafka.common.config.ConfigException;
3334

@@ -133,7 +134,7 @@ public class BigQuerySinkConfig extends AbstractConfig {
133134
"A class that can be used for automatically creating tables and/or updating schemas";
134135

135136
public static final String KEYFILE_CONFIG = "keyfile";
136-
private static final ConfigDef.Type KEYFILE_TYPE = ConfigDef.Type.STRING;
137+
private static final ConfigDef.Type KEYFILE_TYPE = ConfigDef.Type.PASSWORD;
137138
public static final String KEYFILE_DEFAULT = null;
138139
private static final ConfigDef.Importance KEYFILE_IMPORTANCE = ConfigDef.Importance.MEDIUM;
139140
private static final String KEYFILE_DOC =
@@ -406,6 +407,13 @@ protected static Map.Entry<String, String> parseMapping(String mapping, String n
406407
}
407408
}
408409

410+
/**
411+
* Returns the keyfile
412+
*/
413+
public String getKeyFile() {
414+
return Optional.ofNullable(getPassword(KEYFILE_CONFIG)).map(Password::value).orElse(null);
415+
}
416+
409417
/**
410418
* Parses a config map, which must be provided as a list of Strings of the form
411419
* '&lt;key&gt;=&lt;value&gt;' into a Map. Locates that list, splits its key and value pairs, and

kcbq-connector/src/test/java/com/wepay/kafka/connect/bigquery/SinkPropertiesFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ public void testProperties(BigQuerySinkConfig config) {
6363
config.getList(config.TOPICS_TO_TABLES_CONFIG);
6464
config.getList(config.DATASETS_CONFIG);
6565

66-
config.getString(config.KEYFILE_CONFIG);
66+
config.getKeyFile();
6767
config.getString(config.PROJECT_CONFIG);
6868

6969
config.getBoolean(config.SANITIZE_TOPICS_CONFIG);

0 commit comments

Comments
 (0)