From b683721a819441421c2c7e77205a53d474fab465 Mon Sep 17 00:00:00 2001 From: Kirill Teplinskiy Date: Wed, 6 Mar 2024 18:51:52 +0500 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=B8=D0=BD=D1=84=D0=BE=D1=80=D0=BC=D0=B0=D1=86=D0=B8=D1=8E=20?= =?UTF-8?q?=D0=BE=20=D1=82=D0=B5=D1=85=D0=BD=D0=BE=D0=BB=D0=BE=D0=B3=D0=B8?= =?UTF-8?q?=D1=87=D0=B5=D1=81=D0=BA=D0=BE=D0=BC=20=D1=80=D0=B5=D1=88=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B8=20=D0=BF=D0=B0=D1=80=D1=82=D0=BD=D1=91=D1=80?= =?UTF-8?q?=D0=B0=20(#1110)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Добавил информацию о технологическом решении партнёра. DDCORE-7682 --- src/ComDiadocApi.cs | 5 +++++ src/DiadocApi.cs | 8 ++++++++ src/DiadocHttpApi.cs | 9 +++++++++ tests/TaskAsyncronousPattern_Test.cs | 5 +++-- 4 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/ComDiadocApi.cs b/src/ComDiadocApi.cs index 1feda8bf..2eca56b9 100644 --- a/src/ComDiadocApi.cs +++ b/src/ComDiadocApi.cs @@ -605,6 +605,11 @@ public void SetProxyCredentialsSecure(string proxyUser, SecureString proxyPasswo diadoc.SetProxyCredentials(proxyUser, proxyPassword); } + public void SetSolutionInfo(string solutionInfo) + { + diadoc.SetSolutionInfo(solutionInfo); + } + public void EnableSystemProxyUsage() { diadoc.EnableSystemProxyUsage(); diff --git a/src/DiadocApi.cs b/src/DiadocApi.cs index 6fc5e38b..0ab2d940 100644 --- a/src/DiadocApi.cs +++ b/src/DiadocApi.cs @@ -90,6 +90,14 @@ public void SetProxyCredentials([NotNull] string user, [NotNull] SecureString pa diadocHttpApi.HttpClient.SetProxyCredentials(user, password); } + /// + /// Установить информацию об интеграционном решении технологического партнера. + /// + public void SetSolutionInfo([NotNull] string solutionInfo) + { + diadocHttpApi.SolutionInfo = solutionInfo; + } + public string Authenticate(string login, string password, string key = null, string id = null) { return diadocHttpApi.Authenticate(login, password, key, id); diff --git a/src/DiadocHttpApi.cs b/src/DiadocHttpApi.cs index d99473ee..adde8b92 100644 --- a/src/DiadocHttpApi.cs +++ b/src/DiadocHttpApi.cs @@ -47,6 +47,11 @@ public DiadocHttpApi( [NotNull] public IHttpClient HttpClient { get; } [NotNull] public DocflowHttpApi Docflow { get; } + + /// + /// Информация об интеграционном решении технологического партнера. + /// + [CanBeNull] public string SolutionInfo { get; set; } [NotNull] protected byte[] PerformHttpRequest( @@ -150,6 +155,10 @@ protected virtual HttpRequest BuildRequest( sb.AppendFormat(",ddauth_token={0}", token); } request.AddHeader("Authorization", sb.ToString()); + if (!string.IsNullOrEmpty(SolutionInfo)) + { + request.AddHeader("X-Solution-Info", SolutionInfo); + } return request; } diff --git a/tests/TaskAsyncronousPattern_Test.cs b/tests/TaskAsyncronousPattern_Test.cs index dfb9ef88..96831db4 100644 --- a/tests/TaskAsyncronousPattern_Test.cs +++ b/tests/TaskAsyncronousPattern_Test.cs @@ -114,7 +114,8 @@ private static IEnumerable GetAllDiadocHttpApiMethods() "SetProxyUri", "EnableSystemProxyUsage", "DisableSystemProxyUsage", - "SetProxyCredentials" + "SetProxyCredentials", + "SetSolutionInfo" }; private static readonly string[] ObjectMethods = typeof(object).GetMethods().Select(x => x.Name).ToArray(); @@ -127,4 +128,4 @@ private static IEnumerable GetAllApiMethodsForType(Type type) .Where(x => !ObjectMethods.Contains(x.Name)); } } -} \ No newline at end of file +}