parent
39c4b7d30f
commit
2474be998b
2 changed files with 31 additions and 13 deletions
|
|
@ -37,7 +37,9 @@ public class UserController extends AbstractQueueController {
|
||||||
private final Imdg<User> userImdg;
|
private final Imdg<User> userImdg;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
public UserController(IOperator operator, IStateLoader stateLoader, ImdgProvider imdgProvider) {
|
public UserController(IOperator operator,
|
||||||
|
IStateLoader stateLoader,
|
||||||
|
ImdgProvider imdgProvider) {
|
||||||
super(operator);
|
super(operator);
|
||||||
this.stateLoader = stateLoader;
|
this.stateLoader = stateLoader;
|
||||||
this.userImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_User, User.class);
|
this.userImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_User, User.class);
|
||||||
|
|
|
||||||
|
|
@ -1,31 +1,41 @@
|
||||||
package ru.spcex.clearing.backendapi.controller.request.cud.utilities;
|
package ru.spcex.clearing.backendapi.controller.request.cud.utilities;
|
||||||
|
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
|
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||||
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
import ru.spcex.clearing.backendapi.domain.actions.IAction;
|
import ru.spcex.clearing.backendapi.domain.actions.IAction;
|
||||||
import ru.spcex.clearing.backendapi.errors.BackEndError;
|
import ru.spcex.clearing.backendapi.errors.BackEndError;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.ActionType;
|
import ru.spcex.clearing.platform.messaging.domain.ActionType;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.utilities.UserAuthRequest;
|
import ru.spcex.clearing.platform.messaging.domain.cud.utilities.UserAuthRequest;
|
||||||
|
import ru.spcex.clearing.platform.messaging.domain.json.deserialize.InstantDeserializer;
|
||||||
|
import ru.spcex.clearing.platform.messaging.domain.json.serialize.InstantSerializer;
|
||||||
import ru.spcex.platform.utils.enumeration.EnumMessage;
|
import ru.spcex.platform.utils.enumeration.EnumMessage;
|
||||||
|
|
||||||
|
import java.time.Instant;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public class UserAuthAction implements IAction<UserAuthRequest> {
|
public class UserAuthAction implements IAction<UserAuthRequest> {
|
||||||
private final UserAuthRequest authRequest;
|
@JsonProperty
|
||||||
|
private String username;
|
||||||
public UserAuthAction() {
|
@JsonProperty
|
||||||
this.authRequest = new UserAuthRequest();
|
private List<String> roles = new ArrayList<>();
|
||||||
}
|
@JsonSerialize(using = InstantSerializer.class)
|
||||||
|
@JsonDeserialize(using = InstantDeserializer.class)
|
||||||
public UserAuthRequest getAuthRequest() {
|
@JsonProperty
|
||||||
return authRequest;
|
private Instant time;
|
||||||
}
|
@JsonProperty
|
||||||
|
private String serverIp;
|
||||||
|
@JsonProperty
|
||||||
|
private String clientIp;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Collection<EnumMessage> validate() {
|
public Collection<EnumMessage> validate() {
|
||||||
long count = authRequest.getRoles().stream().distinct().count();
|
long count = roles.stream().distinct().count();
|
||||||
if (count != authRequest.getRoles().size()) {
|
if (count != roles.size()) {
|
||||||
return List.of(new EnumMessage(BackEndError.KeycloakRepeatedRoles));
|
return List.of(new EnumMessage(BackEndError.KeycloakRepeatedRoles));
|
||||||
}
|
}
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
|
|
@ -33,7 +43,13 @@ public class UserAuthAction implements IAction<UserAuthRequest> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public UserAuthRequest toRequest() {
|
public UserAuthRequest toRequest() {
|
||||||
return authRequest;
|
UserAuthRequest userAuthRequest = new UserAuthRequest();
|
||||||
|
userAuthRequest.setServerIp(serverIp);
|
||||||
|
userAuthRequest.setUsername(username);
|
||||||
|
userAuthRequest.setRoles(roles);
|
||||||
|
userAuthRequest.setTime(time);
|
||||||
|
return userAuthRequest;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue