You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by jp...@apache.org on 2016/06/27 23:11:01 UTC
nifi-minifi git commit: MINIFI-43 Fixing provenance instantiation and
removing some default constructors to prevent same problem in other classes
Repository: nifi-minifi
Updated Branches:
refs/heads/master 47cf2209e -> 8c47fb4a0
MINIFI-43 Fixing provenance instantiation and removing some default constructors to prevent same problem in other classes
This closes #20
Project: http://git-wip-us.apache.org/repos/asf/nifi-minifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-minifi/commit/8c47fb4a
Tree: http://git-wip-us.apache.org/repos/asf/nifi-minifi/tree/8c47fb4a
Diff: http://git-wip-us.apache.org/repos/asf/nifi-minifi/diff/8c47fb4a
Branch: refs/heads/master
Commit: 8c47fb4a0fe803b9ee3f3cacebe8d1d74c18e4e7
Parents: 47cf220
Author: Joseph Percivall <jo...@yahoo.com>
Authored: Mon Jun 27 12:52:58 2016 -0400
Committer: Joseph Percivall <jo...@yahoo.com>
Committed: Mon Jun 27 19:08:19 2016 -0400
----------------------------------------------------------------------
.../bootstrap/util/schema/ConfigSchema.java | 6 +-----
.../bootstrap/util/schema/ConnectionSchema.java | 3 ---
.../util/schema/FlowControllerSchema.java | 3 ---
.../bootstrap/util/schema/ProcessorSchema.java | 3 ---
.../util/schema/ProvenanceReportingSchema.java | 3 ---
.../util/schema/RemoteInputPortSchema.java | 3 ---
.../schema/RemoteProcessingGroupSchema.java | 3 ---
.../util/schema/SecurityPropertiesSchema.java | 16 +++++++-------
.../util/schema/common/BaseSchema.java | 22 +++++++++++++-------
.../src/test/resources/config-minimal.yml | 2 +-
10 files changed, 25 insertions(+), 39 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/8c47fb4a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ConfigSchema.java
----------------------------------------------------------------------
diff --git a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ConfigSchema.java b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ConfigSchema.java
index 6d3d7ca..5323675 100644
--- a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ConfigSchema.java
+++ b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ConfigSchema.java
@@ -52,11 +52,7 @@ public class ConfigSchema extends BaseSchema {
private ProvenanceRepositorySchema provenanceRepositorySchema;
- public ConfigSchema() {
- }
-
public ConfigSchema(Map map) {
- Object obj ;
flowControllerProperties = getMapAsType(map, FLOW_CONTROLLER_PROPS_KEY, FlowControllerSchema.class, TOP_LEVEL_NAME, true);
coreProperties = getMapAsType(map, CORE_PROPS_KEY, CorePropertiesSchema.class, TOP_LEVEL_NAME, false);
@@ -81,7 +77,7 @@ public class ConfigSchema extends BaseSchema {
transformListToType(remoteProcessingGroups, "remote processing group", RemoteProcessingGroupSchema.class, REMOTE_PROCESSING_GROUPS_KEY);
}
- provenanceReportingProperties = getMapAsType(map, PROVENANCE_REPORTING_KEY, ProvenanceReportingSchema.class, TOP_LEVEL_NAME, false);
+ provenanceReportingProperties = getMapAsType(map, PROVENANCE_REPORTING_KEY, ProvenanceReportingSchema.class, TOP_LEVEL_NAME, false, false);
addIssuesIfNotNull(flowControllerProperties);
addIssuesIfNotNull(coreProperties);
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/8c47fb4a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ConnectionSchema.java
----------------------------------------------------------------------
diff --git a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ConnectionSchema.java b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ConnectionSchema.java
index f7024f8..9ae57d7 100644
--- a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ConnectionSchema.java
+++ b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ConnectionSchema.java
@@ -44,9 +44,6 @@ public class ConnectionSchema extends BaseSchema {
private String flowfileExpiration = "0 sec";
private String queuePrioritizerClass = "";
- public ConnectionSchema() {
- }
-
public ConnectionSchema(Map map) {
name = getRequiredKeyAsType(map, NAME_KEY, String.class, CONNECTIONS_KEY);
sourceName = getRequiredKeyAsType(map, SOURCE_NAME_KEY, String.class, CONNECTIONS_KEY);
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/8c47fb4a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/FlowControllerSchema.java
----------------------------------------------------------------------
diff --git a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/FlowControllerSchema.java b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/FlowControllerSchema.java
index 1d7500a..7c04da0 100644
--- a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/FlowControllerSchema.java
+++ b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/FlowControllerSchema.java
@@ -32,9 +32,6 @@ public class FlowControllerSchema extends BaseSchema {
private String name;
private String comment = "";
- public FlowControllerSchema() {
- }
-
public FlowControllerSchema(Map map) {
name = getRequiredKeyAsType(map, NAME_KEY, String.class, FLOW_CONTROLLER_PROPS_KEY);
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/8c47fb4a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ProcessorSchema.java
----------------------------------------------------------------------
diff --git a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ProcessorSchema.java b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ProcessorSchema.java
index bb86c8c..622e945 100644
--- a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ProcessorSchema.java
+++ b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ProcessorSchema.java
@@ -52,9 +52,6 @@ public class ProcessorSchema extends BaseSchema {
private List<String> autoTerminatedRelationshipsList = Collections.emptyList();
private Map<String, Object> properties = Collections.emptyMap();
- public ProcessorSchema() {
- }
-
public ProcessorSchema(Map map) {
name = getRequiredKeyAsType(map, NAME_KEY, String.class, PROCESSORS_KEY);
processorClass = getRequiredKeyAsType(map, CLASS_KEY, String.class, PROCESSORS_KEY);
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/8c47fb4a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ProvenanceReportingSchema.java
----------------------------------------------------------------------
diff --git a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ProvenanceReportingSchema.java b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ProvenanceReportingSchema.java
index 8e98ffe..a260916 100644
--- a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ProvenanceReportingSchema.java
+++ b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/ProvenanceReportingSchema.java
@@ -47,9 +47,6 @@ public class ProvenanceReportingSchema extends BaseSchema {
private String timeout = "30 secs";
private Number batchSize = 1000;
- public ProvenanceReportingSchema() {
- }
-
public ProvenanceReportingSchema(Map map) {
comment = getOptionalKeyAsType(map, COMMENT_KEY, String.class, PROVENANCE_REPORTING_KEY, null);
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/8c47fb4a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/RemoteInputPortSchema.java
----------------------------------------------------------------------
diff --git a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/RemoteInputPortSchema.java b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/RemoteInputPortSchema.java
index cfcb611..9b0cdc7 100644
--- a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/RemoteInputPortSchema.java
+++ b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/RemoteInputPortSchema.java
@@ -38,9 +38,6 @@ public class RemoteInputPortSchema extends BaseSchema {
private Number maxConcurrentTasks = 1;
private Boolean useCompression = true;
- public RemoteInputPortSchema() {
- }
-
public RemoteInputPortSchema(Map map) {
id = getRequiredKeyAsType(map, ID_KEY, String.class, INPUT_PORTS_KEY);
name = getRequiredKeyAsType(map, NAME_KEY, String.class, INPUT_PORTS_KEY);
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/8c47fb4a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/RemoteProcessingGroupSchema.java
----------------------------------------------------------------------
diff --git a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/RemoteProcessingGroupSchema.java b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/RemoteProcessingGroupSchema.java
index e69f023..7c32183 100644
--- a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/RemoteProcessingGroupSchema.java
+++ b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/RemoteProcessingGroupSchema.java
@@ -41,9 +41,6 @@ public class RemoteProcessingGroupSchema extends BaseSchema {
private String yieldPeriod = "10 sec";
private List<RemoteInputPortSchema> inputPorts;
- public RemoteProcessingGroupSchema() {
- }
-
public RemoteProcessingGroupSchema(Map map) {
name = getRequiredKeyAsType(map, NAME_KEY, String.class, REMOTE_PROCESSING_GROUPS_KEY);
url = getRequiredKeyAsType(map, URL_KEY, String.class, REMOTE_PROCESSING_GROUPS_KEY);
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/8c47fb4a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/SecurityPropertiesSchema.java
----------------------------------------------------------------------
diff --git a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/SecurityPropertiesSchema.java b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/SecurityPropertiesSchema.java
index a303125..b6a47a3 100644
--- a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/SecurityPropertiesSchema.java
+++ b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/SecurityPropertiesSchema.java
@@ -37,14 +37,14 @@ public class SecurityPropertiesSchema extends BaseSchema {
public static final String TRUSTSTORE_PASSWORD_KEY = "truststore password";
public static final String SSL_PROTOCOL_KEY = "ssl protocol";
- private String keystore;
- private String keystoreType;
- private String keystorePassword;
- private String keyPassword;
- private String truststore;
- private String truststoreType;
- private String truststorePassword;
- private String sslProtocol;
+ private String keystore = "";
+ private String keystoreType = "";
+ private String keystorePassword = "";
+ private String keyPassword = "";
+ private String truststore = "";
+ private String truststoreType = "";
+ private String truststorePassword = "";
+ private String sslProtocol = "";
private SensitivePropsSchema sensitiveProps;
public SecurityPropertiesSchema() {
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/8c47fb4a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/common/BaseSchema.java
----------------------------------------------------------------------
diff --git a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/common/BaseSchema.java b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/common/BaseSchema.java
index a29be6d..ec670c4 100644
--- a/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/common/BaseSchema.java
+++ b/minifi-bootstrap/src/main/java/org/apache/nifi/minifi/bootstrap/util/schema/common/BaseSchema.java
@@ -91,27 +91,35 @@ public class BaseSchema {
public <T> T getMapAsType(Map valueMap, String key, Class targetClass, String wrapperName, boolean required) {
Object obj = valueMap.get(key);
- return interpretValueAsType(obj, key, targetClass, wrapperName, required);
+ return interpretValueAsType(obj, key, targetClass, wrapperName, required, true);
+ }
+
+ public <T> T getMapAsType(Map valueMap, String key, Class targetClass, String wrapperName, boolean required, boolean instantiateIfNull) {
+ Object obj = valueMap.get(key);
+ return interpretValueAsType(obj, key, targetClass, wrapperName, required, instantiateIfNull);
}
public void transformListToType(List list, String simpleListType, Class targetClass, String wrapperName){
for (int i = 0; i < list.size(); i++) {
- Object obj = interpretValueAsType(list.get(i), simpleListType + " number " + i, targetClass, wrapperName, false);
+ Object obj = interpretValueAsType(list.get(i), simpleListType + " number " + i, targetClass, wrapperName, false, false);
if (obj != null) {
list.set(i, obj);
}
}
}
- private <T> T interpretValueAsType(Object obj, String key, Class targetClass, String wrapperName, boolean required) {
+ private <T> T interpretValueAsType(Object obj, String key, Class targetClass, String wrapperName, boolean required, boolean instantiateIfNull) {
if (obj == null) {
if (required){
addValidationIssue(key, wrapperName, "it is a required property but was not found");
} else {
- try {
- return (T) targetClass.newInstance();
- } catch (InstantiationException | IllegalAccessException e) {
- addValidationIssue(key, wrapperName, "it is optional and when attempting to create it the following exception was thrown:" + e.getMessage());
+ if(instantiateIfNull) {
+ try {
+ return (T) targetClass.newInstance();
+ } catch (InstantiationException | IllegalAccessException e) {
+ addValidationIssue(key, wrapperName, "no value was given, and it is supposed to be created with default values as a default, and when attempting to create it the following " +
+ "exception was thrown:" + e.getMessage());
+ }
}
}
} else if (obj instanceof Map) {
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/8c47fb4a/minifi-bootstrap/src/test/resources/config-minimal.yml
----------------------------------------------------------------------
diff --git a/minifi-bootstrap/src/test/resources/config-minimal.yml b/minifi-bootstrap/src/test/resources/config-minimal.yml
index 573fef6..4a5f885 100644
--- a/minifi-bootstrap/src/test/resources/config-minimal.yml
+++ b/minifi-bootstrap/src/test/resources/config-minimal.yml
@@ -16,7 +16,7 @@
Flow Controller:
name: MiNiFi Flow
-# When creating the Flow (not doing the transform) these processors will be invalid due to not having the necesary properties/auto-terminated relationships
+# When running the Flow (not just doing the transform) these processors will be invalid due to not having the necesary properties/auto-terminated relationships
Processors:
- name: TailAppLog
class: org.apache.nifi.processors.standard.TailFile