GitHub user merrimanr opened a pull request:

    https://github.com/apache/metron/pull/1080

    METRON-1635: Alerts UI status update doesn't immediately show up

    ## Contributor Comments
    This PR changes the behavior of the Alerts UI by applying alert status 
updates optimistically.  The approach is similar to the change in 
https://github.com/apache/metron/pull/1077.  I also changed the process of 
renaming a metaalert to be optimistic as well since it follows the same 
pattern.  I'm happy to split that off into a separate PR.
    
    ### Changes Included
    
    - Refactored the getData method by moving logic to update an alert to it's 
own method.
    - Removed the toggleAlertEditor parameter from the getData function.  This 
should be called separately in my opinion.
    - Moved redundant code to a single updateAlertState function
    - Updated the alert update process to immediately apply the update to the 
UI and revert to the previous state when an update fails.
    - Updated the metaalert name update process to immediately apply the update 
to the UI and revert to the previous state when an update fails.
    
    ### Testing
    
    This has been tested in full dev. Navigate to the Alerts UI and open the 
details panel for an alert.  Changing the status of an alert should be 
reflected in the UI immediately.  To test the case of an error being returned 
from the back end, I stopped the REST application and then tried to change the 
alert status.  You should see the alert status change for no more than a split 
second before reverting to the previous state.  The name change fix can also be 
tested this way by creating a metaalert and changing the name. 
    
    ## Pull Request Checklist
    
    Thank you for submitting a contribution to Apache Metron.  
    Please refer to our [Development 
Guidelines](https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=61332235)
 for the complete guide to follow for contributions.  
    Please refer also to our [Build Verification 
Guidelines](https://cwiki.apache.org/confluence/display/METRON/Verifying+Builds?show-miniview)
 for complete smoke testing guides.  
    
    
    In order to streamline the review of the contribution we ask you follow 
these guidelines and ask you to double check the following:
    
    ### For all changes:
    - [x] Is there a JIRA ticket associated with this PR? If not one needs to 
be created at [Metron 
Jira](https://issues.apache.org/jira/browse/METRON/?selectedTab=com.atlassian.jira.jira-projects-plugin:summary-panel).
    - [x] Does your PR title start with METRON-XXXX where XXXX is the JIRA 
number you are trying to resolve? Pay particular attention to the hyphen "-" 
character.
    - [x] Has your PR been rebased against the latest commit within the target 
branch (typically master)?
    
    
    ### For code changes:
    - [x] Have you included steps to reproduce the behavior or problem that is 
being changed or addressed?
    - [x] Have you included steps or a guide to how the change may be verified 
and tested manually?
    - [x] Have you ensured that the full suite of tests and checks have been 
executed in the root metron folder via:
      ```
      mvn -q clean integration-test install && 
dev-utilities/build-utils/verify_licenses.sh 
      ```
    
    - [x] Have you written or updated unit tests and or integration tests to 
verify your changes?
    - [x] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?
    - [x] Have you verified the basic functionality of the build by building 
and running locally with Vagrant full-dev environment or the equivalent?
    
    ### For documentation related changes:
    - [x] Have you ensured that format looks appropriate for the output in 
which it is rendered by building and verifying the site-book? If not then run 
the following commands and the verify changes via 
`site-book/target/site/index.html`:
    
      ```
      cd site-book
      mvn site
      ```
    
    #### Note:
    Please ensure that once the PR is submitted, you check travis-ci for build 
issues and submit an update to your PR as soon as possible.
    It is also recommended that [travis-ci](https://travis-ci.org) is set up 
for your personal repository such that your branches are built there before 
submitting a pull request.


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/merrimanr/incubator-metron METRON-1635

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/metron/pull/1080.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1080
    
----
commit 6204911ac6d99d9f2321267b8c947f2682b9f2d7
Author: merrimanr <merrimanr@...>
Date:   2018-06-22T20:25:32Z

    initial commit

commit 36b3254a9d50ac7b052e8c7dd7d51f5251f7f5fa
Author: merrimanr <merrimanr@...>
Date:   2018-06-25T21:20:11Z

    initial commit

commit b7145ff4591e3ff1da0bfeb5b6f434a5cfce2d2c
Author: merrimanr <merrimanr@...>
Date:   2018-06-25T21:24:07Z

    Merge branch 'METRON-1637' into METRON-1635

commit e975d86714bbc74592b5dabbd02994f76e011882
Author: merrimanr <merrimanr@...>
Date:   2018-06-26T13:11:14Z

    Merge remote-tracking branch 'mirror/master' into METRON-1635

----


---

Reply via email to