Five Minutes Tutorial
Create a new Spring Boot 3.x project
Head over to start.spring.io and create a new project with Spring Boot 3.
Add the Apache SCIMple dependencies to the project:
<dependency>
<groupId>org.apache.directory.scimple</groupId>
<artifactId>scim-spring-boot-starter</artifactId>
<version>1.0.0-M1</version>
</dependency>
<dependency>
<groupId>org.apache.directory.scimple</groupId>
<artifactId>scim-server</artifactId>
<version>1.0.0-M1</version>
</dependency>
Implement Repositories
A SCIMple Repository
is an abstraction used to reduce the boiler plain needed to implement a SCIM service. Each
Repository
implementation translates data to and from SCIMple’s data model to an underlying data store.
TL;DR A
Repository
handles all the CRUD operations of your User and Group data store.
For example, to create an in-memory Repository
that manages users objects, create a new class:
@Service
public class InMemoryUserService implements Repository<ScimUser> {
Then implement each method (create
, get
, update
, delete
, and find
).
The first four map to the expected CRUD operations, and the last method find
, allows you to transform a SCIM query,
into the query languages your objects are stored in.
You can view this complete example on GitHub.