示例#1
0
        public ServiceRegistData GetServiceRegistData(RequestServiceData data)
        {
            var result = getServiceRegistData(data);

            if (result == null)
            {
                result = getCurrentAppRpcServiceByIntfc(data);
            }

            if (result == null)
            {
                throw new XNetCore.STL.XExceptionNoFindInfc(data.ServiceInfc);
            }
            return(result);
        }
示例#2
0
        private ServiceRegistData getServiceRegistData(RequestServiceData data)
        {
            ServiceRegistData result = null;
            var id = data.ServiceId;

            if (!string.IsNullOrWhiteSpace(id))
            {
                result = getServiceRegistDataById(id);
            }
            if (result != null)
            {
                return(result);
            }
            var name = data.ServiceName;

            if (!string.IsNullOrWhiteSpace(name))
            {
                result = getServiceRegistDataByName(name);
            }
            if (result != null)
            {
                return(result);
            }
            var infc   = data.ServiceInfc;
            var method = data.ServiceMethod;

            if (!string.IsNullOrWhiteSpace(infc) && !string.IsNullOrWhiteSpace(method))
            {
                result = getServiceRegistDataByMethod(infc, method);
            }
            if (result != null)
            {
                return(result);
            }
            result = getServiceRegistDataByInfc(infc);
            return(result);
        }
示例#3
0
 private ServiceRegistData getCurrentAppRpcServiceByIntfc(RequestServiceData data)
 {
     registerService(CurrentAppRpcRegistData.Instance.CreateRegistData(data.ServiceInfc, data.ServiceMethod));
     return(getServiceRegistData(data));
 }