[
https://issues.apache.org/jira/browse/GEODE-2860?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16072926#comment-16072926
]
ASF GitHub Bot commented on GEODE-2860:
---------------------------------------
GitHub user nreich opened a pull request:
https://github.com/apache/geode/pull/616
GEODE-2860: Refactor use of EventTracker
* change EventTracker to an interface with two implementations
* move as much logic out of LocalRegion down into subclasses that
make use EventTracker
* move and refactor static inner classes in EventTracker into own
class files
* migrate some of event-focused classes into a new sub package
* add tests for existing logic from EventTracker
Thank you for submitting a contribution to Apache Geode.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
### For all changes:
- [x] Is there a JIRA ticket associated with this PR? Is it referenced in
the commit message?
- [x] Has your PR been rebased against the latest commit within the target
branch (typically `develop`)?
- [x] Is your initial contribution a single, squashed commit?
- [x] Does `gradlew build` run cleanly?
- [x] Have you written or updated unit tests to verify your changes?
- [NA] 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)?
### 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. If you need help, please
send an
email to [email protected].
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/nreich/geode feature/GEODE-2860
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/geode/pull/616.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 #616
----
commit 0e215d4ba961abb7dd293662a7586aacf2369f00
Author: Nick Reich <[email protected]>
Date: 2017-06-30T23:05:58Z
GEODE-2860: Refactor use of EventTracker
* change EventTracker to an interface with two implementations
* move as much logic out of LocalRegion down into subclasses that
make use EventTracker
* move and refactor static inner classes in EventTracker into own
class files
* migrate some of event-focused classes into a new sub package
* add tests for existing logic from EventTracker
----
> refactor EventTracker to be on DistributedRegion instead of LocalRegion
> -----------------------------------------------------------------------
>
> Key: GEODE-2860
> URL: https://issues.apache.org/jira/browse/GEODE-2860
> Project: Geode
> Issue Type: Improvement
> Components: regions
> Reporter: Darrel Schneider
> Assignee: Nick Reich
> Labels: storage_3
>
> Currently LocalRegion has a non-final field named "eventTracker". It is
> initialized in a method named createEventTracker which does nothing on
> LocalRegion but is implemented on DistributedRegion and BucketRegion to
> initialize the eventTracker field.
> I think things would be clearer if this field was moved to DistributedRegion.
> All the code on LocalRegion that currently tests for a non-null eventTracker
> can be changed to do nothing and overridden on DistributedRegion to use its
> eventTracker. DistributedRegion can make this field final and always set it
> in its constructor. Since BucketRegion extends DistributedRegion it does not
> to do anything (it currently implements createEventTracker but that was not
> needed since it inherits the same impl from DistributedRegion).
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)