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;
|
||||
|
||||
@Autowired
|
||||
public UserController(IOperator operator, IStateLoader stateLoader, ImdgProvider imdgProvider) {
|
||||
public UserController(IOperator operator,
|
||||
IStateLoader stateLoader,
|
||||
ImdgProvider imdgProvider) {
|
||||
super(operator);
|
||||
this.stateLoader = stateLoader;
|
||||
this.userImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_User, User.class);
|
||||
|
|
|
|||
|
|
@ -1,31 +1,41 @@
|
|||
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.errors.BackEndError;
|
||||
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.json.deserialize.InstantDeserializer;
|
||||
import ru.spcex.clearing.platform.messaging.domain.json.serialize.InstantSerializer;
|
||||
import ru.spcex.platform.utils.enumeration.EnumMessage;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
public class UserAuthAction implements IAction<UserAuthRequest> {
|
||||
private final UserAuthRequest authRequest;
|
||||
|
||||
public UserAuthAction() {
|
||||
this.authRequest = new UserAuthRequest();
|
||||
}
|
||||
|
||||
public UserAuthRequest getAuthRequest() {
|
||||
return authRequest;
|
||||
}
|
||||
@JsonProperty
|
||||
private String username;
|
||||
@JsonProperty
|
||||
private List<String> roles = new ArrayList<>();
|
||||
@JsonSerialize(using = InstantSerializer.class)
|
||||
@JsonDeserialize(using = InstantDeserializer.class)
|
||||
@JsonProperty
|
||||
private Instant time;
|
||||
@JsonProperty
|
||||
private String serverIp;
|
||||
@JsonProperty
|
||||
private String clientIp;
|
||||
|
||||
@Override
|
||||
public Collection<EnumMessage> validate() {
|
||||
long count = authRequest.getRoles().stream().distinct().count();
|
||||
if (count != authRequest.getRoles().size()) {
|
||||
long count = roles.stream().distinct().count();
|
||||
if (count != roles.size()) {
|
||||
return List.of(new EnumMessage(BackEndError.KeycloakRepeatedRoles));
|
||||
}
|
||||
return Collections.emptyList();
|
||||
|
|
@ -33,7 +43,13 @@ public class UserAuthAction implements IAction<UserAuthRequest> {
|
|||
|
||||
@Override
|
||||
public UserAuthRequest toRequest() {
|
||||
return authRequest;
|
||||
UserAuthRequest userAuthRequest = new UserAuthRequest();
|
||||
userAuthRequest.setServerIp(serverIp);
|
||||
userAuthRequest.setUsername(username);
|
||||
userAuthRequest.setRoles(roles);
|
||||
userAuthRequest.setTime(time);
|
||||
return userAuthRequest;
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue