Le service GroupService expose les opérations suivantes :
create: pour créer un groupeget: pour récupérer un groupeupdate: pour modifier un groupesearch: pour rechercher des groupesdelete: pour supprimer un groupe
Récupération de groupes
Modèle
Les paramètres à renseigner sont :
| Nom | Description |
|---|---|
names |
Les identifiants uniques des groupes à remonter (séparés par une virgule) |
resolveAuthorities |
Détermine si les profils et les groupes doivent être remontés |
Exemple
L’exemple ci-dessous indique comment récupérer des groupes.
# <CORE_HOST> URL de base de FlowerDocs Core
# <TOKEN> jeton d'authentification
# <NAMES> noms des groupes à récupérer
# <RESOLVE_AUTHORITIES> résoudre les autorités (true/false)
curl -X GET "<CORE_HOST>/rest/groups/<NAMES>?resolveAuthorities=<RESOLVE_AUTHORITIES>" \
-H "token: <TOKEN>"
@Autowired
private GroupService groupService;
@GetMapping
public List<Group> get() throws TechnicalException, FunctionalException
{
List<String> names = Lists.newArrayList("administrators");
return groupService.get(names, true);
}
Recherche de groupes
Modèle
Le paramètre à renseigner est name, il correspond à la valeur recherchée. La recherche peut s’effectuer sur le nom du groupe, renseigné entièrement ou partiellement.
Exemple
L’exemple ci-dessous indique comment rechercher des groupes.
# <CORE_HOST> URL de base de FlowerDocs Core
# <TOKEN> jeton d'authentification
# <NAME> le nom du groupe
curl -X GET "<CORE_HOST>/rest/groups/search?name=<NAME>" \
-H "token: <TOKEN>"
@Autowired
private GroupService groupService;
@GetMapping("/search")
public List<Group> search() throws TechnicalException, FunctionalException
{
return groupService.search("admin");
}
Création et modification d’un groupe
Modèle
Le modèle utilisé par les appels create et update se présente comme ceci :
{
"id": "string",
"displayName": "string",
"mail": "string",
"attributes": [
{
"name": "string",
"values": [
"string"
]
}
],
"groups": [
"string"
],
"profiles": [
"string"
],
"members": [
"string"
]
}Voici la description associée à l’ensemble des données de l’appel :
id: identifiant unique du groupedisplayNameetmail: informations du groupeprofilesetgroups: listes respectives des profils et groupes parentsmembers: liste des identifiants des utilisateurs appartenant à ce groupeattributes: liste d’attributs supplémentaires
Exemple
Les exemples ci-dessous indiquent comment créer et modifier un groupe.
# <CORE_HOST> URL de base de FlowerDocs Core
# <TOKEN> jeton d'authentification
curl -X POST "<CORE_HOST>/rest/groups/" \
-H "token: <TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"id": "developpeurs",
"displayName": "Equipe de développement",
"mail": "dev@exemple.com",
"attributes": [],
"groups": [],
"profiles": [
"AllUsers"
],
"members": [
"user1", "user2"
]
}'
@Autowired
private GroupService groupService;
public void create() throws TechnicalException, FunctionalException
{
Group group = new Group();
group.setId(new Id("developpeurs"));
group.setDisplayName("Equipe de développement");
group.setMail("dev@exemple.com");
group.setMembers(Lists.newArrayList(new Id("user1"), new Id("user2")));
group.setProfiles(Lists.newArrayList(new Id("AllUsers")));
groupService.create(group);
}
# <CORE_HOST> URL de base de FlowerDocs Core
# <TOKEN> jeton d'authentification
# <NAME> nom du groupe
curl -X POST "<CORE_HOST>/rest/groups/<NAME>" \
-H "token: <TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"id": "developpeurs",
"displayName": "Equipe Dev",
"mail": "dev@exemple.com",
"members": [
"user1", "user2", "user3"
]
}'
@Autowired
private GroupService groupService;
public void update() throws TechnicalException, FunctionalException
{
Group group = new Group();
group.setId(new Id("developpeurs"));
group.setDisplayName("Equipe Dev");
group.setMembers(Lists.newArrayList(new Id("user1"), new Id("user2"), new Id("user3")));
groupService.update(group);
}
Supprimer un groupe
Modèle
Le paramètre à renseigner est name, l’identifiant unique du groupe à supprimer.
Exemple
L’exemple ci-dessous indique comment supprimer un groupe.
# <CORE_HOST> URL de base de FlowerDocs Core
# <TOKEN> jeton d'authentification
# <NAME> nom du groupe
curl -X DELETE "<CORE_HOST>/rest/groups/<NAME>" \
-H "token: <TOKEN>"
@Autowired
private GroupService groupService;
public void delete() throws FunctionalException, TechnicalException
{
String name = "developpeurs";
groupService.delete(name);
}