Split message filtering functionality into distinct operators #64
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.
This PR deprecates the existing
FilterMessage
operator and introduces two new operators:FilterMessageType
which is a general operator that can work for all messages; andFilterRegister
which can be extended by different device packages to filter device-specific messages.Both of these operators expose a
FilterType
property specifying whether the filter includes or excludes all messages matching its criteria. For consistency, we also drop the message type property from theParse
operators. The filter inParse
is always inclusive-only sinceParse
cannot promise to know how to handle arbitrary messages outside its specified register.Fixes #61