Comments (4)
Hi,
the way of overriding the user schema easier to understand in my eyes. If another developer looks into your code in two years it might be easier to understand that a custom schema is used if you copy and modify it. That is why I was suggesting doing so. Removing the attributes during runtime should also work though. Could you please explain the behaviour that you are experiencing?
It should be possible to remove attributes directly from the de.captaingoldfish.scim.sdk.common.schemas.Schema
class and the change should take effect immediately.
from scim-sdk.
Hmm, I was using getMainSchema
of the User
resource type I had registered, and when I would call removeAttribute
, the attribute would still appear when calling the /Schema
endpoint.
I understand your suggestion on copying and modifying, I was concerned that maintainers might be confused by the User
resource in the library compared to the custom OtherUser
resource we'd be maintaining ourselves, so that's why I was experimenting with the runtime modifications.
from scim-sdk.
I was just trying the following:
ResourceType userResourceType = resourceEndpoint.registerEndpoint(new UserEndpointDefinition(new UserHandler()));
userResourceType.setFeatures(ResourceTypeFeatures.builder().autoFiltering(true).autoSorting(true).build());
Schema mainSchema = userResourceType.getMainSchema();
SchemaAttribute ims = mainSchema.getSchemaAttribute(AttributeNames.RFC7643.IMS);
and the /Schemas-Endpoint was no longer returning the ims
-attribute. I you found a problem that causes the Schemas endpoint to return erroneous values please let me know but currently I cannot reproduce this problem.
I think this is also a perfectly fine and valid way of doing this if properly documented :-)
from scim-sdk.
This was definitely my misunderstanding of the API. I was using remove
and passing a property name that likely was not one of the constant values. Your example above cleared everything up, thanks so much!
from scim-sdk.
Related Issues (20)
- Resource IDs with spaces in them cause an invalid location URI to be generated HOT 7
- Azure SCIM validator error - id attribute HOT 7
- Azure patches multi-value attributes not like standard HOT 8
- Snyk scan is showing "Inadequate Encryption Strength" for scim-sdk-client HOT 1
- Running with `jakarta` dependencies fails HOT 3
- Getting ambuiguity while applying the filter HOT 1
- version choose in jdk 1.8 and spring boot 2 HOT 2
- Validation for non-supported attributes HOT 6
- Non-compliant Azure Patch Request on Add operation sends a simple User:manager attribute where scim-sdk (rightly) expects a complex attribute HOT 2
- Validation on response objects HOT 4
- Add transaction support HOT 9
- patch fails for complex-reference-type when using bulk
- ID missing after patch in update-method
- Allow Content-Type=application/json for incoming requests as SCIM server HOT 6
- Filtration/Pagination does not work as expected HOT 4
- Issue with concurrent Patch requests HOT 8
- With autoFiltering enabled, invalid compare operator causes Null Pointer Exception HOT 2
- Empty string in MsAzurePatchComplexValueRebuilder causes NullPointerException
- [Server] Patch request with invalid id causes Null Pointer Exception HOT 1
- [Server] Patch request without request body causes Null Pointer Exception
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from scim-sdk.