我使用(data据 我想象)Mvp 和干净的拱门。http_clentaretrofitJSON
在存储库中,我首先从jsonato 解析数据pojo,然后将其转换pojo为层所需的模型domain。代码如下所示
@Override
public Observable<AuthorizationModel> sendMail(String mail) {
return httpClient.getHttpClient().create(AuthorizationServiceApi.class)
.sendMail(UniqueUtils.getMacAddr(), mail)
.flatMap(authrozationParser::parseAuthorizationDate)
.flatMap(serverResponseMapper::transofrmToAuthorizationModel)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread());
}
我应该在哪里解析?我是在repository里做的,但是我觉得哦,不对
DataLayer其mb的架构不同。我可以建议在使用存储库变得非常不方便之前不要担心这些问题。你的例子是正常的,但是如果你关心如何分离解析器,我可以建议你分离数据,因为你可以解析本地数据(原始、文件)、远程数据、系统数据等。你的情况
authrozationParser可能是 remoteData 然后存储库可以访问远程,它看起来像这样:然后,您的存储库将变得更容易,并且它更容易履行 DataMapper 的预期角色,并且复制粘贴将离开存储库