mirror of https://github.com/apache/nifi.git
35d79eaf0f
<h1>Changes</h1> - Instead of keeping a Set of referencing `ComponentNode`, keep instead a Map which stores, for each referencing component, also the name of the property for which the service is referenced - This is done to keep the `addReference()` idempotent - `StandardControllerService.referencingComponents` changed from HashSet to HashMap - `Key` is the combination of `ComponentNode.hashCode()` and property name - `Value` is the referencing `ComponentNode` - `ControllerServiceNode.addReference()` now requires a tuple (referring `ComponentNode`, property name) - `ControllerServiceNode.removeReference()` now requires a tuple (referring `ComponentNode`, property name) - `ControllerServiceNode.getReferences()` signature is left untouched, when it's called, the values of the `referencingComponents` map are turned into a Set, meaning a referencing component will keep being returned by this method until at least one of its properties still reference the `ControllerService` - `StandardSchedulingContext.leaseControllerService()` uses a dedicated constant - `FrameworkIntegrationTest` has a test which create a processor with two optional controller service properties and then verifies that having them referencing and dereferencing the same controller service doesn't cause the reported bug anymore Removed SchedulingContext from ClojureScriptEngineConfigurator Co-Authored-By: Marco Gaido <marcogaido91@gmail.com> Signed-off-by: Mark Payne <markap14@hotmail.com> This closes #3600. |
||
---|---|---|
.. | ||
src | ||
pom.xml |