Rx java ReactiveX-单个<;T>;单身<;R>;

Rx java ReactiveX-单个<;T>;单身<;R>;,rx-java,retrofit2,reactivex,clean-architecture,rx-kotlin,Rx Java,Retrofit2,Reactivex,Clean Architecture,Rx Kotlin,我希望用一种干净的体系结构方法制作一个示例项目,但我在将单个项目转换为另一个项目时遇到了一些困难 我有我的改装服务(单程): @GET(“nearbysearch/json”)fun getNearbyPlaces(@Query(“type”)类型:String、@Query(“location”)位置:String、@Query(“radius”)半径:Int):Single 我在我的存储库实现中使用它: override fun getNearbyPlaces(type: String,

我希望用一种干净的体系结构方法制作一个示例项目,但我在将单个项目转换为另一个项目时遇到了一些困难

我有我的改装服务(单程):

@GET(“nearbysearch/json”)fun getNearbyPlaces(@Query(“type”)类型:String、@Query(“location”)位置:String、@Query(“radius”)半径:Int):Single
我在我的存储库实现中使用它:

override fun getNearbyPlaces(type: String, location: String, radius: Int): Single<List<Place>> {
    return googlePlacesApi.getNearbyPlaces(type, location, radius)
        .subscribeOn(Schedulers.io())
        .observeOn(Schedulers.computation())
        .doOnSuccess { googlePlacesNearbySearchResult -> nearbyPlaceListResultMapper.transform(googlePlacesNearbySearchResult) }
}
override fun getNearbyPlaces(类型:String,位置:String,半径:Int):Single{
返回googlePlacesApi.getNearbyPlaces(类型、位置、半径)
.subscribeOn(Schedulers.io())
.observeOn(Schedulers.computation())
.doOnSuccess{googlePlacesNearbySearchResult->nearbyPlaceListResultMapper.transform(googlePlacesNearbySearchResult)}
}
在这首单曲中,我想将我的
单曲
转换为
单曲
,我想用我的映射器
NearbyPlaceListResultMapper

问题是我没有成功地在结尾处有一个
单曲。我可以把它转换成一个可观察的或可完成的,但不是单一的

有人能帮我把它弄干净吗


谢谢

假设
nearbyplacelistsresultmapper.transform
返回类型
List>
您可以使用
映射操作

fun getNearbyPlaces(type: String, location: String, radius: Int): Single<List<Place>> {
    return googlePlacesApi.getNearbyPlaces(type, location, radius)
        .subscribeOn(Schedulers.io())
        .map { nearbyPlaceListResultMapper.transform(it) }
        .observeOn(Schedulers.computation())
}
fun getNearbyPlaces(类型:String,位置:String,半径:Int):单个{
返回googlePlacesApi.getNearbyPlaces(类型、位置、半径)
.subscribeOn(Schedulers.io())
.map{nearbyPlaceListResultMapper.transform(it)}
.observeOn(Schedulers.computation())
}
fun getNearbyPlaces(type: String, location: String, radius: Int): Single<List<Place>> {
    return googlePlacesApi.getNearbyPlaces(type, location, radius)
        .subscribeOn(Schedulers.io())
        .map { nearbyPlaceListResultMapper.transform(it) }
        .observeOn(Schedulers.computation())
}