Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feature/backing store #223

Merged
merged 71 commits into from
Jun 18, 2021
Merged

feature/backing store #223

merged 71 commits into from
Jun 18, 2021

Conversation

baywet
Copy link
Member

@baywet baywet commented Jun 7, 2021

  • adds backing store interface for dotnet abstractions
  • adds the backing store parameter to kiota host
  • adds IBackedModel interface to access the backing store during serilization and deserilization
  • adds change filtering on backing store - adds change status update on backing store
  • fixes a bug where store name was not being passed because of naming conventions
  • adds the backing store property and maps other properties to it

fixes #81

Generation changes

microsoft/kiota-samples#85

TODO:

  • Proxy pattern to flip the InitilizationCompleted and ReturnOnlyChangedValues for serialization/deserialization (object & object collections methods)
  • generate default constructor for default property values when using backing store
  • implementation for TypeScript
  • implementation for Java
  • getters & setters generation for TypeScript
  • getters & setters generation for Java
  • use readonly collections for collection properties?

@baywet baywet added this to the Alpha milestone Jun 7, 2021
@baywet baywet self-assigned this Jun 7, 2021
@baywet baywet force-pushed the feature/backing-store branch from 0138bf5 to be3aa39 Compare June 8, 2021 11:56
Base automatically changed from feature/parsable-alignment to main June 8, 2021 15:20
@baywet baywet force-pushed the feature/backing-store branch 4 times, most recently from 7e3f884 to bc8f02e Compare June 16, 2021 19:26
@baywet baywet force-pushed the feature/backing-store branch from 55014b1 to e5fb84f Compare June 17, 2021 18:32
@baywet baywet marked this pull request as ready for review June 17, 2021 19:42
@baywet baywet enabled auto-merge June 17, 2021 19:42
Copy link
Member

@MIchaelMainer MIchaelMainer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed at a high-level with Vincent via video conference.

global nit: add copyright and class documentation before finalizing PR. The code comments would've been useful during the review.

Do need documentation for backing store features. Backing store enables a lot. Capture the scenarios this enables in the documentation.

I didn't see a link to a design document. If one publicly exists, can you share? This is good stuff.

@baywet baywet force-pushed the feature/backing-store branch from 27da501 to 02bd6ab Compare June 18, 2021 12:52
@baywet baywet requested a review from abfarah as a code owner June 18, 2021 17:26
@baywet baywet requested a review from MIchaelMainer June 18, 2021 18:14
@sonarqubecloud
Copy link

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

87.8% 87.8% Coverage
0.0% 0.0% Duplication

Copy link
Member

@MIchaelMainer MIchaelMainer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I appreciate this feature a lot.

@baywet baywet disabled auto-merge June 18, 2021 18:50
@baywet baywet merged commit dd9363b into main Jun 18, 2021
@baywet baywet deleted the feature/backing-store branch June 18, 2021 18:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implement backing store factory and enable models to accept backing store
2 participants