[ 
https://issues.apache.org/jira/browse/NIFIREG-77?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16318950#comment-16318950
 ] 

Bryan Bende commented on NIFIREG-77:
------------------------------------

[~DannyLane] thanks for jumping in here! 

I think that REST end-point makes a lot of sense, I was thinking of something 
similar myself. The only part we need to think about is what to return from 
that end-point...

Currently  NiFi makes a FlowComparator and calls compare() to get a 
FlowComparison which has FlowDifference objects. All of these are already part 
of the nifi-registry-flow-diff-module and NiFI is using it as a library, rather 
than a remote call.

NiFi then converts those objects into it's DTOs which are something like... 
FlowComparisonEntity -> set of ComponentDifferenceDTOs -> set of DifferenceDTOs.

I think it might make sense to return an entity that wraps a set/list of 
FlowDifference objects, and this way NiFi already has the code to convert those 
difference objects into it's appropriate DTOs. 

If we did it this way we would add something to the NiFi Registry client like:
{code}
FlowComparisonEntity getDifferences(String bucketId, String flowId, int 
firstVersion, int secondVersion)
{code}

Where FlowComparisonEntity has Set<FlowDifference> getDifferences()

What do you think about that? 

Maybe we can create two sub-tasks for this, one of the REST API and for the UI, 
this way we can work this in different chunks. 

For the UI we need some feedback from Rob and Scott, but I think the REST API 
can be fairly well-defined and worked.


> Allow a user to see the changes created by the currently loaded version
> -----------------------------------------------------------------------
>
>                 Key: NIFIREG-77
>                 URL: https://issues.apache.org/jira/browse/NIFIREG-77
>             Project: NiFi Registry
>          Issue Type: Improvement
>    Affects Versions: 0.1.0
>            Reporter: Joseph Percivall
>            Priority: Critical
>         Attachments: Suggestion for diff UX.png
>
>
> As a user, I would like to see the changes that are included in a particular 
> version. More specifically, if I'm on an old version and I upgrade to a 
> version written by someone else, I have no way to know what changes occurred 
> during that version upgrade.
> A simple solution would be to utilize the same logic which displays the 
> current differences between local and stored in the registry and use that to 
> show the differences between the current version N and version N-1. The user 
> could then change between versions to see the changes that happened as part 
> of that version.
> An even better solution (from a DFM perspective) would be to be able to see 
> the changes within any version (not just the most recent). That way a DFM 
> wouldn't have to stop the flow for an extended period of time to view the 
> changes/differences in different versions but I think that'd be more work.



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

Reply via email to