[
https://issues.apache.org/jira/browse/FLINK-3034?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15338699#comment-15338699
]
ASF GitHub Bot commented on FLINK-3034:
---------------------------------------
Github user mjsax commented on a diff in the pull request:
https://github.com/apache/flink/pull/1813#discussion_r67622070
--- Diff:
flink-streaming-connectors/flink-connector-redis/src/main/java/org/apache/flink/streaming/connectors/redis/common/config/JedisClusterConfig.java
---
@@ -0,0 +1,237 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.streaming.connectors.redis.common.config;
+
+import com.google.common.base.Preconditions;
+
+import org.apache.commons.pool2.impl.GenericObjectPoolConfig;
+import redis.clients.jedis.HostAndPort;
+import redis.clients.jedis.Protocol;
+
+import java.io.Serializable;
+import java.net.InetSocketAddress;
+import java.util.HashSet;
+import java.util.Set;
+
+/**
+ * Configuration for Jedis Cluster.
+ */
+public class JedisClusterConfig implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ private Set<InetSocketAddress> nodes;
+ private int timeout;
+ private int maxRedirections;
+ private int maxTotal;
+ private int maxIdle;
+ private int minIdle;
+
+ /**
+ * The list of node is mandatory, and when nodes is not set, it throws
NullPointerException.
+ *
+ * @param nodes nodes list of node information for JedisCluster
+ * @param timeout timeout socket / connection timeout
+ * @param maxRedirections maxRedirections limit of redirections - how
much we'll follow MOVED or ASK
+ * @param maxTotal the maximum number of objects that can be allocated
by the pool
+ * @param maxIdle the cap on the number of "idle" instances in the pool
+ * @param minIdle the minimum number of idle objects to maintain in
the pool
+ * @throws NullPointerException if nodes are null
+ */
+ private JedisClusterConfig(Set<InetSocketAddress> nodes, int timeout,
int maxRedirections,
+ int maxTotal,
int maxIdle, int minIdle) {
+
+ Preconditions.checkNotNull(nodes, "Node information should be
presented");
+
+ this.nodes = nodes;
+ this.timeout = timeout;
+ this.maxRedirections = maxRedirections;
+ this.maxTotal = maxTotal;
+ this.maxIdle = maxIdle;
+ this.minIdle = minIdle;
+ }
+
+ /**
+ * Get the value for the {@code maxTotal} configuration attribute
+ * for pools to be created with this configuration instance.
+ *
+ * @return The current setting of {@code maxTotal} for this
+ * configuration instance
+ * @see GenericObjectPoolConfig#getMaxTotal()
+ */
+ public int getMaxTotal() {
+ return maxTotal;
+ }
+
+ /**
+ * Get the value for the {@code maxIdle} configuration attribute
+ * for pools to be created with this configuration instance.
+ *
+ * @return The current setting of {@code maxIdle} for this
+ * configuration instance
+ * @see GenericObjectPoolConfig#getMaxIdle()
+ */
+ public int getMaxIdle() {
+ return maxIdle;
+ }
+
+ /**
+ * Get the value for the {@code minIdle} configuration attribute
+ * for pools to be created with this configuration instance.
+ *
+ * @return The current setting of {@code minIdle} for this
+ * configuration instance
+ * @see GenericObjectPoolConfig#getMinIdle()
+ */
+ public int getMinIdle() {
+ return minIdle;
+ }
+
+ /**
+ * Returns nodes.
+ *
+ * @return list of node information
+ */
+ public Set<HostAndPort> getNodes() {
+ Set<HostAndPort> ret = new HashSet<>();
+ for (InetSocketAddress node : nodes) {
+ ret.add(new HostAndPort(node.getHostName(),
node.getPort()));
+ }
+ return ret;
+ }
+
+ /**
+ * Returns socket / connection timeout.
+ *
+ * @return socket / connection timeout
+ */
+ public int getTimeout() {
+ return timeout;
+ }
+
+ /**
+ * Returns limit of redirection.
+ *
+ * @return limit of redirection
+ */
+ public int getMaxRedirections() {
+ return maxRedirections;
+ }
+
+
+ /**
+ * Builder for initializing JedisClusterConfig.
--- End diff --
Nit: {@link JedisClusterConfig} or {@code JedisClusterConfig}.
> Redis SInk Connector
> --------------------
>
> Key: FLINK-3034
> URL: https://issues.apache.org/jira/browse/FLINK-3034
> Project: Flink
> Issue Type: New Feature
> Components: Streaming Connectors
> Reporter: Matthias J. Sax
> Assignee: Subhankar Biswas
> Priority: Minor
>
> Flink does not provide a sink connector for Redis.
> See FLINK-3033
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)