001package co.codewizards.cloudstore.ls.rest.client.request; 002 003import static java.util.Objects.*; 004 005import javax.ws.rs.client.WebTarget; 006 007import co.codewizards.cloudstore.core.Uid; 008import co.codewizards.cloudstore.ls.core.invoke.MethodInvocationResponse; 009import co.codewizards.cloudstore.ls.core.provider.MediaTypeConst; 010 011public class GetDelayedMethodInvocationResponse extends AbstractRequest<MethodInvocationResponse> { 012 013 private final Uid delayedResponseId; 014 015 public GetDelayedMethodInvocationResponse(final Uid delayedResponseId) { 016 this.delayedResponseId = requireNonNull(delayedResponseId, "delayedResponseId"); 017 } 018 019 @Override 020 public MethodInvocationResponse execute() { 021 final WebTarget webTarget = createWebTarget("InvokeMethod", delayedResponseId.toString()); 022 final MethodInvocationResponse repoInfoResponseDto = assignCredentials(webTarget.request(MediaTypeConst.APPLICATION_JAVA_NATIVE_WITH_OBJECT_REF_TYPE)) 023 .get(MethodInvocationResponse.class); 024 return repoInfoResponseDto; 025 } 026 027 @Override 028 public boolean isResultNullable() { 029 return false; 030 } 031}