package com.airlock.iam.transactionapproval.infrastructure.factory.message;

import com.airlock.iam.flow.api.domain.model.session.FlowSession;
import com.airlock.iam.transactionapproval.domain.model.flow.TransactionApprovalMessageAttributes;
import com.google.inject.Exposed;
import com.google.inject.PrivateModule;
import com.google.inject.Provides;
import java.util.Optional;

public class TransactionApprovalMessageAttributesModule extends PrivateModule {
   @Exposed
   @Provides
   Optional<TransactionApprovalMessageAttributes> messageAttributes(FlowSession flowSession) {
      return flowSession.flowAttributes().tryGetAttribute(TransactionApprovalMessageAttributes.class);
   }

   protected void configure() {
   }
}
