WIP: Fix #53: Add validation for $set
, $unset
Update operations not to allow changing _id
#54
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.
Changed the way Update operations are handled: instead only having
UpdateOperator
andDocumentUpdater
implementing logic there is now base typeUpdateOperation
and construction happens in 2 separate phases:UpdateClause
; bindsUpdateOperator
marker but not JSON Object that configures operationUpdateClause.buildOperations()
will constructUpdateOperation
s and handle cross-operation validation -- this will allow passing more configuration if necessary, in future (for Upsert handling etc)With the logic separated more validation is done:
$inc
as an example of known but not yet supported)_id
(now checked)This change is the base to start adding handling for nested properties (sub-documents).
Could also consider implementing "$inc" operator since it seems relatively straight-forward.