Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • OZG-7324-license-header-update
  • OZG-7426-Dateitransfer-Eingang
  • create-gitlab-pipeline
  • main
  • release
  • 1.0.0
  • 1.1.0
  • 1.1.1
  • 1.1.3
  • 1.1.4
  • 1.1.5
  • 1.2.0
  • 1.2.1
  • 1.3.0
  • 1.4.0
  • 1.5.0
  • 1.5.1
  • 1.6.0
  • 1.6.1
  • 1.6.2
  • 1.6.3
  • 1.7.0
  • 2.0.1
  • 2.1.0
  • 2.3.1
  • 3.0.0
  • 3.0.1
  • 4.0.1
  • 4.1.0
  • 4.10.0
  • 4.11.0
  • 4.12.0
  • 4.13.0
  • 4.14.0
  • 4.15.0
  • 4.2.0
  • 4.3.0
  • 4.3.1
  • 4.3.2
  • 4.4.0
  • 4.5.0
  • 4.6.0
  • 4.7.0
  • 4.8.0
  • 4.9.0
  • opensource-1
46 results

Target

Select target project
  • ozg-cloud/lib/common-lib
1 result
Select Git revision
  • OZG-7324-license-header-update
  • OZG-7426-Dateitransfer-Eingang
  • create-gitlab-pipeline
  • main
  • release
  • 1.0.0
  • 1.1.0
  • 1.1.1
  • 1.1.3
  • 1.1.4
  • 1.1.5
  • 1.2.0
  • 1.2.1
  • 1.3.0
  • 1.4.0
  • 1.5.0
  • 1.5.1
  • 1.6.0
  • 1.6.1
  • 1.6.2
  • 1.6.3
  • 1.7.0
  • 2.0.1
  • 2.1.0
  • 2.3.1
  • 3.0.0
  • 3.0.1
  • 4.0.1
  • 4.1.0
  • 4.10.0
  • 4.11.0
  • 4.12.0
  • 4.13.0
  • 4.14.0
  • 4.15.0
  • 4.2.0
  • 4.3.0
  • 4.3.1
  • 4.3.2
  • 4.4.0
  • 4.5.0
  • 4.6.0
  • 4.7.0
  • 4.8.0
  • 4.9.0
  • opensource-1
46 results
Show changes
Commits on Source (2)
......@@ -27,7 +27,6 @@ import java.io.InputStream;
import java.util.function.BiFunction;
import java.util.function.Function;
import de.ozgcloud.common.errorhandling.TechnicalException;
import io.grpc.stub.CallStreamObserver;
import io.grpc.stub.StreamObserver;
import lombok.extern.log4j.Log4j2;
......@@ -63,16 +62,4 @@ class StreamExclusiveFileSender<Q, S> extends StreamingFileSender<Q, S> {
protected CallStreamObserver<Q> getRequestObserver() {
return requestObserver;
}
@Override
public void cancelOnTimeout() {
super.cancelOnTimeout();
requestObserver.onError(new TechnicalException("Timeout on waiting for upload."));
}
@Override
public void cancelOnError(Throwable t) {
super.cancelOnError(t);
requestObserver.onError(t);
}
}
......@@ -75,12 +75,14 @@ public abstract class StreamingFileSender<Q, S> {
public void cancelOnTimeout() {
LOG.warn("File transfer canceled on timeout");
resultFuture.cancel(true);
getRequestObserver().onError(new TechnicalException("Timeout on waiting for upload."));
closeStreamReader();
}
public void cancelOnError(Throwable t) {
LOG.error("File transfer canceled on error.", t);
resultFuture.cancel(true);
getRequestObserver().onError(t);
closeStreamReader();
}
......
......@@ -43,7 +43,6 @@ import org.springframework.test.util.ReflectionTestUtils;
import de.ozgcloud.common.binaryfile.BinaryFileTestFactory.TestRequestType;
import de.ozgcloud.common.binaryfile.BinaryFileTestFactory.TestResponseType;
import de.ozgcloud.common.errorhandling.TechnicalException;
import io.grpc.stub.CallStreamObserver;
import io.grpc.stub.StreamObserver;
......@@ -119,77 +118,4 @@ class StreamExclusiveFileSenderTest {
verify(requestObserver).onCompleted();
}
}
@Nested
class TestCancelOnTimeout {
@Mock
private CompletableFuture<TestResponseType> resultFuture;
@Mock
private CallStreamObserver<TestRequestType> requestObserver;
@BeforeEach
void init() {
ReflectionTestUtils.setField(fileSender, "resultFuture", resultFuture);
ReflectionTestUtils.setField(fileSender, "requestObserver", requestObserver);
}
@Test
void shouldCancelResultFuture() {
fileSender.cancelOnTimeout();
verify(resultFuture).cancel(true);
}
@Test
void shouldCallOnError() {
fileSender.cancelOnTimeout();
verify(requestObserver).onError(any(TechnicalException.class));
}
@Test
void shouldCloseStreamReader() {
fileSender.cancelOnTimeout();
verify(fileSender).closeStreamReader();
}
}
@Nested
class TestCancelOnError {
@Mock
private CompletableFuture<TestResponseType> resultFuture;
@Mock
private CallStreamObserver<TestRequestType> requestObserver;
private final Throwable error = new Throwable();
@BeforeEach
void init() {
ReflectionTestUtils.setField(fileSender, "resultFuture", resultFuture);
ReflectionTestUtils.setField(fileSender, "requestObserver", requestObserver);
}
@Test
void shouldCancelResultFuture() {
fileSender.cancelOnError(error);
verify(resultFuture).cancel(true);
}
@Test
void shouldCallOnError() {
fileSender.cancelOnError(error);
verify(requestObserver).onError(error);
}
@Test
void shouldCloseStreamReader() {
fileSender.cancelOnError(error);
verify(fileSender).closeStreamReader();
}
}
}
......@@ -43,6 +43,7 @@ import org.springframework.test.util.ReflectionTestUtils;
import de.ozgcloud.common.binaryfile.BinaryFileTestFactory.TestRequestType;
import de.ozgcloud.common.binaryfile.BinaryFileTestFactory.TestResponseType;
import de.ozgcloud.common.errorhandling.TechnicalException;
import io.grpc.stub.CallStreamObserver;
import lombok.AccessLevel;
import lombok.Getter;
......@@ -82,6 +83,13 @@ class StreamingFileSenderTest {
verify(resultFuture).cancel(true);
}
@Test
void shouldCallOnError() {
fileSender.cancelOnTimeout();
verify(requestObserver).onError(any(TechnicalException.class));
}
@Test
void shouldCloseStreams() {
fileSender.cancelOnTimeout();
......@@ -109,6 +117,13 @@ class StreamingFileSenderTest {
verify(resultFuture).cancel(true);
}
@Test
void shouldCallOnError() {
fileSender.cancelOnError(error);
verify(requestObserver).onError(error);
}
@Test
void shouldCloseStreams() {
fileSender.cancelOnError(error);
......