public static Builder builder() {
    return new Builder();
  }
@Test
  public void testBuilderDoesNotCreateInvalidObjects() {
    assertThatThrownBy(() -> ListTablesResponse.builder().add(null))
        .isInstanceOf(NullPointerException.class)
        .hasMessage("Invalid table identifier: null");

    assertThatThrownBy(() -> ListTablesResponse.builder().addAll(null))
        .isInstanceOf(NullPointerException.class)
        .hasMessage("Invalid table identifier list: null");

    List<TableIdentifier> listWithNullElement =
        Lists.newArrayList(TableIdentifier.of(Namespace.of("foo"), "bar"), null);
    assertThatThrownBy(() -> ListTablesResponse.builder().addAll(listWithNullElement))
        .isInstanceOf(IllegalArgumentException.class)
        .hasMessage("Invalid table identifier: null");
  }