Implement Besu PrivateLog flowable subscription #1198
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What does this PR do?
One of the things that I noticed, is that the org.web3j.protocol.core.filters.Filter abstract class has a bunch of logic that can be reused for our filter. I notice that the BlockFilter, PendingTransactionFilter and LogFilter classes extend it.
However, the visibility of most of the needed methods of the Filter class are default. That forces any new filter class to be included in the same package as the Filter class.
Given that this is a web3j core package, I think adding Besu specific classes isn’t the best way forward.
If we change the visibility to protected, any class extending the
Filter
class would be able to use them. This way, I can create aPrivateLogFilter
class in the besu package and still reuse most of the code for filters.Where should the reviewer start?
TODO
Why is it needed?
To better support different types of filters that aren't standard.