public static async Task <PaymentInitiationApiProfileFluentResponse> SubmitAsync(
            this PaymentInitiationApiProfileContext context)
        {
            try
            {
                PaymentInitiationApiProfile apiProfile = context.Data ?? new PaymentInitiationApiProfile(
                    id: context.Id.ArgNotNullElseInvalidOp("Id not specified"),
                    bankClientProfileId: context.BankClientProfileId.ArgNotNullElseInvalidOp(
                        "BankClientProfileId not specified"),
                    apiVersion: context.ApiVersion.ArgStructNotNullElseInvalidOp(
                        "AccountTransactionApiInfo not specified"),
                    baseUrl: context.BaseUrl.ArgNotNullElseInvalidOp("AccountTransactionApiInfo not specified"));

                CreatePaymentInitiationApiProfile i = new CreatePaymentInitiationApiProfile(
                    dbContextService: context.Context.DbContextService,
                    apiProfileRepo: context.Context.ApiProfileRepository);

                PaymentInitiationApiProfileResponse resp = await i.CreateAsync(apiProfile);

                return(new PaymentInitiationApiProfileFluentResponse(resp));
            }
            catch (AggregateException ex)
            {
                context.Context.Instrumentation.Exception(ex);

                return(new PaymentInitiationApiProfileFluentResponse(messages: ex.CreateErrorMessages(), data: null));
            }
            catch (Exception ex)
            {
                context.Context.Instrumentation.Exception(ex);

                return(new PaymentInitiationApiProfileFluentResponse(message: ex.CreateErrorMessage(), data: null));
            }
        }
 public PaymentInitiationApiProfileFluentResponse(
     IList <FluentResponseMessage> messages,
     PaymentInitiationApiProfileResponse data)
     : base(messages)
 {
     Data = data;
 }
        protected override void ProcessRecordInner(IServiceProvider services)
        {
            List <FluentResponseMessage> messages = new List <FluentResponseMessage>();

            try
            {
                ICreatePaymentInitiationApiProfile createApiProfile =
                    services.GetService <ICreatePaymentInitiationApiProfile>();
                PaymentInitiationApiProfileResponse response = createApiProfile
                                                               .CreateAsync(PaymentInitiationApiProfile)
                                                               .GetAwaiter()
                                                               .GetResult();
                PaymentInitiationApiProfileFluentResponse response2 =
                    new PaymentInitiationApiProfileFluentResponse(messages: messages, data: response);
                WriteObject(response2);
            }
            catch (Exception ex)
            {
                WriteError(
                    new ErrorRecord(
                        exception: ex,
                        errorId: "Could not create record",
                        errorCategory: ErrorCategory.InvalidOperation,
                        targetObject: null));
            }
        }
Пример #4
0
 public PaymentInitiationApiProfileHttpResponse(
     PaymentInitiationApiProfileResponse data,
     MessagesResponse messages)
 {
     Data     = data;
     Messages = messages;
 }
 public PaymentInitiationApiProfileFluentResponse(
     FluentResponseMessage message,
     PaymentInitiationApiProfileResponse data)
     : this(messages : new[] { message }, data : data)
 {
 }
 public PaymentInitiationApiProfileFluentResponse(PaymentInitiationApiProfileResponse data)
     : this(messages : (IList <FluentResponseMessage>)null, data : data)
 {
 }