Как вернуть список из потока возвращаемого значения mongodb - PullRequest
0 голосов
/ 03 августа 2020

кто-нибудь может мне помочь. Я использую приложение весенней загрузки с реактивным репозиторием mongodb. Я хочу получить значение в виде списка идентификаторов.

List<String> userIds = assignJob();

public List<String> assignJob(){
    return userRepository.findAllByStatus(UserStatus.ACTIVE)
            .map(userSchema -> {
                return getUserId(userSchema);
            });
}

private String getUserId(UserSchema userSchema){
    return userSchema.getId();
}

Репозиторий

import com.colakins.measurementtools.persistence.enumeration.UserStatus;
import com.colakins.measurementtools.persistence.schema.UserSchema;
import org.springframework.data.mongodb.repository.ReactiveMongoRepository;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;

public interface UserRepository extends ReactiveMongoRepository<UserSchema, String> {
    Mono<UserSchema> findOneByEmail(String email);

    Flux<UserSchema> findAllByStatus(UserStatus status);
}

userSchema

@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Document("users")
public class UserSchema {
    @Id
    private String id;
    private String name;
}
...