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

Support ADD patch ops targeting existing values #230

Merged

Conversation

kqarryzada
Copy link
Collaborator

@kqarryzada kqarryzada commented Sep 6, 2024

In the 3.0.0 release, we implemented support for ADD patch operations
with a value filter. The SDK would always append a new value to the
array, since it is technically an "add". However, this does not play
well with SCIM provisioners that send multiple individual updates,
since these intend to target the same value within a multi-valued
attribute, such as a user's work email. The intention is to add a new
value to the field that matches the path filter (e.g.,
"type eq "work"").

The new behavior is available via an opt-in setting in a static boolean
variable, PatchOperation.APPEND_NEW_PATCH_VALUES_PROPERTY. To opt into
this setting, set the value of this variable to false.

As a result of this change, the version of the SCIM SDK has been updated
to 3.2.0-SNAPSHOT.

Reviewer: vyhhuang
Reviewer: dougbulkley

JiraIssue: DS-49194
Resolves #213

@kqarryzada kqarryzada self-assigned this Sep 6, 2024
Copy link

@vyhhuang vyhhuang left a comment

Choose a reason for hiding this comment

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

I had one implementation concern, but all of my other remarks are comment based and don't necessarily require action.

Copy link

@dougbulkley dougbulkley left a comment

Choose a reason for hiding this comment

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

Khalid and I met over zoom yesterday to discuss this and my comments are in the DS issue.

@kqarryzada kqarryzada force-pushed the DS-49194-add-with-value-filter-should-target-existing-data branch from 8069300 to a33e2a1 Compare September 19, 2024 15:51
Added a release note that indicates that the Jackson dependency was
upgraded.
In the 3.0.0 release, we implemented support for ADD patch operations
with a value filter. The SDK would always append a new value to the
array, since it is technically an "add". However, this does not play
well with SCIM provisioners that send multiple individual updates,
since these intend to target the same value within a multi-valued
attribute, such as a user's work email. The intention is to add a new
value to the field that matches the path filter (e.g.,
"type eq \"work\""). This commit adds support for this behavior.

The new behavior is available via an opt-in setting in a static boolean
variable, PatchOperation.APPEND_NEW_PATCH_VALUES_PROPERTY. To opt into
this setting, set the value of this variable to false.

As a result of this change, the version of the SCIM SDK has been updated
to 3.2.0-SNAPSHOT.

Reviewer: vyhhuang
Reviewer: dougbulkley

JiraIssue: DS-49194
@kqarryzada kqarryzada force-pushed the DS-49194-add-with-value-filter-should-target-existing-data branch from a33e2a1 to 6f74c28 Compare September 19, 2024 19:12
@kqarryzada kqarryzada merged commit b536175 into master Sep 19, 2024
10 checks passed
@kqarryzada kqarryzada deleted the DS-49194-add-with-value-filter-should-target-existing-data branch September 19, 2024 19:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants