Search in sources :

Example 1 with WaitForBusyStateRequest

use of io.camunda.zeebe.process.test.engine.protocol.EngineControlOuterClass.WaitForBusyStateRequest in project zeebe-process-test by camunda-cloud.

the class ContainerizedEngine method waitForBusyState.

@Override
public void waitForBusyState(final Duration timeout) throws InterruptedException, TimeoutException {
    final ManagedChannel channel = getChannel();
    final EngineControlBlockingStub stub = getStub(channel);
    final WaitForBusyStateRequest request = WaitForBusyStateRequest.newBuilder().setTimeout(timeout.toMillis()).build();
    try {
        stub.waitForBusyState(request);
    } catch (final StatusRuntimeException e) {
        if (e.getStatus().getCode().equals(Status.DEADLINE_EXCEEDED.getCode())) {
            throw new TimeoutException(e.getMessage());
        } else if (e.getStatus().getCode().equals(Status.INTERNAL.getCode())) {
            throw new InterruptedException(e.getMessage());
        }
    } finally {
        closeChannel(channel);
    }
}
Also used : StatusRuntimeException(io.grpc.StatusRuntimeException) ManagedChannel(io.grpc.ManagedChannel) WaitForBusyStateRequest(io.camunda.zeebe.process.test.engine.protocol.EngineControlOuterClass.WaitForBusyStateRequest) EngineControlBlockingStub(io.camunda.zeebe.process.test.engine.protocol.EngineControlGrpc.EngineControlBlockingStub) TimeoutException(java.util.concurrent.TimeoutException)

Example 2 with WaitForBusyStateRequest

use of io.camunda.zeebe.process.test.engine.protocol.EngineControlOuterClass.WaitForBusyStateRequest in project zeebe-process-test by camunda.

the class ContainerizedEngine method waitForBusyState.

@Override
public void waitForBusyState(final Duration timeout) throws InterruptedException, TimeoutException {
    final ManagedChannel channel = getChannel();
    final EngineControlBlockingStub stub = getStub(channel);
    final WaitForBusyStateRequest request = WaitForBusyStateRequest.newBuilder().setTimeout(timeout.toMillis()).build();
    try {
        stub.waitForBusyState(request);
    } catch (final StatusRuntimeException e) {
        if (e.getStatus().getCode().equals(Status.DEADLINE_EXCEEDED.getCode())) {
            throw new TimeoutException(e.getMessage());
        } else if (e.getStatus().getCode().equals(Status.INTERNAL.getCode())) {
            throw new InterruptedException(e.getMessage());
        }
    } finally {
        closeChannel(channel);
    }
}
Also used : StatusRuntimeException(io.grpc.StatusRuntimeException) ManagedChannel(io.grpc.ManagedChannel) WaitForBusyStateRequest(io.camunda.zeebe.process.test.engine.protocol.EngineControlOuterClass.WaitForBusyStateRequest) EngineControlBlockingStub(io.camunda.zeebe.process.test.engine.protocol.EngineControlGrpc.EngineControlBlockingStub) TimeoutException(java.util.concurrent.TimeoutException)

Aggregations

EngineControlBlockingStub (io.camunda.zeebe.process.test.engine.protocol.EngineControlGrpc.EngineControlBlockingStub)2 WaitForBusyStateRequest (io.camunda.zeebe.process.test.engine.protocol.EngineControlOuterClass.WaitForBusyStateRequest)2 ManagedChannel (io.grpc.ManagedChannel)2 StatusRuntimeException (io.grpc.StatusRuntimeException)2 TimeoutException (java.util.concurrent.TimeoutException)2