Skip to content
Snippets Groups Projects
Commit 39f5e01b authored by OZGCloud's avatar OZGCloud
Browse files

Merge branch 'refs/heads/release' into merge-hotfix-release

# Conflicts:
#	bescheid-manager/pom.xml
#	pom.xml
#	vorgang-manager-base/pom.xml
#	vorgang-manager-command/pom.xml
#	vorgang-manager-interface/pom.xml
#	vorgang-manager-server/pom.xml
#	vorgang-manager-utils/pom.xml
parents a2b02a7a 378cccdd
No related branches found
No related tags found
No related merge requests found
......@@ -5,7 +5,7 @@
<parent>
<groupId>de.ozgcloud.common</groupId>
<artifactId>ozgcloud-common-parent</artifactId>
<version>4.2.0</version>
<version>4.3.0</version>
<relativePath />
</parent>
......
......@@ -6,7 +6,7 @@
<parent>
<groupId>de.ozgcloud.common</groupId>
<artifactId>ozgcloud-common-parent</artifactId>
<version>4.2.0</version>
<version>4.3.0</version>
<relativePath />
</parent>
......
......@@ -4,7 +4,7 @@
<parent>
<groupId>de.ozgcloud.common</groupId>
<artifactId>ozgcloud-common-dependencies</artifactId>
<version>4.2.0</version>
<version>4.3.0</version>
<relativePath/>
</parent>
......
......@@ -30,7 +30,7 @@
<parent>
<groupId>de.ozgcloud.common</groupId>
<artifactId>ozgcloud-common-dependencies</artifactId>
<version>4.2.0</version>
<version>4.3.0</version>
<relativePath/>
</parent>
......
......@@ -54,7 +54,7 @@
<user-manager-interface.version>2.1.0</user-manager-interface.version>
<bescheid-manager.version>1.13.0</bescheid-manager.version>
<processor-manager.version>0.4.0</processor-manager.version>
<processor-manager.version>0.4.1</processor-manager.version>
<nachrichten-manager.version>2.9.0</nachrichten-manager.version>
<ozgcloud-starter.version>0.10.0</ozgcloud-starter.version>
<notification-manager.version>2.8.0</notification-manager.version>
......
......@@ -31,6 +31,7 @@ import org.springframework.stereotype.Component;
import de.ozgcloud.apilib.common.callcontext.CallContext;
import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextProvider;
import de.ozgcloud.apilib.user.OzgCloudUserId;
import de.ozgcloud.vorgang.callcontext.CallContextUser;
import de.ozgcloud.vorgang.callcontext.CurrentUserService;
import de.ozgcloud.vorgang.callcontext.VorgangManagerClientCallContextAttachingInterceptor;
import lombok.RequiredArgsConstructor;
......@@ -45,11 +46,11 @@ public class VorgangManagerCallContextProvider implements OzgCloudCallContextPro
@Override
public CallContext provideContext() {
var callContextBuilder = CallContext.builder().clientName(VorgangManagerClientCallContextAttachingInterceptor.VORGANG_MANAGER_CLIENT_NAME);
getUserId().ifPresent(callContextBuilder::userId);
findUserId().ifPresent(callContextBuilder::userId);
return callContextBuilder.build();
}
Optional<OzgCloudUserId> getUserId() {
return currentUserService.getUser().getUserId().map(OzgCloudUserId::from);
Optional<OzgCloudUserId> findUserId() {
return currentUserService.findUser().flatMap(CallContextUser::getUserId).map(OzgCloudUserId::from);
}
}
......@@ -7,29 +7,15 @@ import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextProvider;
import de.ozgcloud.apilib.user.GrpcOzgCloudUserProfileService;
import de.ozgcloud.apilib.user.OzgCloudUserProfileService;
import de.ozgcloud.apilib.user.UserProfileMapper;
import de.ozgcloud.apilib.vorgang.OzgCloudVorgangService;
import de.ozgcloud.apilib.vorgang.grpc.GrpcOzgCloudVorgangService;
import de.ozgcloud.apilib.vorgang.grpc.OzgCloudVorgangMapper;
import de.ozgcloud.apilib.vorgang.grpc.OzgCloudVorgangStubMapper;
import de.ozgcloud.user.grpc.userprofile.UserProfileServiceGrpc.UserProfileServiceBlockingStub;
import de.ozgcloud.vorgang.vorgang.VorgangServiceGrpc.VorgangServiceBlockingStub;
import net.devh.boot.grpc.client.inject.GrpcClient;
@Configuration
class VorgangProcessorConfiguration {
@GrpcClient("vorgang-manager")
private VorgangServiceBlockingStub vorgangServiceStub;
@GrpcClient("user-manager")
private UserProfileServiceBlockingStub userProfileServiceGrpc;
@Bean
OzgCloudVorgangService ozgCloudVorgangService(OzgCloudVorgangMapper mapper, OzgCloudVorgangStubMapper stubMapper,
OzgCloudCallContextProvider contextProvider) {
return new GrpcOzgCloudVorgangService(vorgangServiceStub, mapper, stubMapper, contextProvider);
}
@Bean
OzgCloudUserProfileService ozgCloudUserProfileService(UserProfileMapper mapper, OzgCloudCallContextProvider contextProvider) {
return new GrpcOzgCloudUserProfileService(userProfileServiceGrpc, mapper, contextProvider);
......
/*
* Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
* Ministerpräsidenten des Landes Schleswig-Holstein
* Staatskanzlei
* Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
*
* Lizenziert unter der EUPL, Version 1.2 oder - sobald
* diese von der Europäischen Kommission genehmigt wurden -
* Folgeversionen der EUPL ("Lizenz");
* Sie dürfen dieses Werk ausschließlich gemäß
* dieser Lizenz nutzen.
* Eine Kopie der Lizenz finden Sie hier:
*
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
*
* Sofern nicht durch anwendbare Rechtsvorschriften
* gefordert oder in schriftlicher Form vereinbart, wird
* die unter der Lizenz verbreitete Software "so wie sie
* ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
* ausdrücklich oder stillschweigend - verbreitet.
* Die sprachspezifischen Genehmigungen und Beschränkungen
* unter der Lizenz sind dem Lizenztext zu entnehmen.
*/
package de.ozgcloud.vorgang;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import java.util.Optional;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Spy;
import de.ozgcloud.apilib.user.OzgCloudUserId;
import de.ozgcloud.vorgang.callcontext.CallContextUser;
import de.ozgcloud.vorgang.callcontext.CurrentUserService;
import de.ozgcloud.vorgang.callcontext.VorgangManagerClientCallContextAttachingInterceptor;
class VorgangManagerCallContextProviderTest {
private static final String USER_ID = "userId";
@Spy
@InjectMocks
private VorgangManagerCallContextProvider contextProvider;
@Mock
private CurrentUserService currentUserService;
@Nested
class TestProvideContext {
@Test
void shouldSetClientName() {
var result = contextProvider.provideContext();
assertThat(result.getClientName()).isEqualTo(VorgangManagerClientCallContextAttachingInterceptor.VORGANG_MANAGER_CLIENT_NAME);
}
@Test
void shouldCallFindUserId() {
contextProvider.provideContext();
verify(contextProvider).findUserId();
}
@Test
void shouldSetUserId() {
var userId = OzgCloudUserId.from(USER_ID);
when(contextProvider.findUserId()).thenReturn(Optional.of(userId));
var result = contextProvider.provideContext();
assertThat(result.getUserId()).isEqualTo(userId);
}
}
@Nested
class TestFindUserId {
@Test
void shouldCallCurrentUserService() {
contextProvider.findUserId();
verify(currentUserService).findUser();
}
@Test
void shouldReturnUserId() {
var callContextUser = CallContextUser.builder().userId(Optional.of(USER_ID)).build();
when(currentUserService.findUser()).thenReturn(Optional.of(callContextUser));
var result = contextProvider.findUserId();
assertThat(result).contains(OzgCloudUserId.from(USER_ID));
}
@Test
void shouldReturnIfNoUser() {
var result = contextProvider.findUserId();
assertThat(result).isEmpty();
}
@Test
void shouldReturnIfNoUserId() {
var callContextUser = CallContextUser.builder().userId(Optional.empty()).build();
when(currentUserService.findUser()).thenReturn(Optional.of(callContextUser));
var result = contextProvider.findUserId();
assertThat(result).isEmpty();
}
}
}
\ No newline at end of file
......@@ -30,7 +30,7 @@
<parent>
<groupId>de.ozgcloud.common</groupId>
<artifactId>ozgcloud-common-dependencies</artifactId>
<version>4.2.0</version>
<version>4.3.0</version>
<relativePath/>
</parent>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment