use of rx.functions.Action0 in project newts by OpenNMS.
the class ImportRunner method restPoster.
private Observable<Boolean> restPoster(Observable<List<Sample>> samples, MetricRegistry metrics) {
final CloseableHttpAsyncClient httpClient = HttpAsyncClients.createDefault();
httpClient.start();
return samples.map(toJSON()).map(meter(metrics.meter("posts"), String.class)).mergeMap(postJSON(m_restUrl, httpClient)).map(meter(metrics.meter("responses"), ObservableHttpResponse.class)).map(meter(metrics.meter("samples-completed"), m_samplesPerBatch, ObservableHttpResponse.class)).all(successful()).doOnCompleted(new Action0() {
@Override
public void call() {
try {
httpClient.close();
} catch (IOException e) {
System.err.println("Failed to close httpClient!");
e.printStackTrace();
}
}
});
}
use of rx.functions.Action0 in project okhttp-OkGo by jeasonlzy.
the class RxBitmapActivity method requestImage.
@OnClick(R.id.requestImage)
public void requestImage(View view) {
Subscription subscription = //
ServerApi.getBitmap("aaa", "bbb").doOnSubscribe(new Action0() {
@Override
public void call() {
showLoading();
}
}).observeOn(//
AndroidSchedulers.mainThread()).subscribe(new Action1<Bitmap>() {
@Override
public void call(Bitmap bitmap) {
//请求成功
dismissLoading();
handleResponse(bitmap, null, null);
imageView.setImageBitmap(bitmap);
System.out.println("---------");
}
}, new Action1<Throwable>() {
@Override
public void call(Throwable throwable) {
//请求失败
throwable.printStackTrace();
showToast("请求失败");
dismissLoading();
handleError(null, null);
}
});
addSubscribe(subscription);
}
use of rx.functions.Action0 in project okhttp-OkGo by jeasonlzy.
the class RxCommonActivity method upString.
@OnClick(R.id.upString)
public void upString(View view) {
Subscription subscription = //
OkGo.post(Urls.URL_TEXT_UPLOAD).headers("bbb", //
"222").upString(//
"上传的文本。。。").getCall(StringConvert.create(), //以上为产生请求事件,请求默认发生在IO线程
RxAdapter.<String>create()).doOnSubscribe(new Action0() {
@Override
public void call() {
//开始请求前显示对话框
showLoading();
}
}).observeOn(//切换到主线程
AndroidSchedulers.mainThread()).subscribe(new Action1<String>() {
@Override
public void call(String s) {
//请求成功,关闭对话框
dismissLoading();
handleResponse(s, null, null);
}
}, new Action1<Throwable>() {
@Override
public void call(Throwable throwable) {
throwable.printStackTrace();
//请求失败
dismissLoading();
showToast("请求失败");
handleError(null, null);
}
});
addSubscribe(subscription);
}
use of rx.functions.Action0 in project okhttp-OkGo by jeasonlzy.
the class RxCommonActivity method upJson.
@OnClick(R.id.upJson)
public void upJson(View view) {
HashMap<String, String> params = new HashMap<>();
params.put("key1", "value1");
params.put("key2", "这里是需要提交的json格式数据");
params.put("key3", "也可以使用三方工具将对象转成json字符串");
params.put("key4", "其实你怎么高兴怎么写都行");
JSONObject jsonObject = new JSONObject(params);
Subscription subscription = //
OkGo.post(Urls.URL_TEXT_UPLOAD).headers("bbb", //
"222").upJson(//
jsonObject.toString()).getCall(StringConvert.create(), //以上为产生请求事件,请求默认发生在IO线程
RxAdapter.<String>create()).doOnSubscribe(new Action0() {
@Override
public void call() {
//开始请求前显示对话框
showLoading();
}
}).observeOn(//切换到主线程
AndroidSchedulers.mainThread()).subscribe(new Action1<String>() {
@Override
public void call(String s) {
//请求成功,关闭对话框
dismissLoading();
handleResponse(s, null, null);
}
}, new Action1<Throwable>() {
@Override
public void call(Throwable throwable) {
throwable.printStackTrace();
//请求失败
dismissLoading();
showToast("请求失败");
handleError(null, null);
}
});
addSubscribe(subscription);
}
use of rx.functions.Action0 in project okhttp-OkGo by jeasonlzy.
the class RxCommonActivity method jsonArrayRequest.
@OnClick(R.id.jsonArrayRequest)
public void jsonArrayRequest(View view) {
Subscription subscription = //
ServerApi.getServerListModel("aaa", "bbb").doOnSubscribe(new Action0() {
@Override
public void call() {
showLoading();
}
}).map(new Func1<LzyResponse<List<ServerModel>>, List<ServerModel>>() {
@Override
public List<ServerModel> call(LzyResponse<List<ServerModel>> response) {
return response.data;
}
}).observeOn(//
AndroidSchedulers.mainThread()).subscribe(new Action1<List<ServerModel>>() {
@Override
public void call(List<ServerModel> serverModels) {
//请求成功
dismissLoading();
handleResponse(serverModels, null, null);
}
}, new Action1<Throwable>() {
@Override
public void call(Throwable throwable) {
//请求失败
throwable.printStackTrace();
showToast("请求失败");
dismissLoading();
handleError(null, null);
}
});
addSubscribe(subscription);
}
Aggregations