我是反应式编程的新手。请协助在 Mutiny 中实现以下目标。
我有一个 DTO 课程
public class UserAppSessionDto{
private UserDto user;
private List<OrgDto> userOrgs;
private List<AppDto> userApps;
}
3种服务方式,一种退货Uni
,另一种退货Multi
。
Uni<UserDto> getUserByOrgUserId(Integer orgUserId);
Multi<AppDto> getUserApps(Integer orgUserId);
Multi<RoleDto> getUserRoles(Integer orgUserId);
我需要编写一个调用上述 3 个方法的服务方法,应用一些业务验证,将返回值设置为一个实例UserAppSessionDto
并返回一个Uni<UserAppSessionDto>
. 我已经提到了下面要应用的基本业务逻辑(空检查)。
public Uni<UserAppSessionDto> getUserAppSessionDetails(Integer orgUserId)
{
UserAppSessionDto user=new UserAppSessionDto();
//1. call the method Uni<UserDto> getUserByOrgUserId(Integer orgUserId)
//2. If UserDto (in the returned Uni) is not null, call Multi<AppDto> getUserApps(Integer orgUserId) and Multi<RoleDto> getUserRoles(Integer orgUserId) methods in parallel.
//3. Set the return values from the above three methods into user variable
//4. Return Uni<UserAppSessionDto>
return Uni.createFrom().item(user);
}