Beispiel #1
0
        private async void AddSchedule()
        {
            GXSchedule m = new GXSchedule();

            m.Name = "Minutely";
            GXDateTime dt = new GXDateTime(DateTime.Now.Date);

            dt.Skip = DateTimeSkips.Year | DateTimeSkips.Month | DateTimeSkips.Day | DateTimeSkips.Hour | DateTimeSkips.Minute;
            m.Start = dt.ToFormatString();
            UpdateSchedule us = new UpdateSchedule();

            us.Schedules.Add(m);
            GXSchedule h = new GXSchedule();

            h.Name  = "Hourly";
            dt.Skip = DateTimeSkips.Year | DateTimeSkips.Month | DateTimeSkips.Day | DateTimeSkips.Hour;
            h.Start = dt.ToFormatString();
            us.Schedules.Add(h);
            GXSchedule d = new GXSchedule();

            d.Name  = "Daily";
            dt.Skip = DateTimeSkips.Year | DateTimeSkips.Month | DateTimeSkips.Day;
            d.Start = dt.ToFormatString();
            us.Schedules.Add(d);
            using (HttpClient client = new HttpClient())
            {
                using (HttpResponseMessage response = await client.PostAsJsonAsync(ServerAddress + "/api/schedule/UpdateSchedule", us))
                {
                    Helpers.CheckStatus(response);
                    UpdateScheduleResponse r = await response.Content.ReadAsAsync <UpdateScheduleResponse>();
                }
            }
        }
Beispiel #2
0
        public override async Task <ActionResult <UpdateScheduleResponse> > HandleAsync(UpdateScheduleRequest request, CancellationToken cancellationToken)
        {
            var response = new UpdateScheduleResponse(request.CorrelationId());

            var toUpdate = _mapper.Map <Schedule>(request);
            await _repository.UpdateAsync <Schedule, Guid>(toUpdate);

            var dto = _mapper.Map <ScheduleDto>(toUpdate);

            response.Schedule = dto;

            return(Ok(response));
        }
        public static UpdateScheduleResponse Unmarshall(UnmarshallerContext context)
        {
            UpdateScheduleResponse updateScheduleResponse = new UpdateScheduleResponse();

            updateScheduleResponse.HttpResponse     = context.HttpResponse;
            updateScheduleResponse.RequestId        = context.StringValue("UpdateSchedule.RequestId");
            updateScheduleResponse.ScheduleName     = context.StringValue("UpdateSchedule.ScheduleName");
            updateScheduleResponse.Description      = context.StringValue("UpdateSchedule.Description");
            updateScheduleResponse.ScheduleId       = context.StringValue("UpdateSchedule.ScheduleId");
            updateScheduleResponse.Payload          = context.StringValue("UpdateSchedule.Payload");
            updateScheduleResponse.CronExpression   = context.StringValue("UpdateSchedule.CronExpression");
            updateScheduleResponse.Enable           = context.BooleanValue("UpdateSchedule.Enable");
            updateScheduleResponse.CreatedTime      = context.StringValue("UpdateSchedule.CreatedTime");
            updateScheduleResponse.LastModifiedTime = context.StringValue("UpdateSchedule.LastModifiedTime");

            return(updateScheduleResponse);
        }
        public ActionResult <UpdateScheduleResponse> Post(UpdateSchedule request)
        {
            if (request.Schedules == null || request.Schedules.Count == 0)
            {
                return(BadRequest("Schedules array is empty."));
            }
            UpdateScheduleResponse       ret   = new UpdateScheduleResponse();
            List <UInt64>                list  = new List <UInt64>();
            List <GXScheduleToAttribute> list2 = new List <GXScheduleToAttribute>();

            foreach (var it in request.Schedules)
            {
                List <GXObject> tmp = it.Objects;
                it.Objects = null;
                if (it.Id == 0)
                {
                    host.Connection.Insert(GXInsertArgs.Insert(it));
                    list.Add(it.Id);
                    if (tmp != null)
                    {
                        foreach (GXObject o in tmp)
                        {
                            if (o.Attributes != null)
                            {
                                foreach (GXAttribute a in o.Attributes)
                                {
                                    list2.Add(new GXScheduleToAttribute()
                                    {
                                        ScheduleId = it.Id, AttributeId = a.Id
                                    });
                                }
                            }
                        }
                        host.Connection.Insert(GXInsertArgs.InsertRange(list2));
                    }
                }
                else
                {
                    host.Connection.Update(GXUpdateArgs.Update(it));
                }
            }
            ret.ScheduleIds = list.ToArray();
            host.SetChange(TargetType.Schedule, DateTime.Now);
            return(ret);
        }
        /// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context)
        {
            UpdateScheduleResponse response = new UpdateScheduleResponse();

            context.Read();
            int targetDepth = context.CurrentDepth;

            while (context.ReadAtDepth(targetDepth))
            {
                if (context.TestExpression("Name", targetDepth))
                {
                    var unmarshaller = StringUnmarshaller.Instance;
                    response.Name = unmarshaller.Unmarshall(context);
                    continue;
                }
            }

            return(response);
        }