Пример #1
0
        public void SendOneWay(object request)
        {
            var requestUri = this.AsyncOneWayBaseUri.WithTrailingSlash() + request.GetType().Name;
            var httpMethod = ServiceClientBase.GetExplicitMethod(request) ?? DefaultHttpMethod;

            SendOneWay(httpMethod, requestUri, request);
        }
Пример #2
0
        public virtual Task <TResponse> SendAsync <TResponse>(object request)
        {
            var requestUri = this.SyncReplyBaseUri.WithTrailingSlash() + request.GetType().Name;
            var httpMethod = ServiceClientBase.GetExplicitMethod(request) ?? DefaultHttpMethod;

            return(SendAsync <TResponse>(httpMethod, requestUri, request));
        }
Пример #3
0
        public void SendOneWay(string relativeOrAbsoluteUrl, object request)
        {
            var httpMethod   = ServiceClientBase.GetExplicitMethod(request) ?? DefaultHttpMethod;
            var absolutetUri = ToAbsoluteUrl(ResolveUrl(httpMethod, relativeOrAbsoluteUrl));

            SendAsync <byte[]>(httpMethod, absolutetUri, request).Wait();
        }
Пример #4
0
        public virtual Task <TResponse> SendAsync <TResponse>(object request, CancellationToken token)
        {
            if (request is IVerb)
            {
                if (request is IGet)
                {
                    return(GetAsync <TResponse>(request));
                }
                if (request is IPost)
                {
                    return(PostAsync <TResponse>(request));
                }
                if (request is IPut)
                {
                    return(PutAsync <TResponse>(request));
                }
                if (request is IDelete)
                {
                    return(DeleteAsync <TResponse>(request));
                }
                if (request is IPatch)
                {
                    return(PatchAsync <TResponse>(request));
                }
            }

            var httpMethod = ServiceClientBase.GetExplicitMethod(request) ?? DefaultHttpMethod;
            var requestUri = ResolveUrl(httpMethod, UrlResolver == null
                ? this.SyncReplyBaseUri.WithTrailingSlash() + request.GetType().Name
                : Format + "/reply/" + request.GetType().Name);

            return(SendAsync <TResponse>(httpMethod, requestUri, request, token));
        }
Пример #5
0
        public void SendOneWay(string relativeOrAbsoluteUrl, object request)
        {
            var httpMethod = ServiceClientBase.GetExplicitMethod(request) ?? DefaultHttpMethod;

            SendOneWay(httpMethod, ResolveUrl(httpMethod, relativeOrAbsoluteUrl), request);
        }