Github user ijokarumawak commented on a diff in the pull request: https://github.com/apache/nifi/pull/2199#discussion_r145412969 --- Diff: nifi-nar-bundles/nifi-solr-bundle/nifi-solr-processors/src/main/java/org/apache/nifi/processors/solr/SolrProcessor.java --- @@ -275,7 +275,7 @@ protected final boolean isBasicAuthEnabled() { } @Override - protected final Collection<ValidationResult> customValidate(ValidationContext context) { + protected Collection<ValidationResult> customValidate(ValidationContext context) { --- End diff -- I imagine the reason why this customValidate is marked with `final` is that because the original author wanted to avoid sub-classes skip executing validation code implemented here. You implemented within GetSolr, and call `super.customValidate` from there, so it should be fine, but other sub-class can forget to call `super.customValidate` if we remove `final` keyword. So, I thought it might be safer approach to add an abstract method, such as `additionalCustomValidate` at SolrProcessor, then call it from customValidate, and let sub-classes implement custom validation in it.
---