You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by ke...@apache.org on 2016/12/21 20:23:35 UTC
[27/50] incubator-beam git commit: [BEAM-716] Fix javadoc on with*
methods [BEAM-959] Improve check preconditions in JmsIO
[BEAM-716] Fix javadoc on with* methods
[BEAM-959] Improve check preconditions in JmsIO
Project: http://git-wip-us.apache.org/repos/asf/incubator-beam/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-beam/commit/30e14cfa
Tree: http://git-wip-us.apache.org/repos/asf/incubator-beam/tree/30e14cfa
Diff: http://git-wip-us.apache.org/repos/asf/incubator-beam/diff/30e14cfa
Branch: refs/heads/gearpump-runner
Commit: 30e14cfa63db50d567185599ea049c96229b48e2
Parents: caf1c72
Author: Jean-Baptiste Onofr� <jb...@apache.org>
Authored: Tue Dec 13 21:55:46 2016 +0100
Committer: Jean-Baptiste Onofr� <jb...@apache.org>
Committed: Mon Dec 19 07:24:05 2016 +0100
----------------------------------------------------------------------
.../java/org/apache/beam/sdk/io/jms/JmsIO.java | 45 +++++++++++++-------
1 file changed, 30 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/30e14cfa/sdks/java/io/jms/src/main/java/org/apache/beam/sdk/io/jms/JmsIO.java
----------------------------------------------------------------------
diff --git a/sdks/java/io/jms/src/main/java/org/apache/beam/sdk/io/jms/JmsIO.java b/sdks/java/io/jms/src/main/java/org/apache/beam/sdk/io/jms/JmsIO.java
index 76dee67..b6de26a 100644
--- a/sdks/java/io/jms/src/main/java/org/apache/beam/sdk/io/jms/JmsIO.java
+++ b/sdks/java/io/jms/src/main/java/org/apache/beam/sdk/io/jms/JmsIO.java
@@ -18,7 +18,7 @@
package org.apache.beam.sdk.io.jms;
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;
import com.google.common.annotations.VisibleForTesting;
@@ -145,7 +145,7 @@ public class JmsIO {
}
/**
- * <p>Specify the JMS connection factory to connect to the JMS broker.
+ * Specify the JMS connection factory to connect to the JMS broker.
*
* <p>For instance:
*
@@ -159,11 +159,13 @@ public class JmsIO {
* @return The corresponding {@link JmsIO.Read}.
*/
public Read withConnectionFactory(ConnectionFactory connectionFactory) {
+ checkArgument(connectionFactory != null, "withConnectionFactory(connectionFactory) called"
+ + " with null connectionFactory");
return builder().setConnectionFactory(connectionFactory).build();
}
/**
- * <p>Specify the JMS queue destination name where to read messages from. The
+ * Specify the JMS queue destination name where to read messages from. The
* {@link JmsIO.Read} acts as a consumer on the queue.
*
* <p>This method is exclusive with {@link JmsIO.Read#withTopic(String)}. The user has to
@@ -181,11 +183,12 @@ public class JmsIO {
* @return The corresponding {@link JmsIO.Read}.
*/
public Read withQueue(String queue) {
+ checkArgument(queue != null, "withQueue(queue) called with null queue");
return builder().setQueue(queue).build();
}
/**
- * <p>Specify the JMS topic destination name where to receive messages from. The
+ * Specify the JMS topic destination name where to receive messages from. The
* {@link JmsIO.Read} acts as a subscriber on the topic.
*
* <p>This method is exclusive with {@link JmsIO.Read#withQueue(String)}. The user has to
@@ -203,11 +206,12 @@ public class JmsIO {
* @return The corresponding {@link JmsIO.Read}.
*/
public Read withTopic(String topic) {
+ checkArgument(topic != null, "withTopic(topic) called with null topic");
return builder().setTopic(topic).build();
}
/**
- * <p>Define the max number of records that the source will read. Using a max number of records
+ * Define the max number of records that the source will read. Using a max number of records
* different from {@code Long.MAX_VALUE} means the source will be {@code Bounded}, and will
* stop once the max number of records read is reached.
*
@@ -223,11 +227,13 @@ public class JmsIO {
* @return The corresponding {@link JmsIO.Read}.
*/
public Read withMaxNumRecords(long maxNumRecords) {
+ checkArgument(maxNumRecords >= 0, "withMaxNumRecords(maxNumRecords) called with invalid "
+ + "maxNumRecords");
return builder().setMaxNumRecords(maxNumRecords).build();
}
/**
- * <p>Define the max read time that the source will read. Using a non null max read time
+ * Define the max read time that the source will read. Using a non null max read time
* duration means the source will be {@code Bounded}, and will stop once the max read time is
* reached.
*
@@ -243,6 +249,8 @@ public class JmsIO {
* @return The corresponding {@link JmsIO.Read}.
*/
public Read withMaxReadTime(Duration maxReadTime) {
+ checkArgument(maxReadTime != null, "withMaxReadTime(maxReadTime) called with null "
+ + "maxReadTime");
return builder().setMaxReadTime(maxReadTime).build();
}
@@ -264,9 +272,11 @@ public class JmsIO {
@Override
public void validate(PBegin input) {
- checkNotNull(getConnectionFactory(), "ConnectionFactory not specified");
- checkArgument((getQueue() != null || getTopic() != null), "Either queue or topic not "
- + "specified");
+ checkState(getConnectionFactory() != null, "JmsIO.read() requires a JMS connection "
+ + "factory to be set via withConnectionFactory(connectionFactory)");
+ checkState((getQueue() != null || getTopic() != null), "JmsIO.read() requires a JMS "
+ + "destination (queue or topic) to be set via withQueue(queueName) or withTopic"
+ + "(topicName)");
}
@Override
@@ -497,7 +507,7 @@ public class JmsIO {
}
/**
- * <p>Specify the JMS connection factory to connect to the JMS broker.
+ * Specify the JMS connection factory to connect to the JMS broker.
*
* <p>For instance:
*
@@ -511,11 +521,13 @@ public class JmsIO {
* @return The corresponding {@link JmsIO.Read}.
*/
public Write withConnectionFactory(ConnectionFactory connectionFactory) {
+ checkArgument(connectionFactory != null, "withConnectionFactory(connectionFactory) called"
+ + " with null connectionFactory");
return builder().setConnectionFactory(connectionFactory).build();
}
/**
- * <p>Specify the JMS queue destination name where to send messages to. The
+ * Specify the JMS queue destination name where to send messages to. The
* {@link JmsIO.Write} acts as a producer on the queue.
*
* <p>This method is exclusive with {@link JmsIO.Write#withTopic(String)}. The user has to
@@ -533,11 +545,12 @@ public class JmsIO {
* @return The corresponding {@link JmsIO.Read}.
*/
public Write withQueue(String queue) {
+ checkArgument(queue != null, "withQueue(queue) called with null queue");
return builder().setQueue(queue).build();
}
/**
- * <p>Specify the JMS topic destination name where to send messages to. The
+ * Specify the JMS topic destination name where to send messages to. The
* {@link JmsIO.Read} acts as a publisher on the topic.
*
* <p>This method is exclusive with {@link JmsIO.Write#withQueue(String)}. The user has to
@@ -555,6 +568,7 @@ public class JmsIO {
* @return The corresponding {@link JmsIO.Read}.
*/
public Write withTopic(String topic) {
+ checkArgument(topic != null, "withTopic(topic) called with null topic");
return builder().setTopic(topic).build();
}
@@ -566,9 +580,10 @@ public class JmsIO {
@Override
public void validate(PCollection<String> input) {
- checkNotNull(getConnectionFactory(), "ConnectionFactory is not defined");
- checkArgument((getQueue() != null || getTopic() != null), "Either queue or topic is "
- + "required");
+ checkState(getConnectionFactory() != null, "JmsIO.write() requires a JMS connection "
+ + "factory to be set via withConnectionFactory(connectionFactory)");
+ checkState((getQueue() != null || getTopic() != null), "JmsIO.write() requires a JMS "
+ + "destination (queue or topic) to be set via withQueue(queue) or withTopic(topic)");
}
private static class WriterFn extends DoFn<String, Void> {