Skip to content

Commit da93da7

Browse files
authored
Merge pull request #1576 from vam-google/master
BigQuery: Add support to FormatOptions for AVRO #1441 Added new constant in FormatOptions and a corresponding factory method. Updated test cases. Confirmed that AVRO does not require special treatment (like CSV does), so no additional changes are required.
2 parents 6d193de + 1643cf1 commit da93da7

2 files changed

Lines changed: 14 additions & 0 deletions

File tree

google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/FormatOptions.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ public class FormatOptions implements Serializable {
3232
static final String CSV = "CSV";
3333
static final String JSON = "NEWLINE_DELIMITED_JSON";
3434
static final String DATASTORE_BACKUP = "DATASTORE_BACKUP";
35+
static final String AVRO = "AVRO";
3536
private static final long serialVersionUID = -443376052020423691L;
3637

3738
private final String type;
@@ -94,6 +95,13 @@ public static FormatOptions datastoreBackup() {
9495
return new FormatOptions(DATASTORE_BACKUP);
9596
}
9697

98+
/**
99+
* Default options for AVRO format.
100+
*/
101+
public static FormatOptions avro() {
102+
return new FormatOptions(AVRO);
103+
}
104+
97105
/**
98106
* Default options for the provided format.
99107
*/

google-cloud-bigquery/src/test/java/com/google/cloud/bigquery/FormatOptionsTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,23 +30,29 @@ public void testConstructor() {
3030
assertEquals(FormatOptions.JSON, options.getType());
3131
options = new FormatOptions(FormatOptions.DATASTORE_BACKUP);
3232
assertEquals(FormatOptions.DATASTORE_BACKUP, options.getType());
33+
options = new FormatOptions(FormatOptions.AVRO);
34+
assertEquals(FormatOptions.AVRO, options.getType());
3335
}
3436

3537
@Test
38+
@SuppressWarnings("deprecation")
3639
public void testConstructorDeprecated() {
3740
FormatOptions options = new FormatOptions(FormatOptions.CSV);
3841
assertEquals(FormatOptions.CSV, options.type());
3942
options = new FormatOptions(FormatOptions.JSON);
4043
assertEquals(FormatOptions.JSON, options.type());
4144
options = new FormatOptions(FormatOptions.DATASTORE_BACKUP);
4245
assertEquals(FormatOptions.DATASTORE_BACKUP, options.type());
46+
options = new FormatOptions(FormatOptions.AVRO);
47+
assertEquals(FormatOptions.AVRO, options.type());
4348
}
4449

4550
@Test
4651
public void testFactoryMethods() {
4752
assertEquals(FormatOptions.CSV, FormatOptions.csv().getType());
4853
assertEquals(FormatOptions.JSON, FormatOptions.json().getType());
4954
assertEquals(FormatOptions.DATASTORE_BACKUP, FormatOptions.datastoreBackup().getType());
55+
assertEquals(FormatOptions.AVRO, FormatOptions.avro().getType());
5056
}
5157

5258
@Test

0 commit comments

Comments
 (0)