Class BackofficeMonitorUserUpdatedService
java.lang.Object
es.kukenan.smartfi.microservice.clients.service.events.backoffice.BackofficeMonitorUserUpdatedService
Service that handled users events. It extract required information from the events, maps it to the proper classes and delegates the management
operations on the
UserService.-
Field Summary
FieldsModifier and TypeFieldDescriptionlanguage validator.private BackofficeMonitorGenderValidatorlanguage validator.language validator.backoffice repository.private static final StringReset value in date.private static final StringReset value in full date.private StringKey used for generate hashing for Core cipher.temporal update user repository.private TemporalUserUpdatedEventMapperObject mapper.UserDevice repository.UserDevice repository.private UserServiceuserService userService.user state repository.user state repository. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate UserStatecalculateUserState(es.kukenan.smartfi.microservice.backoffice.events.update.BackofficeMonitorEventUpdateBody person, User existingUser) private voidcalculateUserStateV2(es.kukenan.smartfi.microservice.backoffice.events.update.BackofficeMonitorEventUpdateBody person, User existingUser, User userResponse) private UsergettingUserFromEventData(es.kukenan.smartfi.microservice.backoffice.events.update.BackofficeMonitorEventUpdateBody person, int typeDoc, String docNumber, Optional<Backoffice> backoffice, String version, User existingUser) Save data in user table.voidhandleBackofficeMonitorEvent(es.kukenan.smartfi.microservice.backoffice.events.update.BackOfficeUserUpdatedEvent backOfficeUserUpdatedEvent) Handles the users updates from backoffice core.private ObjectinvokeGetter(Object object, Method method) Helper util to invoke a method capturing, controlling and logging any exception thrown.private ObjectinvokeSetter(Object object, String setMethodName, Object argument, String getMethodName) Helper util to invoke a method capturing, controlling and logging any exception thrown.private <T,Q> T merge(T original, Q remote) merge user info Method.private <T,Q> T mergeV2(T original, Q remote) merge user info Method.private voidupdateUserInformation(es.kukenan.smartfi.microservice.backoffice.events.update.BackofficeMonitorEventUpdateBody person, int typeDoc, String docNumber, User userRetrieved, String version) Save data in user table.
-
Field Details
-
RESET_FULL_DATE
Reset value in full date.- See Also:
-
RESET_DATE
Reset value in date.- See Also:
-
saltCore
Key used for generate hashing for Core cipher. -
userRepository
UserDevice repository. -
userBackofficeRepository
UserDevice repository. -
userTypeRepository
user state repository. -
userStateRepository
user state repository. -
backofficeRepository
backoffice repository. -
userService
userService userService. -
backofficeMonitorLanguageValidator
language validator. -
backofficeMonitorGenderValidator
language validator. -
backofficeMonitorCivilStatusValidator
language validator. -
temporalUpdateUserRepository
temporal update user repository. -
temporalUserUpdatedEventMapper
Object mapper.
-
-
Constructor Details
-
BackofficeMonitorUserUpdatedService
public BackofficeMonitorUserUpdatedService()
-
-
Method Details
-
handleBackofficeMonitorEvent
@Transactional public void handleBackofficeMonitorEvent(es.kukenan.smartfi.microservice.backoffice.events.update.BackOfficeUserUpdatedEvent backOfficeUserUpdatedEvent) Handles the users updates from backoffice core.- Parameters:
backOfficeUserUpdatedEvent- object holding users load.
-
updateUserInformation
private void updateUserInformation(es.kukenan.smartfi.microservice.backoffice.events.update.BackofficeMonitorEventUpdateBody person, int typeDoc, String docNumber, User userRetrieved, String version) Save data in user table.- Parameters:
person- info from event.typeDoc- document type.docNumber- document number.userRetrieved- user Retrieved.version- Event version
-
merge
private <T,Q> T merge(T original, Q remote) merge user info Method.- Type Parameters:
T- user original.Q- user from event.- Parameters:
original- user from event.remote- user from event.- Returns:
- object merged.
-
mergeV2
private <T,Q> T mergeV2(T original, Q remote) merge user info Method.- Type Parameters:
T- user original.Q- user from event.- Parameters:
original- user from event.remote- user from event.- Returns:
- object merged.
-
invokeSetter
private Object invokeSetter(Object object, String setMethodName, Object argument, String getMethodName) Helper util to invoke a method capturing, controlling and logging any exception thrown.- Parameters:
object- the object which method will be invoked.setMethodName- the name of the method to invoke.argument- the setter argument.getMethodName- the setter argument.- Returns:
- the method invocation result or null if any exception is captured.
-
invokeGetter
Helper util to invoke a method capturing, controlling and logging any exception thrown.- Parameters:
object- the object which method will be invoked.method- the method.- Returns:
- the method invocation result or null if any exception is captured.
-
gettingUserFromEventData
private User gettingUserFromEventData(es.kukenan.smartfi.microservice.backoffice.events.update.BackofficeMonitorEventUpdateBody person, int typeDoc, String docNumber, Optional<Backoffice> backoffice, String version, User existingUser) Save data in user table.- Parameters:
person- info from event.typeDoc- document type.docNumber- document number.backoffice- backoffice.version- event versionexistingUser- previous user if exist- Returns:
- user user modified from event data
-
calculateUserState
-
calculateUserStateV2
-