package co.codewizards.cloudstore.ls.rest.client.request; import javax.ws.rs.client.SyncInvoker; import javax.ws.rs.core.Response; /** * Abstract base class for REST requests never returning a response. * @author Marco หงุ่ยตระกูล-Schulze - marco at codewizards dot co */ public abstract class VoidRequest extends AbstractRequest<Void> { @Override public final Void execute() { final Response response = _execute(); assertResponseIndicatesSuccess(response); return null; } /** * REST requests without response should implement this delegate method instead of {@link #execute()}. * @return the response objectRef returned from {@link SyncInvoker#put(javax.ws.rs.client.Entity)} or a * similar method. */ protected abstract Response _execute(); @Override public boolean isResultNullable() { return true; } }