groupService = $groupService; } /** * @NoCSRFRequired * @PublicPage * * @param string $filter * @return SCIMListResponse * returns a list of groups and their data */ public function index(string $filter = ''): SCIMListResponse { return $this->groupService->getAll($filter); } /** * @NoCSRFRequired * @PublicPage * * gets group info * * @param string $id * @return SCIMJSONResponse */ // TODO: Add filtering support here as well public function show(string $id): SCIMJSONResponse { return $this->groupService->getOneById($id); } /** * @NoCSRFRequired * @PublicPage * * @param string $displayName * @param array $members * @return SCIMJSONResponse */ public function create(string $displayName = '', array $members = []): SCIMJSONResponse { return $this->groupService->create($displayName, $members); } /** * @NoCSRFRequired * @PublicPage * * @param string $id * * @param string $displayName * @param array $members * @return SCIMJSONResponse */ public function update(string $id, string $displayName = '', array $members = []): SCIMJSONResponse { return $this->groupService->update($id, $displayName, $members); } /** * @NoCSRFRequired * @PublicPage * * @param string $id * @return Response */ public function destroy(string $id): Response { return $this->groupService->destroy($id); } }