Prototype sketching JSON Merge Patch convenience APIs#37341
Closed
annelo-msft wants to merge 121 commits intoAzure:mainfrom
Closed
Prototype sketching JSON Merge Patch convenience APIs#37341annelo-msft wants to merge 121 commits intoAzure:mainfrom
annelo-msft wants to merge 121 commits intoAzure:mainfrom
Conversation
* wip * wip * wip * wip * wip
* add scaffolding for readme * fix type on class name * one more typo :-( * make tests sync
…o feature/updateSerializer
* add use cases for explicit casts * remove extra empty line * add custom expected value for net462
* add use cases for stj * address feedback * add some clarification to readme
* wip * wip * wip * Update StaticDeserializerTests.cs * Update StaticDeserializerTests.cs * Update StaticDeserializerTests.cs
* add use cases for stj * address feedback * add some clarification to readme * add model serializer example * move serialization classes into azure.core.serialization * update after namespace move
* Update SerializableOptions.cs * wip * wip * update * wip * wip
…o feature/updateSerializer
* wip * Update ModelSerializer.cs * wip * Update ReadOnlyPropertyTests.cs * wip * Update SerializableOptions.cs * Update SerializableOptions.cs * wip * wip * Update SerializationSamples.cs
* demo of what it would look like for public surface * wip * update tests and more renames * name tweaks * update api * add nullable * adjust public api surface and move test cases to public project to avoid internalsvisibleto * integrate feature/updateSerializer * rename IModel to IModelSerializable since it now has the serialization methods on it * share deserialization code between converter and modelserializer
* wip * wip * Update Serialization.md * Update ModelXmlTests.cs * wip * wip * update combined interface example --------- Co-authored-by: m-nash <prognash@gmail.com>
* update to v1 api surface * update api after merge
Member
Author
|
Closing in favor of #38324 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Prototype addressing #27402
Description
We plan to generate convenience APIs for PATCH operations for clients that use JSON Merge Patch. This PR provides a sketch of what that might look like using MutableJsonDocument to track changes to convenience-layer models, and generate the JSON Merge Patch request content from the MutableJsonDocument changelist.
The primary elements of the proposed design include:
Testis a model in this API, which I generated from the swagger as a convenience -- we would need a less general name.)WritePatch()method on the model that calls through to MutableJsonElement.WriteTo(), passing the 'P' format parameter.Additional details include:
Some auxiliary notes:
TODOs: