java.lang.Object
es.kukenan.smartfi.microservice.contracts.service.events.UserService

@Service public class UserService extends Object
Service for handler user devices events.
  • Field Details

    • log

      private final es.kukenan.smartfi.logger.WalletLogger log
      Kukenbank logger.
    • appName

      @Value("${spring.application.name}") private String appName
      Spring application name.
    • userRepository

      @Autowired private UserRepository userRepository
      User repository use for database queries.
    • documentTypeRepository

      @Autowired private DocumentTypeRepository documentTypeRepository
      documentType repository use for database queries.
    • userLanguageRepository

      @Autowired private UserLanguageRepository userLanguageRepository
      userLanguage repository use for database queries.
    • userGenderRepository

      @Autowired private UserGenderRepository userGenderRepository
      userGender repository use for database queries.
    • userCivilStatusRepository

      @Autowired private UserCivilStatusRepository userCivilStatusRepository
      userCivilStatus repository use for database queries.
    • userTypeRepository

      @Autowired private UserTypeRepository userTypeRepository
      userType repository use for database queries.
    • userStateRepository

      @Autowired private UserStateRepository userStateRepository
      userState repository use for database queries.
    • contextManager

      @Autowired private es.kukenan.smartfi.common.context.RequestContextManager contextManager
      Kukenbank request context manager.
    • amqpController

      @Autowired private AmqpController amqpController
      AMQP controller.
    • kafkaController

      @Autowired private KafkaController kafkaController
      Kafka Controller.
  • Constructor Details

    • UserService

      public UserService()
  • Method Details

    • handleUserUpdatedEvent

      public void handleUserUpdatedEvent(es.kukenan.smartfi.microservice.clients.events.updated.UserUpdatedEvent userUpdatedEvent)
      Method for handle event for update update information.
      Parameters:
      userUpdatedEvent - UserUpdatedEvent update event.
    • handleUserCreatedEvent

      public void handleUserCreatedEvent(es.kukenan.smartfi.microservice.clients.events.created.UserCreatedEvent userCreatedEvent)
      Method for handle event for user creation.
      Parameters:
      userCreatedEvent - userCreatedEvent user created event.
    • 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.
    • 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

      private Object invokeGetter(Object object, Method method)
      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.
    • publishUserCreationErrorEvent

      private void publishUserCreationErrorEvent(String userId, String sourceEventId, String errorCode, String errorDescription)
      Publish a user creation error event.
      Parameters:
      userId - the user whose creation has failed.
      sourceEventId - event received that caused the failure.
      errorCode - Error code.
      errorDescription - Error description.