analizators/U2U1025
This commit is contained in:
parent
4155f911c0
commit
d1ce4c5ed6
@ -184,7 +184,8 @@ namespace ASC.Web.Files.Services.DocumentService
|
||||
private NotifyClient NotifyClient { get; }
|
||||
private MailMergeTaskRunner MailMergeTaskRunner { get; }
|
||||
private FileTrackerHelper FileTracker { get; }
|
||||
public ILog Logger { get; }
|
||||
public ILog Logger { get; }
|
||||
public IHttpClientFactory ClientFactory { get; }
|
||||
|
||||
public DocumentServiceTrackerHelper(
|
||||
SecurityContext securityContext,
|
||||
@ -205,7 +206,8 @@ namespace ASC.Web.Files.Services.DocumentService
|
||||
DocumentServiceConnector documentServiceConnector,
|
||||
NotifyClient notifyClient,
|
||||
MailMergeTaskRunner mailMergeTaskRunner,
|
||||
FileTrackerHelper fileTracker)
|
||||
FileTrackerHelper fileTracker,
|
||||
IHttpClientFactory clientFactory)
|
||||
{
|
||||
SecurityContext = securityContext;
|
||||
UserManager = userManager;
|
||||
@ -225,7 +227,8 @@ namespace ASC.Web.Files.Services.DocumentService
|
||||
NotifyClient = notifyClient;
|
||||
MailMergeTaskRunner = mailMergeTaskRunner;
|
||||
FileTracker = fileTracker;
|
||||
Logger = options.CurrentValue;
|
||||
Logger = options.CurrentValue;
|
||||
ClientFactory = clientFactory;
|
||||
}
|
||||
|
||||
public string GetCallbackUrl<T>(T fileId)
|
||||
@ -491,7 +494,7 @@ namespace ASC.Web.Files.Services.DocumentService
|
||||
|
||||
var message = fileData.MailMerge.Message;
|
||||
Stream attach = null;
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
switch (fileData.MailMerge.Type)
|
||||
{
|
||||
case MailMergeType.AttachDocx:
|
||||
@ -553,7 +556,7 @@ namespace ASC.Web.Files.Services.DocumentService
|
||||
Attach = attach
|
||||
})
|
||||
{
|
||||
var response = MailMergeTaskRunner.Run(mailMergeTask);
|
||||
var response = MailMergeTaskRunner.Run(mailMergeTask, ClientFactory);
|
||||
Logger.InfoFormat("DocService mailMerge {0}/{1} send: {2}",
|
||||
fileData.MailMerge.RecordIndex + 1, fileData.MailMerge.RecordCount, response);
|
||||
}
|
||||
@ -598,7 +601,7 @@ namespace ASC.Web.Files.Services.DocumentService
|
||||
var request = new HttpRequestMessage();
|
||||
request.RequestUri = new Uri(downloadUri);
|
||||
|
||||
using (var httpClient = new HttpClient())
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
using (var response = httpClient.Send(request))
|
||||
using (var stream = response.Content.ReadAsStream())
|
||||
using (var fileStream = new ResponseStream(stream, stream.Length))
|
||||
@ -625,7 +628,7 @@ namespace ASC.Web.Files.Services.DocumentService
|
||||
var request = new HttpRequestMessage();
|
||||
request.RequestUri = new Uri(differenceUrl);
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
using var response = httpClient.Send(request);
|
||||
using var stream = response.Content.ReadAsStream();
|
||||
|
||||
|
@ -112,7 +112,8 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
private DocumentServiceConnector DocumentServiceConnector { get; }
|
||||
private ThirdPartyAppHandlerService ThirdPartyAppHandlerService { get; }
|
||||
private IServiceProvider ServiceProvider { get; }
|
||||
public ILog Logger { get; }
|
||||
public ILog Logger { get; }
|
||||
public IHttpClientFactory ClientFactory { get; }
|
||||
|
||||
public BoxApp()
|
||||
{
|
||||
@ -145,7 +146,8 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
CoreSettings coreSettings,
|
||||
IConfiguration configuration,
|
||||
ICacheNotify<ConsumerCacheItem> cache,
|
||||
ConsumerFactory consumerFactory,
|
||||
ConsumerFactory consumerFactory,
|
||||
IHttpClientFactory clientFactory,
|
||||
string name, int order, Dictionary<string, string> additional)
|
||||
: base(tenantManager, coreBaseSettings, coreSettings, configuration, cache, consumerFactory, name, order, additional)
|
||||
{
|
||||
@ -169,7 +171,8 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
DocumentServiceConnector = documentServiceConnector;
|
||||
ThirdPartyAppHandlerService = thirdPartyAppHandlerService;
|
||||
ServiceProvider = serviceProvider;
|
||||
Logger = option.CurrentValue;
|
||||
Logger = option.CurrentValue;
|
||||
ClientFactory = clientFactory;
|
||||
}
|
||||
|
||||
public bool Request(HttpContext context)
|
||||
@ -310,7 +313,7 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
}
|
||||
}
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
|
||||
var request = new HttpRequestMessage();
|
||||
request.RequestUri = new Uri(BoxUrlUpload.Replace("{fileId}", fileId));
|
||||
@ -471,7 +474,7 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
request.Method = HttpMethod.Get;
|
||||
request.Headers.Add("Authorization", "Bearer " + token);
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
using var response = httpClient.Send(request);
|
||||
using var stream = new ResponseStream(response);
|
||||
stream.CopyTo(context.Response.Body);
|
||||
|
@ -118,7 +118,8 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
private TokenHelper TokenHelper { get; }
|
||||
private DocumentServiceConnector DocumentServiceConnector { get; }
|
||||
private ThirdPartyAppHandlerService ThirdPartyAppHandlerService { get; }
|
||||
private IServiceProvider ServiceProvider { get; }
|
||||
private IServiceProvider ServiceProvider { get; }
|
||||
private IHttpClientFactory ClientFactory { get; }
|
||||
|
||||
public GoogleDriveApp()
|
||||
{
|
||||
@ -155,7 +156,8 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
CoreSettings coreSettings,
|
||||
IConfiguration configuration,
|
||||
ICacheNotify<ConsumerCacheItem> cache,
|
||||
ConsumerFactory consumerFactory,
|
||||
ConsumerFactory consumerFactory,
|
||||
IHttpClientFactory clientFactory,
|
||||
string name, int order, Dictionary<string, string> additional)
|
||||
: base(tenantManager, coreBaseSettings, coreSettings, configuration, cache, consumerFactory, name, order, additional)
|
||||
{
|
||||
@ -183,7 +185,8 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
TokenHelper = tokenHelper;
|
||||
DocumentServiceConnector = documentServiceConnector;
|
||||
ThirdPartyAppHandlerService = thirdPartyAppHandlerService;
|
||||
ServiceProvider = serviceProvider;
|
||||
ServiceProvider = serviceProvider;
|
||||
ClientFactory = clientFactory;
|
||||
}
|
||||
|
||||
public bool Request(HttpContext context)
|
||||
@ -315,7 +318,7 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
}
|
||||
}
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
|
||||
var request = new HttpRequestMessage();
|
||||
request.RequestUri = new Uri(GoogleLoginProvider.GoogleUrlFileUpload + "/{fileId}?uploadType=media".Replace("{fileId}", fileId));
|
||||
@ -522,7 +525,7 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
request.Method = HttpMethod.Get;
|
||||
request.Headers.Add("Authorization", "Bearer " + token);
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
using var response = httpClient.Send(request);
|
||||
using var stream = new ResponseStream(response);
|
||||
stream.CopyTo(context.Response.Body);
|
||||
@ -732,7 +735,7 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
var request = new HttpRequestMessage();
|
||||
request.RequestUri = new Uri(contentUrl);
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
using var response = httpClient.Send(request);
|
||||
using var content = new ResponseStream(response);
|
||||
return CreateFile(content, fileName, folderId, token);
|
||||
@ -742,7 +745,7 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
{
|
||||
Logger.Debug("GoogleDriveApp: create file");
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
|
||||
var request = new HttpRequestMessage();
|
||||
request.RequestUri = new Uri(GoogleLoginProvider.GoogleUrlFileUpload + "?uploadType=multipart");
|
||||
@ -847,7 +850,7 @@ namespace ASC.Web.Files.ThirdPartyApp
|
||||
fileId,
|
||||
HttpUtility.UrlEncode(requiredMimeType));
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
|
||||
var request = new HttpRequestMessage();
|
||||
request.RequestUri = new Uri(downloadUrl);
|
||||
|
@ -267,7 +267,8 @@ namespace ASC.Web.Files.Utils
|
||||
private TenantManager TenantManager { get; }
|
||||
private SettingsManager SettingsManager { get; }
|
||||
private IServiceProvider ServiceProvider { get; }
|
||||
private ILog Logger { get; }
|
||||
private ILog Logger { get; }
|
||||
private IHttpClientFactory ClientFactory { get; }
|
||||
|
||||
public EntryManager(
|
||||
IDaoFactory daoFactory,
|
||||
@ -295,7 +296,8 @@ namespace ASC.Web.Files.Utils
|
||||
IServiceProvider serviceProvider,
|
||||
ICache cache,
|
||||
FileTrackerHelper fileTracker,
|
||||
EntryStatusManager entryStatusManager)
|
||||
EntryStatusManager entryStatusManager,
|
||||
IHttpClientFactory clientFactory)
|
||||
{
|
||||
DaoFactory = daoFactory;
|
||||
FileSecurity = fileSecurity;
|
||||
@ -323,6 +325,7 @@ namespace ASC.Web.Files.Utils
|
||||
Cache = cache;
|
||||
FileTracker = fileTracker;
|
||||
EntryStatusManager = entryStatusManager;
|
||||
ClientFactory = clientFactory;
|
||||
}
|
||||
|
||||
public IEnumerable<FileEntry> GetEntries<T>(Folder<T> parent, int from, int count, FilterType filter, bool subjectGroup, Guid subjectId, string searchText, bool searchInContent, bool withSubfolders, OrderBy orderBy, out int total)
|
||||
@ -1007,7 +1010,7 @@ namespace ASC.Web.Files.Utils
|
||||
var request = new HttpRequestMessage();
|
||||
request.RequestUri = new Uri(downloadUri);
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
using var response = httpClient.Send(request);
|
||||
using var editedFileStream = new ResponseStream(response);
|
||||
editedFileStream.CopyTo(tmpStream);
|
||||
|
@ -542,7 +542,8 @@ namespace ASC.Web.Files.Utils
|
||||
private BaseCommonLinkUtility BaseCommonLinkUtility { get; }
|
||||
private EntryStatusManager EntryStatusManager { get; }
|
||||
private IServiceProvider ServiceProvider { get; }
|
||||
private IHttpContextAccessor HttpContextAccesor { get; }
|
||||
private IHttpContextAccessor HttpContextAccesor { get; }
|
||||
private IHttpClientFactory ClientFactory { get; }
|
||||
|
||||
public FileConverter(
|
||||
FileUtility fileUtility,
|
||||
@ -564,7 +565,8 @@ namespace ASC.Web.Files.Utils
|
||||
FileTrackerHelper fileTracker,
|
||||
BaseCommonLinkUtility baseCommonLinkUtility,
|
||||
EntryStatusManager entryStatusManager,
|
||||
IServiceProvider serviceProvider)
|
||||
IServiceProvider serviceProvider,
|
||||
IHttpClientFactory clientFactory)
|
||||
{
|
||||
FileUtility = fileUtility;
|
||||
FilesLinkUtility = filesLinkUtility;
|
||||
@ -585,7 +587,8 @@ namespace ASC.Web.Files.Utils
|
||||
FileTracker = fileTracker;
|
||||
BaseCommonLinkUtility = baseCommonLinkUtility;
|
||||
EntryStatusManager = entryStatusManager;
|
||||
ServiceProvider = serviceProvider;
|
||||
ServiceProvider = serviceProvider;
|
||||
ClientFactory = clientFactory;
|
||||
}
|
||||
public FileConverter(
|
||||
FileUtility fileUtility,
|
||||
@ -608,11 +611,12 @@ namespace ASC.Web.Files.Utils
|
||||
BaseCommonLinkUtility baseCommonLinkUtility,
|
||||
EntryStatusManager entryStatusManager,
|
||||
IServiceProvider serviceProvider,
|
||||
IHttpContextAccessor httpContextAccesor)
|
||||
IHttpContextAccessor httpContextAccesor,
|
||||
IHttpClientFactory clientFactory)
|
||||
: this(fileUtility, filesLinkUtility, daoFactory, setupInfo, pathProvider, fileSecurity,
|
||||
fileMarker, tenantManager, authContext, entryManager, filesSettingsHelper,
|
||||
globalFolderHelper, filesMessageService, fileShareLink, documentServiceHelper, documentServiceConnector, fileTracker,
|
||||
baseCommonLinkUtility, entryStatusManager, serviceProvider)
|
||||
baseCommonLinkUtility, entryStatusManager, serviceProvider, clientFactory)
|
||||
{
|
||||
HttpContextAccesor = httpContextAccesor;
|
||||
}
|
||||
@ -683,7 +687,7 @@ namespace ASC.Web.Files.Utils
|
||||
var request = new HttpRequestMessage();
|
||||
request.RequestUri = new Uri(convertUri);
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
using var httpClient = ClientFactory.CreateClient();
|
||||
using var response = httpClient.Send(request);
|
||||
return new ResponseStream(response);
|
||||
}
|
||||
@ -851,7 +855,7 @@ namespace ASC.Web.Files.Utils
|
||||
var request = new HttpRequestMessage();
|
||||
request.RequestUri = new Uri(convertedFileUrl);
|
||||
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = ClientFactory.CreateClient();
|
||||
|
||||
try
|
||||
{
|
||||
|
@ -86,14 +86,14 @@ namespace ASC.Web.Files.Utils
|
||||
BaseCommonLinkUtility = baseCommonLinkUtility;
|
||||
}
|
||||
|
||||
public string Run(MailMergeTask mailMergeTask)
|
||||
public string Run(MailMergeTask mailMergeTask, IHttpClientFactory clientFactory)
|
||||
{
|
||||
if (string.IsNullOrEmpty(mailMergeTask.From)) throw new ArgumentException("From is null");
|
||||
if (string.IsNullOrEmpty(mailMergeTask.To)) throw new ArgumentException("To is null");
|
||||
|
||||
CreateDraftMail(mailMergeTask);
|
||||
|
||||
var bodySendAttach = AttachToMail(mailMergeTask);
|
||||
var bodySendAttach = AttachToMail(mailMergeTask, clientFactory);
|
||||
|
||||
return SendMail(mailMergeTask, bodySendAttach);
|
||||
}
|
||||
@ -122,7 +122,7 @@ namespace ASC.Web.Files.Utils
|
||||
mailMergeTask.StreamId = responseCreate["response"]["streamId"].Value<string>();
|
||||
}
|
||||
|
||||
private string AttachToMail(MailMergeTask mailMergeTask)
|
||||
private string AttachToMail(MailMergeTask mailMergeTask, IHttpClientFactory clientFactory)
|
||||
{
|
||||
if (mailMergeTask.Attach == null) return string.Empty;
|
||||
|
||||
@ -141,7 +141,7 @@ namespace ASC.Web.Files.Utils
|
||||
request.Content = new StreamContent(mailMergeTask.Attach);
|
||||
|
||||
string responseAttachString;
|
||||
using var httpClient = new HttpClient();
|
||||
var httpClient = clientFactory.CreateClient();
|
||||
using var response = httpClient.Send(request);
|
||||
using (var stream = response.Content.ReadAsStream())
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user