示例#1
0
        /// <summary>
        /// 将当前实例作为Descriptor保存到Service中。
        /// </summary>
        /// <param name="service"></param>
        public bool UpdateToService(ref EsbService service, out string error)
        {
            if (service.Type != ServiceType.SimpleRESTful)
            {
                throw new Exception("要更新的服务不是Simple RESTful类型的。");
            }

            if (ReturnJsonTemplate != null)
            {
                ReturnType = SimpleRESTfulReturn.Json;
            }
            if (SuccessRule == SimpleRESTfulSuccess.JsonPath &&
                ReturnJsonTemplate == null)
            {
                error = "定义了JPath验证,但是没有定义返回的JSON模板。";
                return(false);
            }
            if (ReturnType == SimpleRESTfulReturn.Json &&
                ReturnJsonTemplate == null)
            {
                error = "定义了JSON类型返回值,但是没有定义返回JSON模板";
                return(false);
            }
            service.ServiceDescriptor = JsonConvert.SerializeObject(this);
            error = "";
            return(true);
        }
示例#2
0
        /// <summary>
        /// 将当前实例作为Descriptor保存到Service中。
        /// </summary>
        /// <param name="service"></param>
        public bool UpdateToService(ref EsbService service, out string error)
        {
            if (service.Type != ServiceType.NCWebService)
            {
                throw new Exception("服务不是用友NC系统Web服务类型的。");
            }

            service.Name              = this.ServiceName;
            service.ActiveStatus      = this.ActiveStatus ? 1 : 0;
            service.ServiceDescriptor = JsonConvert.SerializeObject(this);
            error = "";
            return(true);
        }
示例#3
0
        /// <summary>
        /// 从一个EsbService定义中创建一个视图模型并返回。
        /// </summary>
        /// <param name="service"></param>
        /// <returns></returns>
        public static NCDescriptorViewModel CreateFrom(EsbService service)
        {
            if (service.Type != ServiceType.NCWebService)
            {
                throw new Exception("服务不是用友NC系统Web服务类型的。");
            }

            var model = JsonConvert.DeserializeObject <NCDescriptorViewModel>(service.ServiceDescriptor);

            if (model == null)
            {
                model = new NCDescriptorViewModel();
            }
            model.ServiceID    = service.ID;
            model.ServiceName  = service.Name;
            model.ActiveStatus = service.ActiveStatus == 1;

            return(model);
        }
示例#4
0
 public static EditServiceJson CreateFrom(EsbService service, JsonTemplateNames partName)
 {
     if (service.Type == ServiceType.SimpleRESTful)
     {
         return(EditServiceJson.CreateFrom(SimpleRestfulDescriptorViewModel.CreateFrom(service), partName));
     }
     else if (service.Type == ServiceType.NCWebService)
     {
         return(EditServiceJson.CreateFrom(NCDescriptorViewModel.CreateFrom(service), partName));
     }
     else if (service.Type == ServiceType.PrimetonService)
     {
         return(EditServiceJson.CreateFrom(PrimetonDescriptorViewModel.CreateFrom(service), partName));
     }
     else
     {
         throw new Exception("not impleted service type");
     }
 }
示例#5
0
        /// <summary>
        /// 从一个EsbService定义中创建一个视图模型并返回。
        /// </summary>
        /// <param name="service"></param>
        /// <returns></returns>
        public static SimpleRestfulDescriptorViewModel CreateFrom(EsbService service)
        {
            if (service.Type != ServiceType.SimpleRESTful)
            {
                throw new Exception("服务不是Simple RESTful类型的。");
            }

            var model = JsonConvert.DeserializeObject <SimpleRestfulDescriptorViewModel>(service.ServiceDescriptor);

            if (model == null)
            {
                model = new SimpleRestfulDescriptorViewModel();
            }
            model.ServiceID    = service.ID;
            model.ServiceName  = service.Name;
            model.ActiveStatus = service.ActiveStatus == 1;
            if (model.Headers == null)
            {
                model.Headers = new Dictionary <string, string>();
            }

            return(model);
        }