You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Peter Horvath (JIRA)" <ji...@apache.org> on 2017/07/03 20:41:00 UTC

[jira] [Created] (NIFI-4147) Class org.apache.nifi.bootstrap.RunNiFi is not designed with extensibility in mind

Peter Horvath created NIFI-4147:
-----------------------------------

             Summary: Class org.apache.nifi.bootstrap.RunNiFi is not designed with extensibility in mind
                 Key: NIFI-4147
                 URL: https://issues.apache.org/jira/browse/NIFI-4147
             Project: Apache NiFi
          Issue Type: Improvement
          Components: Core Framework
            Reporter: Peter Horvath


Class org.apache.nifi.bootstrap.RunNiFi was not designed with extensibility in mind. This class is used to bootstrap the runtime; the current implementation does not support extending the class with different behaviour, that would be essential to bootstrap the engine within an integration test. 

This class should be changed so that it can be easily subclassed, allowing it to be later extended within an integration test runner:
* The verbose parameter within the RunNiFi constructor is not used: eliminate it
* getBootstrapConfFile() is static, which means it cannot easily be overridden in a test stub: replace with an instance method, which can be overridden
* Methods getPidFile, getStatusFile, getLockFile, getStatusFile are package protected, preventing these methods to be stubbed for an integration test: make them protected so that they can be overridden from a subclass (allowing an integration test runner to override default behaviour in a test run)

*Please note these changes are baby-steps towards the implementation of a NiFi integration test harness.*



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)