Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 30F73200BCB for ; Thu, 24 Nov 2016 10:32:13 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 2F3CF160B1F; Thu, 24 Nov 2016 09:32:13 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 53765160B11 for ; Thu, 24 Nov 2016 10:32:12 +0100 (CET) Received: (qmail 52040 invoked by uid 500); 24 Nov 2016 09:32:11 -0000 Mailing-List: contact commits-help@beam.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@beam.incubator.apache.org Delivered-To: mailing list commits@beam.incubator.apache.org Received: (qmail 52031 invoked by uid 99); 24 Nov 2016 09:32:11 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 24 Nov 2016 09:32:11 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id DBA3B1AABF8 for ; Thu, 24 Nov 2016 09:32:10 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -6.219 X-Spam-Level: X-Spam-Status: No, score=-6.219 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-2.999] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id Tl6AUcCnyNBJ for ; Thu, 24 Nov 2016 09:32:09 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with SMTP id 907D45F177 for ; Thu, 24 Nov 2016 09:32:08 +0000 (UTC) Received: (qmail 52003 invoked by uid 99); 24 Nov 2016 09:32:07 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 24 Nov 2016 09:32:07 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id AD37FDFFAB; Thu, 24 Nov 2016 09:32:07 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: jbonofre@apache.org To: commits@beam.incubator.apache.org Date: Thu, 24 Nov 2016 09:32:07 -0000 Message-Id: <565bf104080145bc85afa3f25a20073c@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [1/2] incubator-beam git commit: [BEAM-959] Improve validation messages in JdbcIO archived-at: Thu, 24 Nov 2016 09:32:13 -0000 Repository: incubator-beam Updated Branches: refs/heads/master 6d0c205a3 -> 3e4b2fd0d [BEAM-959] Improve validation messages in JdbcIO Project: http://git-wip-us.apache.org/repos/asf/incubator-beam/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-beam/commit/7b314aad Tree: http://git-wip-us.apache.org/repos/asf/incubator-beam/tree/7b314aad Diff: http://git-wip-us.apache.org/repos/asf/incubator-beam/diff/7b314aad Branch: refs/heads/master Commit: 7b314aad1c7c62ad61e09e610c60f53ac056d75d Parents: 6d0c205 Author: Jean-Baptiste Onofré Authored: Thu Nov 17 17:07:21 2016 +0100 Committer: Jean-Baptiste Onofré Committed: Thu Nov 24 08:50:01 2016 +0100 ---------------------------------------------------------------------- .../org/apache/beam/sdk/io/jdbc/JdbcIO.java | 52 +++++++++++++------- 1 file changed, 35 insertions(+), 17 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/7b314aad/sdks/java/io/jdbc/src/main/java/org/apache/beam/sdk/io/jdbc/JdbcIO.java ---------------------------------------------------------------------- diff --git a/sdks/java/io/jdbc/src/main/java/org/apache/beam/sdk/io/jdbc/JdbcIO.java b/sdks/java/io/jdbc/src/main/java/org/apache/beam/sdk/io/jdbc/JdbcIO.java index 0e0703f..9644a65 100644 --- a/sdks/java/io/jdbc/src/main/java/org/apache/beam/sdk/io/jdbc/JdbcIO.java +++ b/sdks/java/io/jdbc/src/main/java/org/apache/beam/sdk/io/jdbc/JdbcIO.java @@ -18,7 +18,7 @@ package org.apache.beam.sdk.io.jdbc; import static com.google.common.base.Preconditions.checkArgument; -import static com.google.common.base.Preconditions.checkNotNull; +import static com.google.common.base.Preconditions.checkState; import com.google.auto.value.AutoValue; @@ -183,16 +183,20 @@ public class JdbcIO { } public static DataSourceConfiguration create(DataSource dataSource) { - checkNotNull(dataSource, "dataSource"); - checkArgument(dataSource instanceof Serializable, "dataSource must be Serializable"); + checkArgument(dataSource != null, "DataSourceConfiguration.create(dataSource) called with " + + "null data source"); + checkArgument(dataSource instanceof Serializable, + "DataSourceConfiguration.create(dataSource) called with a dataSource not Serializable"); return new AutoValue_JdbcIO_DataSourceConfiguration.Builder() .setDataSource(dataSource) .build(); } public static DataSourceConfiguration create(String driverClassName, String url) { - checkNotNull(driverClassName, "driverClassName"); - checkNotNull(url, "url"); + checkArgument(driverClassName != null, + "DataSourceConfiguration.create(driverClassName, url) called with null driverClassName"); + checkArgument(url != null, + "DataSourceConfiguration.create(driverClassName, url) called with null url"); return new AutoValue_JdbcIO_DataSourceConfiguration.Builder() .setDriverClassName(driverClassName) .setUrl(url) @@ -263,27 +267,31 @@ public class JdbcIO { } public Read withDataSourceConfiguration(DataSourceConfiguration configuration) { - checkNotNull(configuration, "configuration"); + checkArgument(configuration != null, "JdbcIO.read().withDataSourceConfiguration" + + "(configuration) called with null configuration"); return toBuilder().setDataSourceConfiguration(configuration).build(); } public Read withQuery(String query) { - checkNotNull(query, "query"); + checkArgument(query != null, "JdbcIO.read().withQuery(query) called with null query"); return toBuilder().setQuery(query).build(); } public Read withStatementPrepator(StatementPreparator statementPreparator) { - checkNotNull(statementPreparator, "statementPreparator"); + checkArgument(statementPreparator != null, + "JdbcIO.read().withStatementPreparator(statementPreparator) called " + + "with null statementPreparator"); return toBuilder().setStatementPreparator(statementPreparator).build(); } public Read withRowMapper(RowMapper rowMapper) { - checkNotNull(rowMapper, "rowMapper"); + checkArgument(rowMapper != null, + "JdbcIO.read().withRowMapper(rowMapper) called with null rowMapper"); return toBuilder().setRowMapper(rowMapper).build(); } public Read withCoder(Coder coder) { - checkNotNull(coder, "coder"); + checkArgument(coder != null, "JdbcIO.read().withCoder(coder) called with null coder"); return toBuilder().setCoder(coder).build(); } @@ -314,10 +322,15 @@ public class JdbcIO { @Override public void validate(PBegin input) { - checkNotNull(getQuery(), "query"); - checkNotNull(getRowMapper(), "rowMapper"); - checkNotNull(getCoder(), "coder"); - checkNotNull(getDataSourceConfiguration()); + checkState(getQuery() != null, + "JdbcIO.read() requires a query to be set via withQuery(query)"); + checkState(getRowMapper() != null, + "JdbcIO.read() requires a rowMapper to be set via withRowMapper(rowMapper)"); + checkState(getCoder() != null, + "JdbcIO.read() requires a coder to be set via withCoder(coder)"); + checkState(getDataSourceConfiguration() != null, + "JdbcIO.read() requires a DataSource configuration to be set via " + + "withDataSourceConfiguration(dataSourceConfiguration)"); } @Override @@ -411,9 +424,14 @@ public class JdbcIO { @Override public void validate(PCollection input) { - checkNotNull(getDataSourceConfiguration(), "dataSourceConfiguration"); - checkNotNull(getStatement(), "statement"); - checkNotNull(getPreparedStatementSetter(), "preparedStatementSetter"); + checkArgument(getDataSourceConfiguration() != null, + "JdbcIO.write() requires a configuration to be set via " + + ".withDataSourceConfiguration(configuration)"); + checkArgument(getStatement() != null, + "JdbcIO.write() requires a statement to be set via .withStatement(statement)"); + checkArgument(getPreparedStatementSetter() != null, + "JdbcIO.write() requires a preparedStatementSetter to be set via " + + ".withPreparedStatementSetter(preparedStatementSetter)"); } private static class WriteFn extends DoFn {