From Bistre Macaw, 5 Years ago, written in Plain Text.
Embed
  1.     private Function<LaunchJwt, Mono<NamesRoleResponse>> namesRoleService = (launchJwt) -> {
  2.         NamesRoleService namesRoleService = launchJwt.getNamesRoleService();
  3.         if (Objects.nonNull(namesRoleService) && StringUtils.isNotBlank(namesRoleService.getContextMembershipsUrl())) {
  4.             String contextUrl = namesRoleService.getContextMembershipsUrl();
  5.             return configurationClient.getPlatformAccessToken(constructAuthInfo(launchJwt))
  6.                 .flatMap(oAuth2AccessToken -> namesAndRolesClient.getNamesAndRolesInfo(contextUrl, oAuth2AccessToken.getValue()));
  7.         }
  8.         return Mono.empty();
  9.     };
  10.  
  11.     private Function<LaunchJwt, Mono<NamesRoleResponse>> contextClaimService = (launchJwt) -> {
  12.         if (Objects.nonNull(launchJwt.getContext())) {
  13.             NamesRoleResponse namesRoleResponse = new NamesRoleResponse();
  14.             namesRoleResponse.setMembers(new ArrayList<Member>());
  15.             namesRoleResponse.setContext(constructCourseContext(launchJwt));
  16.             return Mono.just(namesRoleResponse);
  17.         }
  18.         return Mono.empty();
  19.     };
  20.    
  21.     // if teacher
  22.     private List<Function<LaunchJwt, Mono<NamesRoleResponse>>> namesRolesResponseSources = List.of(namesRoleService, contextClaimService);
  23.     // if student
  24.     // private List<Function<LaunchJwt, Mono<NamesRoleResponse>>> namesRolesResponseSources = List.of(contextClaimService, namesRoleService);
  25.