Class CreateConsentServiceImpl

java.lang.Object
com.skava.service.impl.CreateConsentServiceImpl
All Implemented Interfaces:
com.skava.core.EcommService<ConsentRequest,ConsentResponse>, CreateConsentService

@Service public class CreateConsentServiceImpl extends Object implements CreateConsentService
This service class implements CreateConsentService and handles the create consent service request, process it and save the details in DB. It also implements business logic required to create consent for a business or collection.
Author:
Infosys Equinox
  • Constructor Details

    • CreateConsentServiceImpl

      public CreateConsentServiceImpl()
      Default Constructor
  • Method Details

    • process

      @SendEvent(eventType="userservice/consent/create", identifier="response_consents.id") @HystrixCommand(commandKey="user-key", fallbackMethod="methodFallback", ignoreExceptions=com.skava.core.validation.ValidateException.class) public ConsentResponse process(ConsentRequest request)
      This method is used to create a new consent. Consent is similar to user preferences, where user can opt in or opt out of certain things like Opt in for monthly news letter. This will accept a consent request model with new consent data and on success validation save the changes in database respectively.
      Specified by:
      process in interface com.skava.core.EcommService<ConsentRequest,ConsentResponse>
      Parameters:
      request - Holds ConsentRequest object which contain consent request for creating a new consent.
      Returns:
      The ConsentResponse object which returns the success response code and response message on successful creation and if any validations fails, throws an validate exception.
    • methodFallback

      public ConsentResponse methodFallback(ConsentRequest input)
      Circuit breaker fall-back method monitors for failures and once failures reach certain threshold, the circuit breaker trips and returns error response accordingly - Method fallback.
      Parameters:
      input - Holds ConsentRequest object.
      Returns:
      The ConsentResponse object.
    • getValidator

      public List<com.skava.core.validation.ValidatorComponent> getValidator()
      This method is used to get the respective validator class for this create consent service.
      Specified by:
      getValidator in interface com.skava.core.EcommService<ConsentRequest,ConsentResponse>
      Returns:
      The list of ValidatorComponent object.