
com.lindar.wellrested.vo.ResultBuilder Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of well-rested-client Show documentation
Show all versions of well-rested-client Show documentation
A nice and easy java http client wrapper built on top of apache httpclient
package com.lindar.wellrested.vo;
public class ResultBuilder {
private Result.ResultBuilder resultBuilder;
private ResultBuilder(Result.ResultBuilder resultBuilder) {
this.resultBuilder = resultBuilder;
}
public static ResultBuilder of(Result result) {
Result.ResultBuilder resultBuilder = Result.builder().data(result.getData())
.msg(result.getMsg()).code(result.getCode())
.visible(result.isVisible()).success(result.isSuccess());
return new ResultBuilder<>(resultBuilder);
}
public static ResultBuilder successful() {
return new ResultBuilder<>(Result.builder().success(true));
}
public static ResultBuilder failed() {
return new ResultBuilder<>(Result.builder().success(false));
}
public static ResultBuilder empty() {
return new ResultBuilder<>(Result.builder());
}
/** This is a shortcut method for ResultBuilder.successful().data(data).build() */
public static Result successful(T data) {
return Result.builder().success(true).data(data).build();
}
/** This is a shortcut method for ResultBuilder.successful().data(data).msg(msg).build() */
public static Result successful(T data, String msg) {
return Result.builder().success(true).data(data).msg(msg).build();
}
/** This is a shortcut method for ResultBuilder.successful().msg(msg).build() */
public static Result successfulWithoutData(String msg) {
return Result.builder().success(true).msg(msg).build();
}
/** This is a shortcut method for ResultBuilder.failed().msg(msg).build() */
public static Result failed(String msg) {
return Result.builder().success(false).msg(msg).build();
}
public static Result failedCastingResult() {
return Result.builder().castingErrorThrown(true).success(false).msg("Failed casting response object").build();
}
public ResultBuilder success(boolean success) {
resultBuilder.success(success);
return this;
}
public ResultBuilder data(T data) {
resultBuilder.data(data);
return this;
}
public ResultBuilder visible(boolean visible) {
resultBuilder.visible(visible);
return this;
}
public ResultBuilder visible() {
resultBuilder.visible(true);
return this;
}
public ResultBuilder hidden() {
resultBuilder.visible(false);
return this;
}
public ResultBuilder msg(String msg) {
resultBuilder.msg(msg);
return this;
}
public ResultBuilder code(String code) {
resultBuilder.code(code);
return this;
}
public ResultBuilder castingErrorThrown() {
resultBuilder.castingErrorThrown(true);
return this;
}
public ResultBuilder castingErrorThrown(boolean castingErrorThrown) {
resultBuilder.castingErrorThrown(castingErrorThrown);
return this;
}
public Result build() {
return resultBuilder.build();
}
public Result buildAndOverrideData(U data) {
Result oldResult = resultBuilder.build();
return Result.builder()
.code(oldResult.getCode()).msg(oldResult.getMsg()).data(data)
.success(oldResult.isSuccess()).visible(oldResult.isVisible()).build();
}
public Result buildAndIgnoreData() {
Result oldResult = resultBuilder.build();
return Result.builder().success(oldResult.isSuccess())
.msg(oldResult.getMsg()).code(oldResult.getCode())
.visible(oldResult.isVisible()).build();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy