You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by tr...@apache.org on 2018/07/16 21:06:35 UTC

[6/8] flink git commit: [hotfix] Add EXCLUSIONS set to ConfigOptionsDocGenerator

[hotfix] Add EXCLUSIONS set to ConfigOptionsDocGenerator


Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/a88d6efc
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/a88d6efc
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/a88d6efc

Branch: refs/heads/master
Commit: a88d6efc5d2280367e27c3df46451bd161a4d100
Parents: dbddf00
Author: Till Rohrmann <tr...@apache.org>
Authored: Mon Jul 16 13:11:14 2018 +0200
Committer: Till Rohrmann <tr...@apache.org>
Committed: Mon Jul 16 22:11:57 2018 +0200

----------------------------------------------------------------------
 .../ConfigOptionsDocGenerator.java              | 23 +++++++++++++++-----
 1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/a88d6efc/flink-docs/src/main/java/org/apache/flink/docs/configuration/ConfigOptionsDocGenerator.java
----------------------------------------------------------------------
diff --git a/flink-docs/src/main/java/org/apache/flink/docs/configuration/ConfigOptionsDocGenerator.java b/flink-docs/src/main/java/org/apache/flink/docs/configuration/ConfigOptionsDocGenerator.java
index 743f49f..953122f 100644
--- a/flink-docs/src/main/java/org/apache/flink/docs/configuration/ConfigOptionsDocGenerator.java
+++ b/flink-docs/src/main/java/org/apache/flink/docs/configuration/ConfigOptionsDocGenerator.java
@@ -26,8 +26,6 @@ import org.apache.flink.api.java.tuple.Tuple2;
 import org.apache.flink.configuration.ConfigOption;
 import org.apache.flink.util.function.ThrowingConsumer;
 
-import static org.apache.flink.docs.util.Utils.escapeCharacters;
-
 import java.io.IOException;
 import java.lang.reflect.Field;
 import java.nio.charset.StandardCharsets;
@@ -36,15 +34,20 @@ import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
+import static org.apache.flink.docs.util.Utils.escapeCharacters;
+
 /**
  * Class used for generating code based documentation of configuration parameters.
  */
@@ -56,9 +59,13 @@ public class ConfigOptionsDocGenerator {
 		new OptionsClassLocation("flink-yarn", "org.apache.flink.yarn.configuration"),
 		new OptionsClassLocation("flink-mesos", "org.apache.flink.mesos.configuration"),
 		new OptionsClassLocation("flink-mesos", "org.apache.flink.mesos.runtime.clusterframework"),
-		new OptionsClassLocation("flink-metrics/flink-metrics-prometheus", "org.apache.flink.metrics.prometheus"),
+		new OptionsClassLocation("flink-metrics/flink-metrics-prometheus", "org.apache.flink.metrics.prometheus")
 	};
 
+	static final Set<String> EXCLUSIONS = new HashSet<>(Arrays.asList(
+		"org.apache.flink.configuration.ConfigOptions",
+		"org.apache.flink.contrib.streaming.state.PredefinedOptions"));
+
 	static final String DEFAULT_PATH_PREFIX = "src/main/java";
 
 	@VisibleForTesting
@@ -149,9 +156,13 @@ public class ConfigOptionsDocGenerator {
 			for (Path entry : stream) {
 				String fileName = entry.getFileName().toString();
 				Matcher matcher = CLASS_NAME_PATTERN.matcher(fileName);
-				if (!fileName.equals("ConfigOptions.java") && matcher.matches()) {
-					Class<?> optionsClass = Class.forName(packageName + '.' + matcher.group(CLASS_NAME_GROUP));
-					classConsumer.accept(optionsClass);
+				if (matcher.matches()) {
+					final String className = packageName + '.' + matcher.group(CLASS_NAME_GROUP);
+
+					if (!EXCLUSIONS.contains(className)) {
+						Class<?> optionsClass = Class.forName(className);
+						classConsumer.accept(optionsClass);
+					}
 				}
 			}
 		}