Ejemplo n.º 1
0
        public async ValueTask <ErtisAuthCustomEvent> FireEventAsync(object sender, ErtisAuthCustomEvent ertisAuthCustomEvent)
        {
            try
            {
                var insertedEvent = await this.SaveEventAsync(ertisAuthCustomEvent);

                if (insertedEvent != null)
                {
                    ertisAuthCustomEvent.Id = insertedEvent.Id;
                    this.CustomEventFired?.Invoke(sender, ertisAuthCustomEvent);

                    return(ertisAuthCustomEvent);
                }
                else
                {
                    Console.WriteLine("EventService.FireEventAsync error: Custom event could not inserted!");
                    return(null);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("EventService.FireEventAsync exception:");
                Console.WriteLine(ex);
                return(null);
            }
        }
Ejemplo n.º 2
0
        public async Task <IResponseResult <ErtisAuthCustomEvent> > FireCustomEventAsync(string eventType, string utilizerId, object document, object prior, TokenBase token)
        {
            var ertisAuthCustomEvent = new ErtisAuthCustomEvent
            {
                EventType    = eventType,
                UtilizerId   = utilizerId,
                Document     = document,
                Prior        = prior,
                MembershipId = this.MembershipId
            };

            return(await this.ExecuteRequestAsync <ErtisAuthCustomEvent>(
                       HttpMethod.Post,
                       $"{this.BaseUrl}/memberships/{this.MembershipId}/events",
                       null,
                       HeaderCollection.Add("Authorization", token.ToString()),
                       new JsonRequestBody(ertisAuthCustomEvent)));
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> Create([FromRoute] string membershipId, [FromBody] ErtisAuthCustomEvent model)
        {
            var membership = await this.membershipService.GetAsync(membershipId);

            if (membership == null)
            {
                return(this.MembershipNotFound(membershipId));
            }

            // Validation
            if (string.IsNullOrEmpty(model.EventType))
            {
                return(this.BadRequest("event_type is required field"));
            }

            var eventType = model.EventType;

            eventType = eventType.Replace(" ", string.Empty);

            var utilizerId = model.UtilizerId;

            if (string.IsNullOrEmpty(utilizerId))
            {
                var utilizer = this.GetUtilizer();
                utilizerId = utilizer.Id;
            }

            var ertisAuthCustomEvent = new ErtisAuthCustomEvent
            {
                EventType    = eventType,
                Document     = model.Document,
                Prior        = model.Prior,
                MembershipId = membershipId,
                UtilizerId   = utilizerId
            };

            var ertisAuthEvent = await this.eventService.FireEventAsync(this, ertisAuthCustomEvent);

            return(this.Created($"{this.Request.Scheme}://{this.Request.Host}{this.Request.Path}/{ertisAuthEvent.Id}", ertisAuthEvent));
        }