private IsAlive GetRequest(BeatContext context)
 {
     return(new IsAlive()
     {
         Version = context.Request.Version
     });
 }
Esempio n. 2
0
        private void IsAlive()
        {
            lock (Locker)
            {
                if (_lastIsAliveRequestOn.AddMinutes(this.BeatPeriod) < DateTime.Now)
                {
                    var isAliveContext = new BeatContext(this, BeatRequest.V1Request);

                    this.Transfer.IsAlive(isAliveContext);

                    if (isAliveContext.Exception != null)
                    {
                        this.IsNetException    = true;
                        this.ServiceIsNotAlive = true;
                        var anyLog = new AnyLog(Guid.NewGuid())
                        {
                            Req_Ontology         = "IsAlive",
                            Req_Verb             = string.Empty,
                            Req_ClientId         = string.Empty,
                            Req_ClientType       = string.Empty,
                            CreateOn             = DateTime.Now,
                            Req_Description      = string.Empty,
                            Req_EventSourceType  = string.Empty,
                            Req_EventSubjectCode = string.Empty,
                            InfoFormat           = "json",
                            Req_InfoId           = string.Empty,
                            Req_InfoValue        = string.Empty,
                            Req_UserName         = string.Empty,
                            Req_IsDumb           = false,
                            LocalEntityId        = string.Empty,
                            CatalogCode          = string.Empty,
                            Req_ReasonPhrase     = Status.NodeException.ToName(),
                            ReceivedOn           = DateTime.Now,
                            Req_MessageId        = string.Empty,
                            Req_MessageType      = string.Empty,
                            Req_QueryList        = string.Empty,
                            Req_Status           = (int)Status.NodeException,
                            Req_TimeStamp        = DateTime.Now,
                            Req_Version          = isAliveContext.Request.Version,
                            Res_InfoValue        = string.Empty,
                            Res_Description      = isAliveContext.Exception.Message,
                            Res_ReasonPhrase     = Status.NodeException.ToName(),
                            Res_StateCode        = (int)Status.NodeException
                        };
                        AcDomain.LoggingService.Log(anyLog);
                    }
                    else
                    {
                        this.ServiceIsNotAlive = !isAliveContext.Response.IsAlive;
                    }
                }
                _lastIsAliveRequestOn = DateTime.Now;
            }
        }
 protected async override Task <IBeatResponse> IsAliveCoreAsync(BeatContext context)
 {
     try
     {
         var client = new JsonServiceClient(context.Node.Node.AnycmdApiAddress);
         return(await client.GetAsync(GetRequest(context)));
     }
     catch (Exception ex)
     {
         context.Exception = ex;
         return(null);
     }
 }
 protected override IBeatResponse IsAliveCore(BeatContext context)
 {
     try
     {
         var client = new JsonServiceClient(context.Node.Node.AnycmdApiAddress);
         return(client.Get(GetRequest(context)));
     }
     catch (Exception ex)
     {
         context.Exception = ex;
         return(null);
     }
 }
 protected async override Task<IBeatResponse> IsAliveCoreAsync(BeatContext context)
 {
     try
     {
         var client = new JsonServiceClient(context.Node.Node.AnycmdApiAddress);
         return await client.GetAsync(GetRequest(context));
     }
     catch (Exception ex)
     {
         context.Exception = ex;
         return null;
     }
 }
 protected override IBeatResponse IsAliveCore(BeatContext context)
 {
     try
     {
         var client = new JsonServiceClient(context.Node.Node.AnycmdApiAddress);
         return client.Get(GetRequest(context));
     }
     catch (Exception ex)
     {
         context.Exception = ex;
         return null;
     }
 }
Esempio n. 7
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="context"></param>
        public async Task IsAliveAsync(BeatContext context)
        {
            if (context == null || context.Request == null)
            {
                throw new ArgumentNullException("context");
            }

            var response = await IsAliveCoreAsync(context);

            if (response != null)
            {
                context.Response.SetData(response);
            }
            else
            {
                if (context.Exception == null)
                {
                    context.Exception = new AnycmdException("远端服务未返回值");
                }
            }
        }
Esempio n. 8
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public void IsAlive(BeatContext context)
        {
            if (context == null || context.Request == null)
            {
                throw new ArgumentNullException("context");
            }

            var response = IsAliveCore(context);

            if (response != null)
            {
                context.Response.SetData(response);
            }
            else
            {
                if (context.Exception == null)
                {
                    context.Exception = new GeneralException("远端服务未返回值");
                }
            }
        }
Esempio n. 9
0
 public TrackService()
 {
     db = new BeatContext();
 }
Esempio n. 10
0
 public MemberService()
 {
     db = new BeatContext();
 }
Esempio n. 11
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="context"></param>
 /// <returns></returns>
 protected abstract Task <IBeatResponse> IsAliveCoreAsync(BeatContext context);
Esempio n. 12
0
 private IsAlive GetRequest(BeatContext context)
 {
     return new IsAlive()
     {
         Version = context.Request.Version
     };
 }
Esempio n. 13
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="context"></param>
 /// <returns></returns>
 protected abstract IBeatResponse IsAliveCore(BeatContext context);
Esempio n. 14
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="context"></param>
        public async Task IsAliveAsync(BeatContext context)
        {
            if (context == null || context.Request == null)
            {
                throw new ArgumentNullException("context");
            }

            var response = await IsAliveCoreAsync(context);
            if (response != null)
            {
                context.Response.SetData(response);
            }
            else
            {
                if (context.Exception == null)
                {
                    context.Exception = new AnycmdException("远端服务未返回值");
                }
            }
        }
Esempio n. 15
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="context"></param>
 /// <returns></returns>
 protected abstract Task<IBeatResponse> IsAliveCoreAsync(BeatContext context);
Esempio n. 16
0
        private void IsAlive()
        {
            lock (Locker)
            {
                if (_lastIsAliveRequestOn.AddMinutes(this.BeatPeriod) < DateTime.Now)
                {
                    var isAliveContext = new BeatContext(this, BeatRequest.V1Request);

                    this.Transfer.IsAlive(isAliveContext);

                    if (isAliveContext.Exception != null)
                    {
                        this.IsNetException = true;
                        this.ServiceIsNotAlive = true;
                        var anyLog = new AnyLog(Guid.NewGuid())
                        {
                            Req_Ontology = "IsAlive",
                            Req_Verb = string.Empty,
                            Req_ClientId = string.Empty,
                            Req_ClientType = string.Empty,
                            CreateOn = DateTime.Now,
                            Req_Description = string.Empty,
                            Req_EventSourceType = string.Empty,
                            Req_EventSubjectCode = string.Empty,
                            InfoFormat = "json",
                            Req_InfoId = string.Empty,
                            Req_InfoValue = string.Empty,
                            Req_UserName = string.Empty,
                            Req_IsDumb = false,
                            LocalEntityId = string.Empty,
                            CatalogCode = string.Empty,
                            Req_ReasonPhrase = Status.NodeException.ToName(),
                            ReceivedOn = DateTime.Now,
                            Req_MessageId = string.Empty,
                            Req_MessageType = string.Empty,
                            Req_QueryList = string.Empty,
                            Req_Status = (int)Status.NodeException,
                            Req_TimeStamp = DateTime.Now,
                            Req_Version = isAliveContext.Request.Version,
                            Res_InfoValue = string.Empty,
                            Res_Description = isAliveContext.Exception.Message,
                            Res_ReasonPhrase = Status.NodeException.ToName(),
                            Res_StateCode = (int)Status.NodeException
                        };
                        AcDomain.LoggingService.Log(anyLog);
                    }
                    else
                    {
                        this.ServiceIsNotAlive = !isAliveContext.Response.IsAlive;
                    }
                }
                _lastIsAliveRequestOn = DateTime.Now;
            }
        }
Esempio n. 17
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="context"></param>
 /// <returns></returns>
 protected abstract IBeatResponse IsAliveCore(BeatContext context);
 public PartnerService()
 {
     db = new BeatContext();
 }