@Test(groups = "live", dependsOnMethods = "getProject") public void testSetUsageExportBucket() { AtomicReference<Operation> o = new AtomicReference<Operation>(api.project().setUsageExportBucket( "unexisting-bucket", "test-")); retry(new Predicate<AtomicReference<Operation>>() { @Override public boolean apply(AtomicReference<Operation> input) { input.set(api.operations().get(input.get().selfLink())); return Status.DONE == input.get().status(); } }, operationDoneTimeout, operationDoneInterval, MILLISECONDS).apply(o); assertEquals(o.get().status(), Status.DONE); assertEquals(o.get().error().errors().get(0).code(), "EXTERNAL_RESOURCE_NOT_FOUND"); } }
public Builder fromOperationErrorDetail(Error in) { return new Builder().code(in.getCode()).location(in.getLocation().orNull()).message (in.getMessage().orNull()); } }
/** * {@inheritDoc} */ @Override public String toString() { return string().toString(); }
"BAD REQUEST", // httpErrorMessage "insert", // operationType Operation.Error.create(ImmutableList.of(Operation.Error.Entry .create("INVALID_FIELD_VALUE", null, "Invalid value for field 'resource.urlMaps': "
@Override public boolean apply(AtomicReference<Operation> input) { checkNotNull(input.get(), "operation"); Operation current = resources.operation(input.get().selfLink()); input.set(current); checkState(current.error().errors().isEmpty(), "Task ended in error %s", current); // ISE will break the loop. switch (current.status()) { case DONE: return true; case PENDING: case RUNNING: default: return false; } } }
public static Error empty(){ return create(null); }
public static Error empty(){ return create(null); }
public static Error empty(){ return create(null); }
public Error build() { return new Error(code, location, message); }
@Override public boolean apply(AtomicReference<Operation> input) { checkNotNull(input.get(), "operation"); Operation current = resources.operation(input.get().selfLink()); input.set(current); checkState(current.error().errors().isEmpty(), "Task ended in error %s", current); // ISE will break the loop. switch (current.status()) { case DONE: return true; case PENDING: case RUNNING: default: return false; } } }
public Error build() { return new Error(code, location, message); }
public Builder toBuilder() { return builder().fromOperationErrorDetail(this); }
public static Error empty(){ return create(null); }
public Builder toBuilder() { return builder().fromOperationErrorDetail(this); }
@Override public boolean apply(AtomicReference<Operation> input) { checkNotNull(input.get(), "operation"); Operation current = resources.operation(input.get().selfLink()); input.set(current); checkState(current.error().errors().isEmpty(), "Task ended in error %s", current); // ISE will break the loop. switch (current.status()) { case DONE: return true; case PENDING: case RUNNING: default: return false; } } }
@Override public boolean apply(AtomicReference<Operation> input) { checkNotNull(input.get(), "operation"); Operation current = resources.operation(input.get().selfLink()); input.set(current); checkState(current.error().errors().isEmpty(), "Task ended in error %s", current); // ISE will break the loop. switch (current.status()) { case DONE: return true; case PENDING: case RUNNING: default: return false; } } }
protected void assertOperationDoneSuccessfully(Operation operation) { AtomicReference<Operation> ref = Atomics.newReference(checkNotNull(operation, "operation")); checkState(operationDone.apply(ref), "Timeout waiting for operation: %s", operation); assertEquals(ref.get().status(), Operation.Status.DONE); assertTrue(ref.get().error().errors().isEmpty()); }
@SerializedNames({ "id", "creationTimestamp", "selfLink", "name", "description", "targetLink", "targetId", "clientOperationId", "status", "statusMessage", "user", "progress", "insertTime", "startTime", "endTime", "httpErrorStatusCode", "httpErrorMessage", "operationType", "error", "warnings", "region", "zone" }) public static Operation create(String id, Date creationTimestamp, URI selfLink, String name, String description, URI targetLink, String targetId, String clientOperationId, Status status, String statusMessage, String user, Integer progress, Date insertTime, Date startTime, Date endTime, Integer httpErrorStatusCode, String httpErrorMessage, String operationType, Error error, List<Warning> warnings, URI region, URI zone) { return new AutoValue_Operation(id, creationTimestamp, selfLink, name, description, targetLink, targetId, clientOperationId, status, statusMessage, user, progress, insertTime, startTime, endTime, httpErrorStatusCode, httpErrorMessage, operationType, error != null ? error : Error.empty(), warnings, region, zone); }
@SerializedNames({ "id", "creationTimestamp", "selfLink", "name", "description", "targetLink", "targetId", "clientOperationId", "status", "statusMessage", "user", "progress", "insertTime", "startTime", "endTime", "httpErrorStatusCode", "httpErrorMessage", "operationType", "error", "warnings", "region", "zone" }) public static Operation create(String id, Date creationTimestamp, URI selfLink, String name, String description, URI targetLink, String targetId, String clientOperationId, Status status, String statusMessage, String user, Integer progress, Date insertTime, Date startTime, Date endTime, Integer httpErrorStatusCode, String httpErrorMessage, String operationType, Error error, List<Warning> warnings, URI region, URI zone) { return new AutoValue_Operation(id, creationTimestamp, selfLink, name, description, targetLink, targetId, clientOperationId, status, statusMessage, user, progress, insertTime, startTime, endTime, httpErrorStatusCode, httpErrorMessage, operationType, error != null ? error : Error.empty(), warnings, region, zone); }
/** * {@inheritDoc} */ @Override public String toString() { return string().toString(); }