java.lang.Object
es.kukenan.smartfi.microservice.security.gateway.handler.ResponseHandler

@Component public class ResponseHandler extends Object
Generic Handler Response.
  • Field Details

    • log

      private final es.kukenan.smartfi.logger.WalletLogger log
      Instance logger.
    • encryptDecryptData

      @Autowired private EncryptDecryptData encryptDecryptData
      EncryptDecryptData operations.
    • objectMapper

      @Autowired private com.fasterxml.jackson.databind.ObjectMapper objectMapper
      Custom object mapper.
    • jwtTokenUtilities

      @Autowired private JwtTokenUtilities jwtTokenUtilities
      Service utilities for manage jwt token.
    • sessionCacheUtilities

      @Autowired private SessionCacheUtilities sessionCacheUtilities
      Utilities for modify session cache.
    • requestContextManager

      @Autowired private es.kukenan.smartfi.common.context.RequestContextManager requestContextManager
      Request context bean.
    • otpForLoginWithScaDateExtensionResponseHandler

      @Autowired private OtpForLoginWithScaDateExtensionResponseHandler otpForLoginWithScaDateExtensionResponseHandler
      Specific response handler for the OTP required to extend the time granted to open a session (SCA device login date extension).
    • genericOtpRequiredResponseHandler

      @Autowired private GenericOtpRequiredResponseHandler genericOtpRequiredResponseHandler
      Generic OTP required response handler.
  • Constructor Details

    • ResponseHandler

      public ResponseHandler()
  • Method Details

    • handlerResponse

      public byte[] handlerResponse(org.springframework.web.server.ServerWebExchange exchange, String response, es.kukenan.smartfi.microservice.security.gateway.cache.model.SessionCache cacheInformation) throws IOException, NoSuchAlgorithmException
      Handler response login.
      Parameters:
      exchange - Content
      response - response body into gateway configuration.
      cacheInformation - unique identifier in cache.
      Returns:
      encrypted data.
      Throws:
      IOException - mapper json object exception.
      NoSuchAlgorithmException - exception.
    • getJwtBearerTokenFromResponse

      private es.kukenan.smartfi.common.service.jwt.JwtBearerToken getJwtBearerTokenFromResponse(com.fasterxml.jackson.databind.node.ObjectNode response) throws IOException
      Get response without jwt content in response body.
      Parameters:
      response - response of login endpoint.
      Returns:
      JwtBearerToken token object.
      Throws:
      IOException - exception when map is incorrect.
    • updateCacheJwtToken

      private void updateCacheJwtToken(es.kukenan.smartfi.common.service.jwt.JwtBearerToken jwtBearerToken, es.kukenan.smartfi.microservice.security.gateway.cache.model.SessionCache cacheInformation)
    • updateExchangeContext

      private void updateExchangeContext(es.kukenan.smartfi.common.service.jwt.JwtBearerToken jwtBearerToken, org.springframework.web.server.ServerWebExchange exchange)
    • getEncryptLoginResponse

      private byte[] getEncryptLoginResponse(org.springframework.web.server.ServerWebExchange exchange, es.kukenan.smartfi.microservice.security.gateway.cache.model.SessionCache cacheInformation, com.fasterxml.jackson.databind.node.ObjectNode responseObjectNode) throws com.fasterxml.jackson.core.JsonProcessingException
      Get encrypt response for login.
      Parameters:
      exchange - server exchange with request and response data.
      cacheInformation - session cache with uuid.
      responseObjectNode - body response of login.
      Returns:
      byte[] with encrypt login response.
      Throws:
      com.fasterxml.jackson.core.JsonProcessingException - json processing exception
    • checkOtpRequired

      private boolean checkOtpRequired(com.fasterxml.jackson.databind.node.ObjectNode response, org.springframework.web.server.ServerWebExchange exchange)
      Check if response get a otp required exception.
      Parameters:
      response - response of service.
      exchange - server web exchange with request and response data.
      Returns:
      true if get otp required exception.