feat!: allow for consuming the same TD twice #140
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.
In the context of #133, I have noticed that the
consume
method currently throws an exception if you want to consume the same Thing Description twice (or rather: two Thing Descriptions that have the same “identifier”), which can have unintended consequences when performing discovery.This PR fixes the issue for now by changing the internal data structure from a
Map
to aSet
and not checking for the presence of a Thing Description (using itsid
ortitle
) anymore. This change is not really optimal and can only be considered a workaround, which I will properly fix as part of a general overhaul of theServient
API (which currently exposes too much API surface to the library user). That overhaul will be the next aspect of the library I will work on.