你的问题对我来说真的很模糊.我不明白为什么你不能使用RS的正常持久性机制.如果这样做,在执行请求时很容易保留数据.
也许我错过了什么.因此,如果您的要求是真的要自己保留数据,那么您提出的方法看起来是正确的.您可以在请求中注入spice服务本身(例如,请参阅RetrofitSpiceService中的addRequest覆盖方式).然后,该请求将保存一个上下文,该上下文可用于回调内部或请求本身内部的持久性.
最近我使用改造和RS编写了一个POST请求.我更改了POST请求的签名以返回Void.然后稍微修改了改装转换器以处理该情况并返回null.如前所述,请求通过注入接收了spice服务,并且可以对数据库执行某些操作.
下面是一些代码,用于将应用程序注入spice服务中的请求.
@Override
public void addRequest(CachedSpiceRequest> request,
Set> listRequestListener) {
if (request.getSpiceRequest() instanceof MySpiceRequest) {
MySpiceRequest> mySpiceRequest = (MySpiceRequest>) request
.getSpiceRequest();
mySpiceRequest.setApplication(this.getApplication());
}
super.addRequest(request, listRequestListener);
}