Merge pull request #1 from microsoft/master
Refresh fork from microsoft/Recurring-Integrations-Scheduler
This commit is contained in:
Коммит
272cd0cbf1
|
@ -9,7 +9,7 @@
|
|||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RecurringIntegrationsScheduler.Common</RootNamespace>
|
||||
<AssemblyName>RecurringIntegrationsScheduler.Common</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
|
@ -23,6 +23,7 @@
|
|||
<WarningLevel>4</WarningLevel>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<CodeAnalysisIgnoreGeneratedCode>false</CodeAnalysisIgnoreGeneratedCode>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
@ -31,6 +32,7 @@
|
|||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
|
@ -49,6 +51,7 @@
|
|||
</Compile>
|
||||
<Compile Include="Contracts\ContractEnums.cs" />
|
||||
<Compile Include="Contracts\OdataActionsConstants.cs" />
|
||||
<Compile Include="Helpers\AuthenticationHelper.cs" />
|
||||
<Compile Include="Helpers\FileOperationsHelper.cs" />
|
||||
<Compile Include="JobSettings\ExportJobSettings.cs" />
|
||||
<Compile Include="JobSettings\ImportJobSettings.cs" />
|
||||
|
@ -63,7 +66,6 @@
|
|||
<Compile Include="Contracts\DequeueResponse.cs" />
|
||||
<Compile Include="Contracts\DataMessage.cs" />
|
||||
<Compile Include="Contracts\SettingsConstants.cs" />
|
||||
<Compile Include="Helpers\AuthenticationHelper.cs" />
|
||||
<Compile Include="Helpers\EncryptDecrypt.cs" />
|
||||
<Compile Include="Helpers\Extensions.cs" />
|
||||
<Compile Include="Helpers\HttpClientHelper.cs" />
|
||||
|
@ -81,14 +83,14 @@
|
|||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.IdentityModel.Clients.ActiveDirectory">
|
||||
<Version>3.19.8</Version>
|
||||
<PackageReference Include="Microsoft.Identity.Client">
|
||||
<Version>4.7.1</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Newtonsoft.Json">
|
||||
<Version>11.0.2</Version>
|
||||
<Version>12.0.3</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Polly">
|
||||
<Version>6.1.0</Version>
|
||||
<Version>7.2.0</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Quartz">
|
||||
<Version>3.0.7</Version>
|
||||
|
|
|
@ -6,7 +6,7 @@ namespace RecurringIntegrationsScheduler.Common.Contracts
|
|||
/// <summary>
|
||||
/// Class holding all constant values related to the Odata actions used in this solution
|
||||
/// </summary>
|
||||
public class OdataActionsConstants
|
||||
public static class OdataActionsConstants
|
||||
{
|
||||
public const string GetAzureWriteUrlActionPath = "data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GetAzureWriteUrl";
|
||||
public const string GetExecutionSummaryStatusActionPath = "data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GetExecutionSummaryStatus";
|
||||
|
@ -17,6 +17,8 @@ namespace RecurringIntegrationsScheduler.Common.Contracts
|
|||
public const string ExportToPackageActionPath = "data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.ExportToPackage";
|
||||
public const string ExportFromPackageActionPath = "data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.ExportFromPackage";
|
||||
public const string GetMessageStatusActionPath = "data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GetMessageStatus";
|
||||
public const string GetImportTargetErrorKeysFileUrlPath = "data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GetImportTargetErrorKeysFileUrl";
|
||||
public const string GenerateImportTargetErrorKeysFilePath = "data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GenerateImportTargetErrorKeysFile";
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,7 +8,6 @@ namespace RecurringIntegrationsScheduler.Common.Contracts
|
|||
/// </summary>
|
||||
public static class SettingsConstants
|
||||
{
|
||||
#region Common settings
|
||||
/// <summary>
|
||||
/// The AOS URI
|
||||
/// </summary>
|
||||
|
@ -55,10 +54,15 @@ namespace RecurringIntegrationsScheduler.Common.Contracts
|
|||
public const string ActivityId = "ActivityId";
|
||||
|
||||
/// <summary>
|
||||
/// The execution interval
|
||||
/// The delay between files processing
|
||||
/// </summary>
|
||||
public const string Interval = "Interval";
|
||||
|
||||
/// <summary>
|
||||
/// The delay between status check of export job
|
||||
/// </summary>
|
||||
public const string StatusCheckInterval = "StatusCheckInterval";
|
||||
|
||||
/// <summary>
|
||||
/// The retry count
|
||||
/// </summary>
|
||||
|
@ -124,6 +128,16 @@ namespace RecurringIntegrationsScheduler.Common.Contracts
|
|||
/// </summary>
|
||||
public const string GetMessageStatusActionPath = "GetMessageStatusActionPath";
|
||||
|
||||
/// <summary>
|
||||
/// The relative path to the GenerateImportTargetErrorKeysFile Odata action
|
||||
/// </summary>
|
||||
public const string GenerateImportTargetErrorKeysFilePath = "GenerateImportTargetErrorKeysFilePath";
|
||||
|
||||
/// <summary>
|
||||
/// The relative path to the GetImportTargetErrorKeysFileUrl Odata action
|
||||
/// </summary>
|
||||
public const string GetImportTargetErrorKeysFileUrlPath = "GetImportTargetErrorKeysFileUrlPath";
|
||||
|
||||
/// <summary>
|
||||
/// The download job
|
||||
/// </summary>
|
||||
|
@ -153,9 +167,7 @@ namespace RecurringIntegrationsScheduler.Common.Contracts
|
|||
/// The execution monitor job
|
||||
/// </summary>
|
||||
public const string ExecutionJob = "RecurringIntegrationsScheduler.Job.ExecutionMonitor";
|
||||
#endregion
|
||||
|
||||
#region Upload Job settings
|
||||
/// <summary>
|
||||
/// Input folder
|
||||
/// </summary>
|
||||
|
@ -210,9 +222,7 @@ namespace RecurringIntegrationsScheduler.Common.Contracts
|
|||
/// Reverse order
|
||||
/// </summary>
|
||||
public const string ReverseOrder = "ReverseOrder";
|
||||
#endregion
|
||||
|
||||
#region Processing Job settings
|
||||
/// <summary>
|
||||
/// Processing success folder
|
||||
/// </summary>
|
||||
|
@ -222,9 +232,7 @@ namespace RecurringIntegrationsScheduler.Common.Contracts
|
|||
/// Processing errors folder
|
||||
/// </summary>
|
||||
public const string ProcessingErrorsDir = "ProcessingErrorsDir";
|
||||
#endregion
|
||||
|
||||
#region Download Job settings
|
||||
/// <summary>
|
||||
/// Download success folder
|
||||
/// </summary>
|
||||
|
@ -254,9 +262,7 @@ namespace RecurringIntegrationsScheduler.Common.Contracts
|
|||
/// Upload in order
|
||||
/// </summary>
|
||||
public const string UploadInOrder = "UploadInOrder";
|
||||
#endregion
|
||||
|
||||
#region Import Job settings
|
||||
/// <summary>
|
||||
/// Is execution job present
|
||||
/// </summary>
|
||||
|
@ -282,6 +288,9 @@ namespace RecurringIntegrationsScheduler.Common.Contracts
|
|||
/// </summary>
|
||||
public const string PackageTemplate = "PackageTemplate";
|
||||
|
||||
#endregion
|
||||
/// <summary>
|
||||
/// Get import target error keys file
|
||||
/// </summary>
|
||||
public const string GetImportTargetErrorKeysFile = "GetImportTargetErrorKeysFile";
|
||||
}
|
||||
}
|
|
@ -1,11 +1,12 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using Microsoft.IdentityModel.Clients.ActiveDirectory;
|
||||
using Polly;
|
||||
using Microsoft.Identity.Client;
|
||||
using Polly.Retry;
|
||||
using RecurringIntegrationsScheduler.Common.JobSettings;
|
||||
using System;
|
||||
using System.Net.Http.Headers;
|
||||
using System.Linq;
|
||||
using System.Security;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Common.Helpers
|
||||
|
@ -17,14 +18,14 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
{
|
||||
private readonly Settings _settings;
|
||||
private string _authorizationHeader;
|
||||
private readonly Policy _retryPolicy;
|
||||
private readonly AsyncRetryPolicy _retryPolicy;
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="AuthenticationHelper"/> class.
|
||||
/// </summary>
|
||||
/// <param name="jobSettings">Job settings</param>
|
||||
/// <param name="retryPolicy">Retry policy</param>
|
||||
public AuthenticationHelper(Settings jobSettings, Policy retryPolicy)
|
||||
public AuthenticationHelper(Settings jobSettings, Polly.Retry.AsyncRetryPolicy retryPolicy)
|
||||
{
|
||||
_settings = jobSettings;
|
||||
_retryPolicy = retryPolicy;
|
||||
|
@ -47,32 +48,41 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
if (!string.IsNullOrEmpty(_authorizationHeader) &&
|
||||
(DateTime.UtcNow.AddSeconds(60) < AuthenticationResult.ExpiresOn)) return _authorizationHeader;
|
||||
|
||||
var uri = new UriBuilder(_settings.AzureAuthEndpoint)
|
||||
{
|
||||
Path = _settings.AadTenant
|
||||
};
|
||||
|
||||
var aosUriAuthUri = new Uri(_settings.AosUri);
|
||||
string aosUriAuth = aosUriAuthUri.GetLeftPart(UriPartial.Authority);
|
||||
|
||||
//var authenticationContext = new AuthenticationContext(uri.ToString());
|
||||
var authenticationContext = new AuthenticationContext(uri.ToString(), validateAuthority: false);
|
||||
IConfidentialClientApplication appConfidential;
|
||||
IPublicClientApplication appPublic;
|
||||
var aosUriAuthUri = new Uri(_settings.AosUri);
|
||||
string authority = "https://login.microsoftonline.com/"+ _settings.AadTenant;
|
||||
string[] scopes = new string[] { aosUriAuthUri.AbsoluteUri + ".default" };
|
||||
|
||||
if (_settings.UseServiceAuthentication)
|
||||
{
|
||||
var credentials = new ClientCredential(_settings.AadClientId.ToString(), _settings.AadClientSecret);
|
||||
|
||||
//AuthenticationResult = await _retryPolicy.ExecuteAsync(() => authenticationContext.AcquireTokenAsync(_settings.AosUri, credentials));
|
||||
AuthenticationResult = await _retryPolicy.ExecuteAsync(() => authenticationContext.AcquireTokenAsync(aosUriAuth, credentials));
|
||||
appConfidential = ConfidentialClientApplicationBuilder.Create(_settings.AadClientId.ToString())
|
||||
.WithClientSecret(_settings.AadClientSecret)
|
||||
.WithAuthority(authority)
|
||||
.Build();
|
||||
AuthenticationResult = await _retryPolicy.ExecuteAsync(() => appConfidential.AcquireTokenForClient(scopes).ExecuteAsync());
|
||||
}
|
||||
else
|
||||
{
|
||||
var credentials = new UserPasswordCredential(_settings.UserName, _settings.UserPassword);
|
||||
appPublic = PublicClientApplicationBuilder.Create(_settings.AadClientId.ToString())
|
||||
.WithAuthority(authority)
|
||||
.Build();
|
||||
var accounts = await _retryPolicy.ExecuteAsync(() => appPublic.GetAccountsAsync());
|
||||
|
||||
//AuthenticationResult = await _retryPolicy.ExecuteAsync(() => authenticationContext.AcquireTokenAsync(_settings.AosUri, _settings.AadClientId.ToString(), credentials));
|
||||
AuthenticationResult = await _retryPolicy.ExecuteAsync(() => authenticationContext.AcquireTokenAsync(aosUriAuth, _settings.AadClientId.ToString(), credentials));
|
||||
|
||||
if (accounts.Any())
|
||||
{
|
||||
AuthenticationResult = await _retryPolicy.ExecuteAsync(() => appPublic.AcquireTokenSilent(scopes, accounts.FirstOrDefault()).ExecuteAsync());
|
||||
}
|
||||
else
|
||||
{
|
||||
using var securePassword = new SecureString();
|
||||
foreach (char c in _settings.UserPassword)
|
||||
securePassword.AppendChar(c);
|
||||
|
||||
AuthenticationResult = await _retryPolicy.ExecuteAsync(() => appPublic.AcquireTokenByUsernamePassword(scopes, _settings.UserName, securePassword).ExecuteAsync());
|
||||
}
|
||||
}
|
||||
|
||||
return _authorizationHeader = AuthenticationResult.CreateAuthorizationHeader();
|
||||
}
|
||||
|
||||
|
@ -80,25 +90,12 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
/// Gets valid authentication header
|
||||
/// </summary>
|
||||
/// <returns>
|
||||
/// AuthenticationHeaderValue object
|
||||
/// string
|
||||
/// </returns>
|
||||
public async Task<AuthenticationHeaderValue> GetValidAuthenticationHeader()
|
||||
public async Task<string> GetValidAuthenticationHeader()
|
||||
{
|
||||
_authorizationHeader = await AuthorizationHeader();
|
||||
return ParseAuthenticationHeader(_authorizationHeader);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Parses authentication header.
|
||||
/// </summary>
|
||||
/// <param name="authorizationHeader">Authorization header.</param>
|
||||
/// <returns>AuthenticationHeaderValue object</returns>
|
||||
private static AuthenticationHeaderValue ParseAuthenticationHeader(string authorizationHeader)
|
||||
{
|
||||
var split = authorizationHeader.Split(' ');
|
||||
var scheme = split[0];
|
||||
var parameter = split[1];
|
||||
return new AuthenticationHeaderValue(scheme, parameter);
|
||||
return _authorizationHeader;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -61,11 +61,9 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
throw new DirectoryNotFoundException();
|
||||
|
||||
Directory.CreateDirectory(targetDirectoryName);
|
||||
using (var fileStream = File.Create(filePath))
|
||||
{
|
||||
sourceStream.Seek(0, SeekOrigin.Begin);
|
||||
sourceStream.CopyTo(fileStream);
|
||||
}
|
||||
using var fileStream = File.Create(filePath);
|
||||
sourceStream.Seek(0, SeekOrigin.Begin);
|
||||
sourceStream.CopyTo(fileStream);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -269,10 +267,8 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
}
|
||||
var statusData = JsonConvert.SerializeObject(dataMessage, Formatting.Indented, new StringEnumConverter());
|
||||
|
||||
using (var statusFileMemoryStream = new MemoryStream(Encoding.Default.GetBytes(statusData)))
|
||||
{
|
||||
Create(statusFileMemoryStream, Path.Combine(Path.GetDirectoryName(dataMessage.FullPath) ?? throw new InvalidOperationException(), Path.GetFileNameWithoutExtension(dataMessage.FullPath) + statusFileExtension));
|
||||
}
|
||||
using var statusFileMemoryStream = new MemoryStream(Encoding.Default.GetBytes(statusData));
|
||||
Create(statusFileMemoryStream, Path.Combine(Path.GetDirectoryName(dataMessage.FullPath) ?? throw new InvalidOperationException(), Path.GetFileNameWithoutExtension(dataMessage.FullPath) + statusFileExtension));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -290,10 +286,8 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
var logFilePath = Path.Combine(Path.GetDirectoryName(targetDataMessage.FullPath) ?? throw new InvalidOperationException(), Path.GetFileNameWithoutExtension(targetDataMessage.FullPath) + statusFileExtension);
|
||||
var logData = JsonConvert.SerializeObject(httpResponse, Formatting.Indented, new StringEnumConverter());
|
||||
|
||||
using (var logMemoryStream = new MemoryStream(Encoding.Default.GetBytes(logData)))
|
||||
{
|
||||
Create(logMemoryStream, logFilePath);
|
||||
}
|
||||
using var logMemoryStream = new MemoryStream(Encoding.Default.GetBytes(logData));
|
||||
Create(logMemoryStream, logFilePath);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -325,10 +319,8 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
logData = Resources.Unknown_error;
|
||||
}
|
||||
|
||||
using (var logMemoryStream = new MemoryStream(Encoding.Default.GetBytes(logData)))
|
||||
{
|
||||
Create(logMemoryStream, logFilePath);
|
||||
}
|
||||
using var logMemoryStream = new MemoryStream(Encoding.Default.GetBytes(logData));
|
||||
Create(logMemoryStream, logFilePath);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using Polly;
|
||||
using Polly.Retry;
|
||||
using RecurringIntegrationsScheduler.Common.JobSettings;
|
||||
using RecurringIntegrationsScheduler.Common.Properties;
|
||||
using System;
|
||||
|
@ -22,20 +22,15 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
private readonly Settings _settings;
|
||||
private readonly HttpClient _httpClient;
|
||||
private readonly AuthenticationHelper _authenticationHelper;
|
||||
private Uri _enqueueUri;
|
||||
private Uri _dequeueUri;
|
||||
private Uri _ackUri;
|
||||
|
||||
private bool _disposed;
|
||||
|
||||
private readonly Policy _retryPolicy;
|
||||
private readonly AsyncRetryPolicy _retryPolicy;
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="HttpClientHelper"/> class.
|
||||
/// </summary>
|
||||
/// <param name="jobSettings">Job settings</param>
|
||||
/// <param name="retryPolicy">Retry policy</param>
|
||||
public HttpClientHelper(Settings jobSettings, Policy retryPolicy)
|
||||
public HttpClientHelper(Settings jobSettings, Polly.Retry.AsyncRetryPolicy retryPolicy)
|
||||
{
|
||||
_settings = jobSettings;
|
||||
_retryPolicy = retryPolicy;
|
||||
|
@ -67,7 +62,7 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
public async Task<HttpResponseMessage> PostStreamRequestAsync(Uri uri, Stream bodyStream, string externalCorrelationHeaderValue = null)
|
||||
{
|
||||
_httpClient.DefaultRequestHeaders.Clear();
|
||||
_httpClient.DefaultRequestHeaders.Authorization = await _authenticationHelper.GetValidAuthenticationHeader();
|
||||
_httpClient.DefaultRequestHeaders.Add("Authorization", await _authenticationHelper.GetValidAuthenticationHeader());
|
||||
|
||||
// Add external correlation id header if specified and valid
|
||||
if (!string.IsNullOrEmpty(externalCorrelationHeaderValue))
|
||||
|
@ -99,7 +94,7 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
public async Task<HttpResponseMessage> PostStringRequestAsync(Uri uri, string bodyString, string externalCorrelationHeaderValue = null)
|
||||
{
|
||||
_httpClient.DefaultRequestHeaders.Clear();
|
||||
_httpClient.DefaultRequestHeaders.Authorization = await _authenticationHelper.GetValidAuthenticationHeader();
|
||||
_httpClient.DefaultRequestHeaders.Add("Authorization", await _authenticationHelper.GetValidAuthenticationHeader());
|
||||
_httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
|
||||
|
||||
// Add external correlation id header if specified and valid
|
||||
|
@ -133,7 +128,7 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
_httpClient.DefaultRequestHeaders.Clear();
|
||||
if(addAuthorization)
|
||||
{
|
||||
_httpClient.DefaultRequestHeaders.Authorization = await _authenticationHelper.GetValidAuthenticationHeader();
|
||||
_httpClient.DefaultRequestHeaders.Add("Authorization", await _authenticationHelper.GetValidAuthenticationHeader());
|
||||
}
|
||||
return await _retryPolicy.ExecuteAsync(() => _httpClient.GetAsync(uri));
|
||||
}
|
||||
|
@ -144,32 +139,29 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
/// <returns>
|
||||
/// Data job enqueue request Uri
|
||||
/// </returns>
|
||||
public Uri GetEnqueueUri()
|
||||
public Uri GetEnqueueUri(string legalEntity = null)
|
||||
{
|
||||
if (_enqueueUri != null)
|
||||
return _enqueueUri;
|
||||
var uploadSettings = _settings as UploadJobSettings;
|
||||
var enqueueUri = new UriBuilder(GetAosRequestUri("api/connector/enqueue/" + uploadSettings.ActivityId));
|
||||
|
||||
if (_settings is UploadJobSettings uploadSettings)
|
||||
if (!string.IsNullOrEmpty(legalEntity))
|
||||
{
|
||||
var enqueueUri = new UriBuilder(GetAosRequestUri("api/connector/enqueue/" + uploadSettings.ActivityId));
|
||||
|
||||
if (uploadSettings.IsDataPackage)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(uploadSettings.Company))
|
||||
enqueueUri.Query = "company=" + uploadSettings.Company;
|
||||
}
|
||||
else // Individual file
|
||||
{
|
||||
// entity name is required
|
||||
var enqueueQuery = "entity=" + uploadSettings.EntityName;
|
||||
// Append company if it is specified
|
||||
if (!string.IsNullOrEmpty(uploadSettings.Company))
|
||||
enqueueQuery += "&company=" + uploadSettings.Company;
|
||||
enqueueUri.Query = enqueueQuery;
|
||||
}
|
||||
return _enqueueUri = enqueueUri.Uri;
|
||||
enqueueUri.Query = "company=" + legalEntity;
|
||||
}
|
||||
return null;
|
||||
else
|
||||
{
|
||||
if (!string.IsNullOrEmpty(uploadSettings.Company))
|
||||
{
|
||||
enqueueUri.Query = "company=" + uploadSettings.Company;
|
||||
}
|
||||
}
|
||||
|
||||
if (!uploadSettings.IsDataPackage)// Individual file
|
||||
{
|
||||
// entity name is required
|
||||
enqueueUri.Query += "entity=" + uploadSettings.EntityName;
|
||||
}
|
||||
return enqueueUri.Uri;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -180,15 +172,8 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
/// </returns>
|
||||
public Uri GetDequeueUri()
|
||||
{
|
||||
if (_dequeueUri != null)
|
||||
return _dequeueUri;
|
||||
|
||||
if (_settings is DownloadJobSettings downloadSettings)
|
||||
{
|
||||
var dequeueUri = new UriBuilder(GetAosRequestUri("api/connector/dequeue/" + downloadSettings.ActivityId));
|
||||
return _dequeueUri = dequeueUri.Uri;
|
||||
}
|
||||
return null;
|
||||
var downloadSettings = _settings as DownloadJobSettings;
|
||||
return new UriBuilder(GetAosRequestUri("api/connector/dequeue/" + downloadSettings.ActivityId)).Uri;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -199,15 +184,8 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
/// </returns>
|
||||
public Uri GetAckUri()
|
||||
{
|
||||
if (_ackUri != null)
|
||||
return _ackUri;
|
||||
|
||||
if (_settings is DownloadJobSettings downloadSettings)
|
||||
{
|
||||
var acknowledgeUri = new UriBuilder(GetAosRequestUri("api/connector/ack/" + downloadSettings.ActivityId));
|
||||
return _ackUri = acknowledgeUri.Uri;
|
||||
}
|
||||
return null;
|
||||
var downloadSettings = _settings as DownloadJobSettings;
|
||||
return new UriBuilder(GetAosRequestUri("api/connector/ack/" + downloadSettings.ActivityId)).Uri;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -219,15 +197,12 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
/// </returns>
|
||||
public Uri GetJobStatusUri(string jobId)
|
||||
{
|
||||
if (_settings is ProcessingJobSettings processingJobSettings)
|
||||
var processingJobSettings = _settings as ProcessingJobSettings;
|
||||
var jobStatusUri = new UriBuilder(GetAosRequestUri("api/connector/jobstatus/" + processingJobSettings.ActivityId))
|
||||
{
|
||||
var jobStatusUri = new UriBuilder(GetAosRequestUri("api/connector/jobstatus/" + processingJobSettings.ActivityId))
|
||||
{
|
||||
Query = "jobId=" + jobId.Replace(@"""", "")
|
||||
};
|
||||
return jobStatusUri.Uri;
|
||||
}
|
||||
return null;
|
||||
Query = "jobId=" + jobId.Replace(@"""", "")
|
||||
};
|
||||
return jobStatusUri.Uri;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -469,15 +444,73 @@ namespace RecurringIntegrationsScheduler.Common.Helpers
|
|||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Generate error keys file for data entity import
|
||||
/// </summary>
|
||||
/// <param name="executionId">Execution Id</param>
|
||||
/// <param name="entityName">Entity name</param>
|
||||
/// <returns></returns>
|
||||
public async Task<bool> GenerateImportTargetErrorKeysFile(string executionId, string entityName)
|
||||
{
|
||||
var requestUri = GetAosRequestUri(_settings.GenerateImportTargetErrorKeysFilePath);
|
||||
|
||||
var parameters = new
|
||||
{
|
||||
executionId,
|
||||
entityName
|
||||
};
|
||||
string parametersJson = JsonConvert.SerializeObject(parameters, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto });
|
||||
var response = await PostStringRequestAsync(requestUri, parametersJson);
|
||||
if (response.IsSuccessStatusCode)
|
||||
{
|
||||
string result = response.Content.ReadAsStringAsync().Result;
|
||||
JObject jsonResponse = (JObject)JsonConvert.DeserializeObject(result);
|
||||
return Convert.ToBoolean(jsonResponse["value"].ToString());
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get error keys file URL for data entity import
|
||||
/// </summary>
|
||||
/// <param name="executionId">Execution Id</param>
|
||||
/// <param name="entityName">Entity name</param>
|
||||
/// <returns></returns>
|
||||
public async Task<string> GetImportTargetErrorKeysFileUrl(string executionId, string entityName)
|
||||
{
|
||||
var requestUri = GetAosRequestUri(_settings.GetImportTargetErrorKeysFileUrlPath);
|
||||
|
||||
var parameters = new
|
||||
{
|
||||
executionId,
|
||||
entityName
|
||||
};
|
||||
string parametersJson = JsonConvert.SerializeObject(parameters, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto });
|
||||
var response = await PostStringRequestAsync(requestUri, parametersJson);
|
||||
if (response.IsSuccessStatusCode)
|
||||
{
|
||||
string result = response.Content.ReadAsStringAsync().Result;
|
||||
JObject jsonResponse = (JObject)JsonConvert.DeserializeObject(result);
|
||||
return jsonResponse["value"].ToString();
|
||||
}
|
||||
else
|
||||
{
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
private Uri GetAosRequestUri(string requestRelativePath)
|
||||
{
|
||||
var aosUri = new Uri(_settings.AosUri);
|
||||
var builder = new UriBuilder(aosUri)
|
||||
{
|
||||
Path = string.Concat(aosUri.AbsolutePath.TrimEnd('/'), "/", requestRelativePath.TrimStart('/'))
|
||||
};
|
||||
return builder.Uri;
|
||||
}
|
||||
{
|
||||
var aosUri = new Uri(_settings.AosUri);
|
||||
var builder = new UriBuilder(aosUri)
|
||||
{
|
||||
Path = string.Concat(aosUri.AbsolutePath.TrimEnd('/'), "/", requestRelativePath.TrimStart('/'))
|
||||
};
|
||||
return builder.Uri;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Dispose
|
||||
|
|
|
@ -84,6 +84,12 @@ namespace RecurringIntegrationsScheduler.Common.JobSettings
|
|||
{
|
||||
throw new JobExecutionException(string.Format(CultureInfo.InvariantCulture, Resources.Extension_of_status_files_is_missing_in_job_configuration));
|
||||
}
|
||||
|
||||
GetImportTargetErrorKeysFile = Convert.ToBoolean(dataMap.GetString(SettingsConstants.GetImportTargetErrorKeysFile));
|
||||
|
||||
PackageTemplate = dataMap.GetString(SettingsConstants.PackageTemplate);
|
||||
|
||||
StatusCheckInterval = dataMap.GetInt(SettingsConstants.StatusCheckInterval);
|
||||
}
|
||||
|
||||
#region Members
|
||||
|
@ -120,6 +126,30 @@ namespace RecurringIntegrationsScheduler.Common.JobSettings
|
|||
/// </value>
|
||||
public string StatusFileExtension { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets a value indicating whether to download [error keys file].
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// <c>true</c> if [GetImportTargetErrorKeysFile] is set otherwise, <c>false</c>.
|
||||
/// </value>
|
||||
public bool GetImportTargetErrorKeysFile { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Package template location.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// Package template location.
|
||||
/// </value>
|
||||
public string PackageTemplate { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets delay between status check.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// Delay between status checks.
|
||||
/// </value>
|
||||
public int StatusCheckInterval { get; private set; }
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
|
@ -81,6 +81,12 @@ namespace RecurringIntegrationsScheduler.Common.JobSettings
|
|||
{
|
||||
throw new JobExecutionException(string.Format(CultureInfo.InvariantCulture, Resources.Company_is_missing_in_job_configuration));
|
||||
}
|
||||
|
||||
StatusCheckInterval = dataMap.GetInt(SettingsConstants.StatusCheckInterval);
|
||||
if (StatusCheckInterval < 1) //Default status check interval is 1 second.
|
||||
{
|
||||
StatusCheckInterval = 1;
|
||||
}
|
||||
}
|
||||
|
||||
#region Members
|
||||
|
@ -141,6 +147,14 @@ namespace RecurringIntegrationsScheduler.Common.JobSettings
|
|||
/// </value>
|
||||
public string Company { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets delay between status check.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// Delay between status checks.
|
||||
/// </value>
|
||||
public int StatusCheckInterval { get; private set; }
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
|
@ -242,7 +242,7 @@ namespace RecurringIntegrationsScheduler.Common.JobSettings
|
|||
/// Package template location.
|
||||
/// </value>
|
||||
public string PackageTemplate { get; private set; }
|
||||
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
|
@ -92,6 +92,8 @@ namespace RecurringIntegrationsScheduler.Common.JobSettings
|
|||
{
|
||||
throw new JobExecutionException(string.Format(CultureInfo.InvariantCulture, Resources.Extension_of_status_files_is_missing_in_job_configuration));
|
||||
}
|
||||
|
||||
StatusCheckInterval = dataMap.GetInt(SettingsConstants.StatusCheckInterval);
|
||||
}
|
||||
|
||||
#region Members
|
||||
|
@ -136,6 +138,14 @@ namespace RecurringIntegrationsScheduler.Common.JobSettings
|
|||
/// </value>
|
||||
public string StatusFileExtension { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets delay between status check.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// Delay between status checks.
|
||||
/// </value>
|
||||
public int StatusCheckInterval { get; private set; }
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
|
@ -80,9 +80,9 @@ namespace RecurringIntegrationsScheduler.Common.JobSettings
|
|||
}
|
||||
|
||||
Interval = dataMap.GetInt(SettingsConstants.Interval);
|
||||
if (Interval < 100) //Default execution interval is 100 ms.
|
||||
if (Interval < 1) //Default execution interval is 1 second.
|
||||
{
|
||||
Interval = 100;
|
||||
Interval = 1;
|
||||
}
|
||||
|
||||
RetryCount = dataMap.GetInt(SettingsConstants.RetryCount);
|
||||
|
@ -154,6 +154,18 @@ namespace RecurringIntegrationsScheduler.Common.JobSettings
|
|||
{
|
||||
GetMessageStatusActionPath = OdataActionsConstants.GetMessageStatusActionPath;
|
||||
}
|
||||
|
||||
GetImportTargetErrorKeysFileUrlPath = dataMap.GetString(SettingsConstants.GetImportTargetErrorKeysFileUrlPath);
|
||||
if (string.IsNullOrEmpty(GetImportTargetErrorKeysFileUrlPath))
|
||||
{
|
||||
GetImportTargetErrorKeysFileUrlPath = OdataActionsConstants.GetImportTargetErrorKeysFileUrlPath;
|
||||
}
|
||||
|
||||
GenerateImportTargetErrorKeysFilePath = dataMap.GetString(SettingsConstants.GenerateImportTargetErrorKeysFilePath);
|
||||
if (string.IsNullOrEmpty(GenerateImportTargetErrorKeysFilePath))
|
||||
{
|
||||
GenerateImportTargetErrorKeysFilePath = OdataActionsConstants.GenerateImportTargetErrorKeysFilePath;
|
||||
}
|
||||
}
|
||||
|
||||
#region Members
|
||||
|
@ -334,6 +346,23 @@ namespace RecurringIntegrationsScheduler.Common.JobSettings
|
|||
/// </value>
|
||||
public string GetMessageStatusActionPath { get; private set; } = OdataActionsConstants.GetMessageStatusActionPath;
|
||||
|
||||
/// <summary>
|
||||
/// Get the GetImportTargetErrorKeysFileUrl Odata action relative path
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The relative path to the GetImportTargetErrorKeysFileUrl Odata action
|
||||
/// </value>
|
||||
public string GetImportTargetErrorKeysFileUrlPath { get; private set; } = OdataActionsConstants.GetImportTargetErrorKeysFileUrlPath;
|
||||
|
||||
/// <summary>
|
||||
/// Get the GenerateImportTargetErrorKeysFile Odata action relative path
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The relative path to the GenerateImportTargetErrorKeysFile Odata action
|
||||
/// </value>
|
||||
public string GenerateImportTargetErrorKeysFilePath { get; private set; } = OdataActionsConstants.GenerateImportTargetErrorKeysFilePath;
|
||||
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
|
@ -71,7 +71,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
/// <summary>
|
||||
/// Retry policy for HTTP operations
|
||||
/// </summary>
|
||||
private Policy _retryPolicyForHttp;
|
||||
private Polly.Retry.AsyncRetryPolicy _retryPolicyForHttp;
|
||||
|
||||
/// <summary>
|
||||
/// Called by the <see cref="T:Quartz.IScheduler" /> when a <see cref="T:Quartz.ITrigger" />
|
||||
|
@ -142,7 +142,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
}
|
||||
else
|
||||
{
|
||||
Log.Error("Uknown exception", ex);
|
||||
Log.Error("Unknown exception", ex);
|
||||
}
|
||||
|
||||
while (ex.InnerException != null)
|
||||
|
@ -207,7 +207,6 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
throw new JobExecutionException(string.Format(CultureInfo.InvariantCulture, string.Format(Resources.Job_0_Failure_response_Status_1_2_Reason_3, _context.JobDetail.Key, response.StatusCode, response.StatusCode, response.ReasonPhrase)));
|
||||
|
||||
}
|
||||
System.Threading.Thread.Sleep(_settings.Interval);
|
||||
}
|
||||
if (!DownloadQueue.IsEmpty)
|
||||
{
|
||||
|
@ -226,7 +225,6 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
/// <exception cref="System.Exception"></exception>
|
||||
private async Task ProcessDownloadQueue()
|
||||
{
|
||||
//Stream downloadedStream = null;
|
||||
var fileCount = 0;
|
||||
while (DownloadQueue.TryDequeue(out DataMessage dataMessage))
|
||||
{
|
||||
|
@ -237,7 +235,12 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
|
||||
using (var downloadedStream = await response.Content.ReadAsStreamAsync())
|
||||
{
|
||||
if(fileCount > 0 && _settings.Interval > 0) //Only delay after first file and never after last.
|
||||
{
|
||||
System.Threading.Thread.Sleep(_settings.Interval * 1000);
|
||||
}
|
||||
fileCount++;
|
||||
|
||||
//Downloaded file has no file name. We need to create it.
|
||||
//It will be timestamp followed by number in this download batch.
|
||||
var fileName = $"{DateTime.Now:yyyy-MM-dd_HH-mm-ss-ffff}-{fileCount:D6}";
|
||||
|
@ -256,8 +259,6 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
|
||||
if (_settings.UnzipPackage)
|
||||
_retryPolicyForIo.Execute(() => FileOperationsHelper.UnzipPackage(dataMessage.FullPath, _settings.DeletePackage, _settings.AddTimestamp));
|
||||
|
||||
System.Threading.Thread.Sleep(_settings.Interval);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RecurringIntegrationsScheduler.Job</RootNamespace>
|
||||
<AssemblyName>RecurringIntegrationsScheduler.Job.Download</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
|
@ -24,6 +24,7 @@
|
|||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<CodeAnalysisIgnoreGeneratedCode>false</CodeAnalysisIgnoreGeneratedCode>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
@ -33,17 +34,18 @@
|
|||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.11.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Polly, Version=6.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.6.1.0\lib\netstandard2.0\Polly.dll</HintPath>
|
||||
<Reference Include="Polly, Version=7.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.7.2.0\lib\net472\Polly.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.3.0.7\lib\net452\Quartz.dll</HintPath>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="log4net" version="2.0.8" targetFramework="net46" />
|
||||
<package id="Newtonsoft.Json" version="11.0.2" targetFramework="net46" />
|
||||
<package id="Polly" version="6.1.0" targetFramework="net461" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net472" />
|
||||
<package id="Polly" version="7.2.0" targetFramework="net472" />
|
||||
<package id="Quartz" version="3.0.7" targetFramework="net461" />
|
||||
</packages>
|
|
@ -4,16 +4,20 @@
|
|||
using log4net;
|
||||
using Polly;
|
||||
using Quartz;
|
||||
using Quartz.Util;
|
||||
using RecurringIntegrationsScheduler.Common.Contracts;
|
||||
using RecurringIntegrationsScheduler.Common.Helpers;
|
||||
using RecurringIntegrationsScheduler.Common.JobSettings;
|
||||
using RecurringIntegrationsScheduler.Job.Properties;
|
||||
using System;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.IO.Compression;
|
||||
using System.Net.Http;
|
||||
using System.Threading.Tasks;
|
||||
using System.Xml;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Job
|
||||
{
|
||||
|
@ -62,7 +66,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
/// <summary>
|
||||
/// Retry policy for HTTP operations
|
||||
/// </summary>
|
||||
private Policy _retryPolicyForHttp;
|
||||
private Polly.Retry.AsyncRetryPolicy _retryPolicyForHttp;
|
||||
|
||||
/// <summary>
|
||||
/// Called by the <see cref="T:Quartz.IScheduler" /> when a <see cref="T:Quartz.ITrigger" />
|
||||
|
@ -132,7 +136,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
}
|
||||
else
|
||||
{
|
||||
Log.Error("Uknown exception", ex);
|
||||
Log.Error("Unknown exception", ex);
|
||||
}
|
||||
|
||||
while (ex.InnerException != null)
|
||||
|
@ -177,18 +181,23 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
/// <returns></returns>
|
||||
private async Task ProcessEnqueuedQueue()
|
||||
{
|
||||
var fileCount = 0;
|
||||
_httpClientHelper = new HttpClientHelper(_settings, _retryPolicyForHttp);
|
||||
|
||||
while (EnqueuedJobs.TryDequeue(out DataMessage dataMessage))
|
||||
{
|
||||
if (fileCount > 0 && _settings.StatusCheckInterval > 0) //Only delay after first file and never after last.
|
||||
{
|
||||
System.Threading.Thread.Sleep(_settings.StatusCheckInterval * 1000);
|
||||
}
|
||||
fileCount++;
|
||||
|
||||
// Check status for current item with message id - item.Key
|
||||
var jobStatusDetail = await _httpClientHelper.GetExecutionSummaryStatus(dataMessage.MessageId);
|
||||
|
||||
// If status was found and is not null,
|
||||
if (jobStatusDetail != null)
|
||||
PostProcessMessage(jobStatusDetail, dataMessage);
|
||||
|
||||
System.Threading.Thread.Sleep(_settings.Interval);
|
||||
await PostProcessMessage(jobStatusDetail, dataMessage);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -198,8 +207,11 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
/// </summary>
|
||||
/// <param name="executionStatus">Execution status</param>
|
||||
/// <param name="dataMessage">Name of the file whose status is being processed</param>
|
||||
private void PostProcessMessage(string executionStatus, DataMessage dataMessage)
|
||||
private async Task PostProcessMessage(string executionStatus, DataMessage dataMessage)
|
||||
{
|
||||
if (Log.IsDebugEnabled)
|
||||
Log.DebugFormat(CultureInfo.InvariantCulture,
|
||||
string.Format(Resources.Job_0_ExecutionId_1_status_check_returned_2, _context.JobDetail.Key, dataMessage.MessageId, executionStatus));
|
||||
switch (executionStatus)
|
||||
{
|
||||
case "Succeeded":
|
||||
|
@ -207,7 +219,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
// Move message file and delete processing status file
|
||||
var processingSuccessDestination = Path.Combine(_settings.ProcessingSuccessDir, dataMessage.Name);
|
||||
_retryPolicyForIo.Execute(() => FileOperationsHelper.MoveDataToTarget(dataMessage.FullPath, processingSuccessDestination, true, _settings.StatusFileExtension));
|
||||
CreateLinkToExecutionSummaryPage(dataMessage.MessageId, processingSuccessDestination);
|
||||
await CreateLinkToExecutionSummaryPage(dataMessage.MessageId, processingSuccessDestination);
|
||||
}
|
||||
break;
|
||||
case "Unknown":
|
||||
|
@ -217,7 +229,56 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
{
|
||||
var processingErrorDestination = Path.Combine(_settings.ProcessingErrorsDir, dataMessage.Name);
|
||||
_retryPolicyForIo.Execute(() => FileOperationsHelper.MoveDataToTarget(dataMessage.FullPath, processingErrorDestination, true, _settings.StatusFileExtension));
|
||||
CreateLinkToExecutionSummaryPage(dataMessage.MessageId, processingErrorDestination);
|
||||
await CreateLinkToExecutionSummaryPage(dataMessage.MessageId, processingErrorDestination);
|
||||
if (_settings.GetImportTargetErrorKeysFile)
|
||||
{
|
||||
if (Log.IsDebugEnabled)
|
||||
{
|
||||
Log.DebugFormat(CultureInfo.InvariantCulture, string.Format(Resources.Job_0_Checking_if_error_keys_file_was_generated, _context.JobDetail.Key));
|
||||
}
|
||||
var fileWithManifest = processingErrorDestination;
|
||||
if(!string.IsNullOrEmpty(_settings.PackageTemplate))
|
||||
{
|
||||
fileWithManifest = _settings.PackageTemplate;
|
||||
}
|
||||
var entitiesInPackage = GetEntitiesNamesInPackage(fileWithManifest);
|
||||
foreach(var entity in entitiesInPackage)
|
||||
{
|
||||
if (Log.IsDebugEnabled)
|
||||
{
|
||||
Log.DebugFormat(CultureInfo.InvariantCulture, string.Format(Resources.Job_0_Checking_for_error_keys_for_data_entity_1, _context.JobDetail.Key, entity));
|
||||
}
|
||||
var errorsExist = await _httpClientHelper.GenerateImportTargetErrorKeysFile(dataMessage.MessageId, entity);
|
||||
if (errorsExist)
|
||||
{
|
||||
string errorFileUrl;
|
||||
do
|
||||
{
|
||||
errorFileUrl = await _httpClientHelper.GetImportTargetErrorKeysFileUrl(dataMessage.MessageId, entity);
|
||||
if (errorFileUrl.Length == 0)
|
||||
{
|
||||
System.Threading.Thread.Sleep(_settings.Interval);
|
||||
}
|
||||
}
|
||||
while (string.IsNullOrEmpty(errorFileUrl));
|
||||
|
||||
var response = await _httpClientHelper.GetRequestAsync(new UriBuilder(errorFileUrl).Uri, false);
|
||||
if (!response.IsSuccessStatusCode)
|
||||
throw new JobExecutionException(string.Format(Resources.Job_0_download_of_error_keys_file_failed_1, _context.JobDetail.Key, string.Format($"Status: {response.StatusCode}. Message: {response.Content}")));
|
||||
|
||||
using Stream downloadedStream = await response.Content.ReadAsStreamAsync();
|
||||
var errorsFileName = $"{Path.GetFileNameWithoutExtension(dataMessage.Name)}-{entity}-ErrorKeys-{DateTime.Now:yyyy-MM-dd_HH-mm-ss-ffff}.txt";
|
||||
var errorsFilePath = Path.Combine(_settings.ProcessingErrorsDir, errorsFileName);
|
||||
var dataMessageForErrorsFile = new DataMessage()
|
||||
{
|
||||
FullPath = errorsFilePath,
|
||||
Name = errorsFileName,
|
||||
MessageStatus = MessageStatus.Failed
|
||||
};
|
||||
_retryPolicyForIo.Execute(() => FileOperationsHelper.Create(downloadedStream, dataMessageForErrorsFile.FullPath));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
default: //"NotRun", "Executing"
|
||||
|
@ -225,7 +286,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
}
|
||||
}
|
||||
|
||||
private async void CreateLinkToExecutionSummaryPage(string messageId, string filePath)
|
||||
private async Task CreateLinkToExecutionSummaryPage(string messageId, string filePath)
|
||||
{
|
||||
var directoryName = Path.GetDirectoryName(filePath);
|
||||
if (directoryName == null)
|
||||
|
@ -242,5 +303,46 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
_streamWriter.Flush();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads the Manifest.xml file of the datapackage to get entity names to query for error key file
|
||||
/// </summary>
|
||||
/// <param name="filename">The data package file</param>
|
||||
/// <returns>Entities list</returns>
|
||||
private List<string> GetEntitiesNamesInPackage(string fileName)
|
||||
{
|
||||
if (Log.IsDebugEnabled)
|
||||
{
|
||||
Log.DebugFormat(CultureInfo.InvariantCulture, string.Format(Resources.Job_0_Looking_for_data_entities_in_manifest_file_1, _context.JobDetail.Key, fileName));
|
||||
}
|
||||
|
||||
var enitiesList = new List<string>();
|
||||
|
||||
using (var package = ZipFile.OpenRead(fileName))
|
||||
{
|
||||
foreach (var entry in package.Entries)
|
||||
{
|
||||
if (entry.FullName.Equals("Manifest.xml", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
var manifestPath = Path.Combine(Path.GetTempPath(), $"{_context.JobDetail.Key}-{entry.FullName}");
|
||||
entry.ExtractToFile(manifestPath, true);
|
||||
|
||||
var doc = new XmlDocument();
|
||||
XmlNodeList entities;
|
||||
using (var manifestFile = new StreamReader(manifestPath))
|
||||
{
|
||||
doc.Load(new XmlTextReader(manifestFile) { Namespaces = false });
|
||||
entities = doc.SelectNodes("//EntityName");
|
||||
}
|
||||
|
||||
foreach (XmlNode node in entities)
|
||||
{
|
||||
enitiesList.Add(node.InnerText);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return enitiesList;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -9,7 +9,7 @@
|
|||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RecurringIntegrationsScheduler.Job</RootNamespace>
|
||||
<AssemblyName>RecurringIntegrationsScheduler.Job.ExecutionMonitor</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
|
@ -24,6 +24,7 @@
|
|||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<CodeAnalysisIgnoreGeneratedCode>false</CodeAnalysisIgnoreGeneratedCode>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
@ -33,14 +34,18 @@
|
|||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Polly, Version=6.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.6.1.0\lib\netstandard2.0\Polly.dll</HintPath>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Polly, Version=7.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.7.2.0\lib\net472\Polly.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.3.0.7\lib\net452\Quartz.dll</HintPath>
|
||||
|
@ -48,8 +53,11 @@
|
|||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.IO.Compression" />
|
||||
<Reference Include="System.IO.Compression.FileSystem" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Runtime.Remoting" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\Version.cs">
|
||||
|
|
|
@ -19,7 +19,7 @@ namespace RecurringIntegrationsScheduler.Job.Properties {
|
|||
// class via a tool like ResGen or Visual Studio.
|
||||
// To add or remove a member, edit your .ResX file then rerun ResGen
|
||||
// with the /str option, or rebuild your VS project.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
|
@ -69,6 +69,33 @@ namespace RecurringIntegrationsScheduler.Job.Properties {
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0}. Checking for error keys file for data entity {1}..
|
||||
/// </summary>
|
||||
internal static string Job_0_Checking_for_error_keys_for_data_entity_1 {
|
||||
get {
|
||||
return ResourceManager.GetString("Job_0_Checking_for_error_keys_for_data_entity_1", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0}. Checking if error keys file was generated..
|
||||
/// </summary>
|
||||
internal static string Job_0_Checking_if_error_keys_file_was_generated {
|
||||
get {
|
||||
return ResourceManager.GetString("Job_0_Checking_if_error_keys_file_was_generated", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0} Download of error keys file failed. Exception : {1}.
|
||||
/// </summary>
|
||||
internal static string Job_0_download_of_error_keys_file_failed_1 {
|
||||
get {
|
||||
return ResourceManager.GetString("Job_0_download_of_error_keys_file_failed_1", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0} ended..
|
||||
/// </summary>
|
||||
|
@ -87,6 +114,15 @@ namespace RecurringIntegrationsScheduler.Job.Properties {
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0} ExecutionId: {1} import status check returned: {2}.
|
||||
/// </summary>
|
||||
internal static string Job_0_ExecutionId_1_status_check_returned_2 {
|
||||
get {
|
||||
return ResourceManager.GetString("Job_0_ExecutionId_1_status_check_returned_2", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0}. Failure during moving files. Exception : {1}.
|
||||
/// </summary>
|
||||
|
@ -132,6 +168,15 @@ namespace RecurringIntegrationsScheduler.Job.Properties {
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0}. Looking for data entities in manifest file {1}..
|
||||
/// </summary>
|
||||
internal static string Job_0_Looking_for_data_entities_in_manifest_file_1 {
|
||||
get {
|
||||
return ResourceManager.GetString("Job_0_Looking_for_data_entities_in_manifest_file_1", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0}. Retrying HTTP operation. Exception : {1}.
|
||||
/// </summary>
|
||||
|
|
|
@ -162,4 +162,19 @@
|
|||
<data name="Job_0_was_paused_indefinitely" xml:space="preserve">
|
||||
<value>Job: {0} was paused indefinitely.</value>
|
||||
</data>
|
||||
<data name="Job_0_download_of_error_keys_file_failed_1" xml:space="preserve">
|
||||
<value>Job: {0} Download of error keys file failed. Exception : {1}</value>
|
||||
</data>
|
||||
<data name="Job_0_ExecutionId_1_status_check_returned_2" xml:space="preserve">
|
||||
<value>Job: {0} ExecutionId: {1} import status check returned: {2}</value>
|
||||
</data>
|
||||
<data name="Job_0_Checking_for_error_keys_for_data_entity_1" xml:space="preserve">
|
||||
<value>Job: {0}. Checking for error keys file for data entity {1}.</value>
|
||||
</data>
|
||||
<data name="Job_0_Checking_if_error_keys_file_was_generated" xml:space="preserve">
|
||||
<value>Job: {0}. Checking if error keys file was generated.</value>
|
||||
</data>
|
||||
<data name="Job_0_Looking_for_data_entities_in_manifest_file_1" xml:space="preserve">
|
||||
<value>Job: {0}. Looking for data entities in manifest file {1}.</value>
|
||||
</data>
|
||||
</root>
|
|
@ -1,6 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="log4net" version="2.0.8" targetFramework="net46" />
|
||||
<package id="Polly" version="6.1.0" targetFramework="net461" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net472" />
|
||||
<package id="Polly" version="7.2.0" targetFramework="net472" />
|
||||
<package id="Quartz" version="3.0.7" targetFramework="net461" />
|
||||
</packages>
|
|
@ -51,7 +51,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
/// <summary>
|
||||
/// Retry policy for HTTP operations
|
||||
/// </summary>
|
||||
private Policy _retryPolicyForHttp;
|
||||
private Polly.Retry.AsyncRetryPolicy _retryPolicyForHttp;
|
||||
|
||||
/// <summary>
|
||||
/// Called by the <see cref="T:Quartz.IScheduler" /> when a <see cref="T:Quartz.ITrigger" />
|
||||
|
@ -122,7 +122,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
}
|
||||
else
|
||||
{
|
||||
Log.Error("Uknown exception", ex);
|
||||
Log.Error("Unknown exception", ex);
|
||||
}
|
||||
|
||||
while (ex.InnerException != null)
|
||||
|
@ -134,7 +134,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
}
|
||||
}
|
||||
if (context.Scheduler.SchedulerName != "Private")
|
||||
throw new JobExecutionException(string.Format(Resources.Download_job_0_failed, _context.JobDetail.Key), ex, false);
|
||||
throw new JobExecutionException(string.Format(Resources.Job_0_failed, _context.JobDetail.Key), ex, false);
|
||||
|
||||
if (!Log.IsDebugEnabled)
|
||||
Log.Error(string.Format(Resources.Job_0_thrown_an_error_1, _context.JobDetail.Key, ex.Message));
|
||||
|
@ -159,31 +159,41 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
var attempt = 0;
|
||||
do
|
||||
{
|
||||
if (attempt > 0 && _settings.StatusCheckInterval > 0) //Only delay after first file and never after last.
|
||||
{
|
||||
System.Threading.Thread.Sleep(_settings.StatusCheckInterval * 1000);
|
||||
}
|
||||
attempt++;
|
||||
if(attempt != 1)
|
||||
System.Threading.Thread.Sleep(_settings.Interval);
|
||||
|
||||
executionStatus = await _httpClientHelper.GetExecutionSummaryStatus(executionId);
|
||||
if (Log.IsDebugEnabled)
|
||||
Log.Debug(string.Format(Resources.Job_0_Checking_if_export_is_completed_Try_1_Status_2, _context.JobDetail.Key, attempt, executionStatus));
|
||||
if (attempt == 1000)
|
||||
break;
|
||||
if (attempt == 1000)//TODO hardcoded
|
||||
{
|
||||
throw new Exception(string.Format(Resources.Job_0_Checking_for_status_reached_1_attempts_Status_is_2_Exiting, _context.JobDetail.Key, attempt, executionStatus));
|
||||
}
|
||||
}
|
||||
while ((executionStatus == "NotRun" || executionStatus == "Executing" || executionStatus == "Bad request"));
|
||||
while (executionStatus == "NotRun" || executionStatus == "Executing" || executionStatus == "Bad request");
|
||||
|
||||
if (executionStatus == "Succeeded" || executionStatus == "PartiallySucceeded")
|
||||
{
|
||||
attempt = 0;
|
||||
attempt = 0;//Reset for get url request attempts
|
||||
Uri packageUrl = null;
|
||||
do
|
||||
{
|
||||
if (attempt > 0 && _settings.Interval > 0) //Only delay after first file and never after last.
|
||||
{
|
||||
System.Threading.Thread.Sleep(_settings.Interval * 1000);
|
||||
}
|
||||
attempt++;
|
||||
if (attempt != 1)
|
||||
System.Threading.Thread.Sleep(_settings.Interval);
|
||||
|
||||
packageUrl = await _httpClientHelper.GetExportedPackageUrl(executionId);
|
||||
if (Log.IsDebugEnabled)
|
||||
Log.Debug(string.Format(Resources.Job_0_Trying_to_get_exported_package_URL_Try_1, _context.JobDetail.Key, attempt));
|
||||
if (attempt == 100)
|
||||
break;
|
||||
if (attempt == 100)//TODO hardcoded
|
||||
{
|
||||
throw new Exception(string.Format(Resources.Job_0_Request_to_download_exported_package_reached_1_attempts_Exiting, _context.JobDetail.Key, attempt));
|
||||
}
|
||||
}
|
||||
while (packageUrl == null);
|
||||
|
||||
|
@ -191,21 +201,19 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
if (!response.IsSuccessStatusCode)
|
||||
throw new JobExecutionException(string.Format(Resources.Job_0_Download_failure_1, _context.JobDetail.Key, string.Format($"Status: {response.StatusCode}. Message: {response.Content}")));
|
||||
|
||||
using (Stream downloadedStream = await response.Content.ReadAsStreamAsync())
|
||||
using Stream downloadedStream = await response.Content.ReadAsStreamAsync();
|
||||
var fileName = $"{DateTime.Now:yyyy-MM-dd_HH-mm-ss-ffff}.zip";
|
||||
var successPath = Path.Combine(_settings.DownloadSuccessDir, fileName);
|
||||
var dataMessage = new DataMessage()
|
||||
{
|
||||
var fileName = $"{DateTime.Now:yyyy-MM-dd_HH-mm-ss-ffff}.zip";
|
||||
var successPath = Path.Combine(_settings.DownloadSuccessDir, fileName);
|
||||
var dataMessage = new DataMessage()
|
||||
{
|
||||
FullPath = successPath,
|
||||
Name = fileName,
|
||||
MessageStatus = MessageStatus.Succeeded
|
||||
};
|
||||
_retryPolicyForIo.Execute(() => FileOperationsHelper.Create(downloadedStream, dataMessage.FullPath));
|
||||
FullPath = successPath,
|
||||
Name = fileName,
|
||||
MessageStatus = MessageStatus.Succeeded
|
||||
};
|
||||
_retryPolicyForIo.Execute(() => FileOperationsHelper.Create(downloadedStream, dataMessage.FullPath));
|
||||
|
||||
if (_settings.UnzipPackage)
|
||||
_retryPolicyForIo.Execute(() => FileOperationsHelper.UnzipPackage(dataMessage.FullPath, _settings.DeletePackage, _settings.AddTimestamp));
|
||||
}
|
||||
if (_settings.UnzipPackage)
|
||||
_retryPolicyForIo.Execute(() => FileOperationsHelper.UnzipPackage(dataMessage.FullPath, _settings.DeletePackage, _settings.AddTimestamp));
|
||||
}
|
||||
else if (executionStatus == "Unknown" || executionStatus == "Failed" || executionStatus == "Canceled")
|
||||
{
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RecurringIntegrationsScheduler.Job</RootNamespace>
|
||||
<AssemblyName>RecurringIntegrationsScheduler.Job.Export</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
|
@ -24,6 +24,7 @@
|
|||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<CodeAnalysisIgnoreGeneratedCode>false</CodeAnalysisIgnoreGeneratedCode>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
@ -33,14 +34,15 @@
|
|||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Polly, Version=6.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.6.1.0\lib\netstandard2.0\Polly.dll</HintPath>
|
||||
<Reference Include="Polly, Version=7.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.7.2.0\lib\net472\Polly.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.3.0.7\lib\net452\Quartz.dll</HintPath>
|
||||
|
|
|
@ -19,7 +19,7 @@ namespace RecurringIntegrationsScheduler.Job.Properties {
|
|||
// class via a tool like ResGen or Visual Studio.
|
||||
// To add or remove a member, edit your .ResX file then rerun ResGen
|
||||
// with the /str option, or rebuild your VS project.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
|
@ -60,15 +60,6 @@ namespace RecurringIntegrationsScheduler.Job.Properties {
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Export job: {0} failed.
|
||||
/// </summary>
|
||||
internal static string Download_job_0_failed {
|
||||
get {
|
||||
return ResourceManager.GetString("Download_job_0_failed", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Export execution failed for job: {0}. Execution status: {1}.
|
||||
/// </summary>
|
||||
|
@ -87,6 +78,15 @@ namespace RecurringIntegrationsScheduler.Job.Properties {
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0}. Checking for status reached {1} attempts. Status is {2}. Exiting....
|
||||
/// </summary>
|
||||
internal static string Job_0_Checking_for_status_reached_1_attempts_Status_is_2_Exiting {
|
||||
get {
|
||||
return ResourceManager.GetString("Job_0_Checking_for_status_reached_1_attempts_Status_is_2_Exiting", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0} Checking if export is completed. Try: {1}. Status: {2}.
|
||||
/// </summary>
|
||||
|
@ -132,6 +132,15 @@ namespace RecurringIntegrationsScheduler.Job.Properties {
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0} failed.
|
||||
/// </summary>
|
||||
internal static string Job_0_failed {
|
||||
get {
|
||||
return ResourceManager.GetString("Job_0_failed", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0}. Failure during acknowledment of file. Exception : {1}.
|
||||
/// </summary>
|
||||
|
@ -204,6 +213,15 @@ namespace RecurringIntegrationsScheduler.Job.Properties {
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0}. Request to download exported package reached {1} attempts. Exiting....
|
||||
/// </summary>
|
||||
internal static string Job_0_Request_to_download_exported_package_reached_1_attempts_Exiting {
|
||||
get {
|
||||
return ResourceManager.GetString("Job_0_Request_to_download_exported_package_reached_1_attempts_Exiting", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Job: {0}. Retrying HTTP operation. Exception : {1}.
|
||||
/// </summary>
|
||||
|
|
|
@ -150,8 +150,8 @@
|
|||
<data name="Job_0_File_dequeued_successfully_Download_location_1" xml:space="preserve">
|
||||
<value>Job: {0}. File dequeued successfully. Download location: {1}</value>
|
||||
</data>
|
||||
<data name="Download_job_0_failed" xml:space="preserve">
|
||||
<value>Export job: {0} failed</value>
|
||||
<data name="Job_0_failed" xml:space="preserve">
|
||||
<value>Job: {0} failed</value>
|
||||
</data>
|
||||
<data name="Job_0_ended" xml:space="preserve">
|
||||
<value>Job: {0} ended.</value>
|
||||
|
@ -186,4 +186,10 @@
|
|||
<data name="Job_0_was_paused_indefinitely" xml:space="preserve">
|
||||
<value>Job: {0} was paused indefinitely.</value>
|
||||
</data>
|
||||
<data name="Job_0_Checking_for_status_reached_1_attempts_Status_is_2_Exiting" xml:space="preserve">
|
||||
<value>Job: {0}. Checking for status reached {1} attempts. Status is {2}. Exiting...</value>
|
||||
</data>
|
||||
<data name="Job_0_Request_to_download_exported_package_reached_1_attempts_Exiting" xml:space="preserve">
|
||||
<value>Job: {0}. Request to download exported package reached {1} attempts. Exiting...</value>
|
||||
</data>
|
||||
</root>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="log4net" version="2.0.8" targetFramework="net46" />
|
||||
<package id="Polly" version="6.1.0" targetFramework="net461" />
|
||||
<package id="Polly" version="7.2.0" targetFramework="net472" />
|
||||
<package id="Quartz" version="3.0.7" targetFramework="net461" />
|
||||
</packages>
|
|
@ -64,7 +64,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
/// <summary>
|
||||
/// Retry policy for HTTP operations
|
||||
/// </summary>
|
||||
private Policy _retryPolicyForHttp;
|
||||
private Polly.Retry.AsyncRetryPolicy _retryPolicyForHttp;
|
||||
|
||||
/// <summary>
|
||||
/// Called by the <see cref="T:Quartz.IScheduler" /> when a <see cref="T:Quartz.ITrigger" />
|
||||
|
@ -135,7 +135,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
}
|
||||
else
|
||||
{
|
||||
Log.Error("Uknown exception", ex);
|
||||
Log.Error("Unknown exception", ex);
|
||||
}
|
||||
|
||||
while (ex.InnerException != null)
|
||||
|
@ -187,7 +187,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
{
|
||||
using (_httpClientHelper = new HttpClientHelper(_settings, _retryPolicyForHttp))
|
||||
{
|
||||
var firstFile = true;
|
||||
var fileCount = 0;
|
||||
string fileNameInPackage = "";
|
||||
FileStream zipToOpen = null;
|
||||
ZipArchive archive = null;
|
||||
|
@ -205,24 +205,23 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
{
|
||||
try
|
||||
{
|
||||
string tempFileName = "";
|
||||
if (!firstFile)
|
||||
if (fileCount > 0 && _settings.Interval > 0) //Only delay after first file and never after last.
|
||||
{
|
||||
System.Threading.Thread.Sleep(_settings.Interval);
|
||||
}
|
||||
else
|
||||
{
|
||||
firstFile = false;
|
||||
System.Threading.Thread.Sleep(_settings.Interval * 1000);
|
||||
}
|
||||
fileCount++;
|
||||
|
||||
var sourceStream = _retryPolicyForIo.Execute(() => FileOperationsHelper.Read(dataMessage.FullPath));
|
||||
if (sourceStream == null) continue;//Nothing to do here
|
||||
|
||||
string tempFileName = "";
|
||||
|
||||
//If we need to "wrap" file in package envelope
|
||||
if (!String.IsNullOrEmpty(_settings.PackageTemplate))
|
||||
if (!string.IsNullOrEmpty(_settings.PackageTemplate))
|
||||
{
|
||||
using (zipToOpen = new FileStream(_settings.PackageTemplate, FileMode.Open))
|
||||
{
|
||||
tempFileName = Path.GetTempFileName();
|
||||
tempFileName = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
|
||||
_retryPolicyForIo.Execute(() => FileOperationsHelper.Create(zipToOpen, tempFileName));
|
||||
var tempZipStream = _retryPolicyForIo.Execute(() => FileOperationsHelper.Read(tempFileName));
|
||||
using (archive = new ZipArchive(tempZipStream, ZipArchiveMode.Update))
|
||||
|
@ -236,15 +235,13 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
}
|
||||
|
||||
// Update Manifest file with the original file name for end-to-end traceability. Use the new file name in the rest of the method.
|
||||
fileNameInPackage = this.UpdateManifestFile(archive, dataMessage, fileNameInPackage);
|
||||
fileNameInPackage = UpdateManifestFile(archive, dataMessage, fileNameInPackage);
|
||||
|
||||
var importedFile = archive.CreateEntry(fileNameInPackage, CompressionLevel.Fastest);
|
||||
using (var entryStream = importedFile.Open())
|
||||
{
|
||||
sourceStream.CopyTo(entryStream);
|
||||
sourceStream.Close();
|
||||
sourceStream.Dispose();
|
||||
}
|
||||
using var entryStream = importedFile.Open();
|
||||
sourceStream.CopyTo(entryStream);
|
||||
sourceStream.Close();
|
||||
sourceStream.Dispose();
|
||||
}
|
||||
sourceStream = _retryPolicyForIo.Execute(() => FileOperationsHelper.Read(tempFileName));
|
||||
}
|
||||
|
@ -254,7 +251,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
|
||||
// Get blob url and id. Returns in json format
|
||||
var response = await _httpClientHelper.GetAzureWriteUrl();
|
||||
if(String.IsNullOrEmpty(response))
|
||||
if(string.IsNullOrEmpty(response))
|
||||
{
|
||||
Log.ErrorFormat(CultureInfo.InvariantCulture, "Method GetAzureWriteUrl returned empty string");
|
||||
continue;
|
||||
|
@ -270,7 +267,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
{
|
||||
sourceStream.Close();
|
||||
sourceStream.Dispose();
|
||||
if (!String.IsNullOrEmpty(_settings.PackageTemplate))
|
||||
if (!string.IsNullOrEmpty(_settings.PackageTemplate))
|
||||
{
|
||||
_retryPolicyForIo.Execute(() => FileOperationsHelper.Delete(tempFileName));
|
||||
}
|
||||
|
@ -349,7 +346,6 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
zipToOpen.Close();
|
||||
zipToOpen.Dispose();
|
||||
}
|
||||
|
||||
archive?.Dispose();
|
||||
}
|
||||
}
|
||||
|
@ -358,26 +354,21 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
|
||||
private string GetFileNameInPackage()
|
||||
{
|
||||
var manifestPath = "";
|
||||
using (var package = ZipFile.OpenRead(_settings.PackageTemplate))
|
||||
using var package = ZipFile.OpenRead(_settings.PackageTemplate);
|
||||
foreach (var entry in package.Entries)
|
||||
{
|
||||
foreach (var entry in package.Entries)
|
||||
if (entry.FullName.Equals("Manifest.xml", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (entry.FullName.Equals("Manifest.xml", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
manifestPath = Path.Combine(Path.GetTempPath(), $"{_context.JobDetail.Key}-{entry.FullName}");
|
||||
entry.ExtractToFile(manifestPath, true);
|
||||
}
|
||||
var manifestPath = Path.Combine(Path.GetTempPath(), $"{_context.JobDetail.Key}-{entry.FullName}");
|
||||
entry.ExtractToFile(manifestPath, true);
|
||||
|
||||
var doc = new XmlDocument();
|
||||
using var manifestFile = new StreamReader(manifestPath);
|
||||
doc.Load(new XmlTextReader(manifestFile) { Namespaces = false });
|
||||
return doc.SelectSingleNode("//InputFilePath[1]")?.InnerText;
|
||||
}
|
||||
}
|
||||
var doc = new XmlDocument();
|
||||
string fileName;
|
||||
using (var manifestFile = new StreamReader(manifestPath))
|
||||
{
|
||||
doc.Load(new XmlTextReader(manifestFile) { Namespaces = false });
|
||||
fileName = doc.SelectSingleNode("//InputFilePath[1]")?.InnerText;
|
||||
}
|
||||
return fileName;
|
||||
return null;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -399,8 +390,8 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
ZipArchiveEntry manifestEntry = archive.GetEntry("Manifest.xml");
|
||||
|
||||
// Save the Manifest.xml as temporary file
|
||||
string tempManifestFileName = Path.GetTempFileName();
|
||||
string tempManifestFileNameNew = Path.GetTempFileName();
|
||||
string tempManifestFileName = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
|
||||
string tempManifestFileNameNew = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
|
||||
|
||||
manifestEntry.ExtractToFile(tempManifestFileName, true);
|
||||
|
||||
|
@ -413,12 +404,10 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
tempXmlDocManifest.SelectSingleNode("//InputFilePath[1]").InnerText = Path.GetFileName(dataMessage.FullPath);
|
||||
|
||||
// Save the document to a file and auto-indent the output.
|
||||
using (XmlTextWriter writer = new XmlTextWriter(tempManifestFileNameNew, null))
|
||||
{
|
||||
writer.Namespaces = false;
|
||||
writer.Formatting = System.Xml.Formatting.Indented;
|
||||
tempXmlDocManifest.Save(writer);
|
||||
}
|
||||
using XmlTextWriter writer = new XmlTextWriter(tempManifestFileNameNew, null);
|
||||
writer.Namespaces = false;
|
||||
writer.Formatting = System.Xml.Formatting.Indented;
|
||||
tempXmlDocManifest.Save(writer);
|
||||
}
|
||||
|
||||
// Delete the Manifest.xml from the archive file
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RecurringIntegrationsScheduler.Job</RootNamespace>
|
||||
<AssemblyName>RecurringIntegrationsScheduler.Job.Import</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
|
@ -24,6 +24,7 @@
|
|||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<CodeAnalysisIgnoreGeneratedCode>false</CodeAnalysisIgnoreGeneratedCode>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
@ -33,17 +34,18 @@
|
|||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.11.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Polly, Version=6.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.6.1.0\lib\netstandard2.0\Polly.dll</HintPath>
|
||||
<Reference Include="Polly, Version=7.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.7.2.0\lib\net472\Polly.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.3.0.7\lib\net452\Quartz.dll</HintPath>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="log4net" version="2.0.8" targetFramework="net46" />
|
||||
<package id="Newtonsoft.Json" version="11.0.2" targetFramework="net46" />
|
||||
<package id="Polly" version="6.1.0" targetFramework="net461" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net472" />
|
||||
<package id="Polly" version="7.2.0" targetFramework="net472" />
|
||||
<package id="Quartz" version="3.0.7" targetFramework="net461" />
|
||||
</packages>
|
|
@ -9,7 +9,7 @@
|
|||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RecurringIntegrationsScheduler.Job</RootNamespace>
|
||||
<AssemblyName>RecurringIntegrationsScheduler.Job.ProcessingMonitor</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
|
@ -24,6 +24,7 @@
|
|||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<CodeAnalysisIgnoreGeneratedCode>false</CodeAnalysisIgnoreGeneratedCode>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
@ -33,17 +34,18 @@
|
|||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.11.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Polly, Version=6.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.6.1.0\lib\netstandard2.0\Polly.dll</HintPath>
|
||||
<Reference Include="Polly, Version=7.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.7.2.0\lib\net472\Polly.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.3.0.7\lib\net452\Quartz.dll</HintPath>
|
||||
|
|
|
@ -62,7 +62,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
/// <summary>
|
||||
/// Retry policy for HTTP operations
|
||||
/// </summary>
|
||||
private Policy _retryPolicyForHttp;
|
||||
private Polly.Retry.AsyncRetryPolicy _retryPolicyForHttp;
|
||||
|
||||
/// <summary>
|
||||
/// Called by the <see cref="T:Quartz.IScheduler" /> when a <see cref="T:Quartz.ITrigger" />
|
||||
|
@ -133,7 +133,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
}
|
||||
else
|
||||
{
|
||||
Log.Error("Uknown exception", ex);
|
||||
Log.Error("Unknown exception", ex);
|
||||
}
|
||||
|
||||
while (ex.InnerException != null)
|
||||
|
@ -176,18 +176,23 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
/// <returns></returns>
|
||||
private async Task ProcessEnqueuedQueue()
|
||||
{
|
||||
var fileCount = 0;
|
||||
_httpClientHelper = new HttpClientHelper(_settings, _retryPolicyForHttp);
|
||||
|
||||
while (EnqueuedJobs.TryDequeue(out DataMessage dataMessage))
|
||||
{
|
||||
if (fileCount > 0 && _settings.StatusCheckInterval > 0) //Only delay after first file and never after last.
|
||||
{
|
||||
System.Threading.Thread.Sleep(_settings.StatusCheckInterval * 1000);
|
||||
}
|
||||
fileCount++;
|
||||
|
||||
// Check status for current item with message id - item.Key
|
||||
var jobStatusDetail = await GetStatus(dataMessage.MessageId);
|
||||
|
||||
// If status was found and is not null,
|
||||
if (jobStatusDetail != null)
|
||||
PostProcessMessage(jobStatusDetail, dataMessage);
|
||||
|
||||
System.Threading.Thread.Sleep(_settings.Interval);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -251,8 +256,11 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
Log.DebugFormat(CultureInfo.InvariantCulture, string.Format(Resources.Job_0_Successfully_received_job_status_for_message_id_1, _context.JobDetail.Key, message));
|
||||
return JsonConvert.DeserializeObject<DataJobStatusDetail>(response.Content.ReadAsStringAsync().Result, new StringEnumConverter());
|
||||
}
|
||||
Log.ErrorFormat(CultureInfo.InvariantCulture, string.Format(Resources.Job_0_data_job_status_check_request_failed_Status_code_1_Reason_2, _context.JobDetail.Key, response.StatusCode, response.ReasonPhrase));
|
||||
return null;
|
||||
else
|
||||
{
|
||||
Log.ErrorFormat(CultureInfo.InvariantCulture, string.Format(Resources.Job_0_data_job_status_check_request_failed_Status_code_1_Reason_2, _context.JobDetail.Key, response.StatusCode, response.ReasonPhrase));
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="log4net" version="2.0.8" targetFramework="net46" />
|
||||
<package id="Newtonsoft.Json" version="11.0.2" targetFramework="net46" />
|
||||
<package id="Polly" version="6.1.0" targetFramework="net461" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net472" />
|
||||
<package id="Polly" version="7.2.0" targetFramework="net472" />
|
||||
<package id="Quartz" version="3.0.7" targetFramework="net461" />
|
||||
</packages>
|
|
@ -9,7 +9,7 @@
|
|||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RecurringIntegrationsScheduler.Job</RootNamespace>
|
||||
<AssemblyName>RecurringIntegrationsScheduler.Job.Upload</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
|
@ -24,6 +24,7 @@
|
|||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<CodeAnalysisIgnoreGeneratedCode>false</CodeAnalysisIgnoreGeneratedCode>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
|
@ -33,14 +34,15 @@
|
|||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Polly, Version=6.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.6.1.0\lib\netstandard2.0\Polly.dll</HintPath>
|
||||
<Reference Include="Polly, Version=7.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.7.2.0\lib\net472\Polly.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.3.0.7\lib\net452\Quartz.dll</HintPath>
|
||||
|
|
|
@ -60,7 +60,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
/// <summary>
|
||||
/// Retry policy for HTTP operations
|
||||
/// </summary>
|
||||
private Policy _retryPolicyForHttp;
|
||||
private Polly.Retry.AsyncRetryPolicy _retryPolicyForHttp;
|
||||
|
||||
/// <summary>
|
||||
/// Called by the <see cref="T:Quartz.IScheduler" /> when a <see cref="T:Quartz.ITrigger" />
|
||||
|
@ -131,7 +131,7 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
}
|
||||
else
|
||||
{
|
||||
Log.Error("Uknown exception", ex);
|
||||
Log.Error("Unknown exception", ex);
|
||||
}
|
||||
|
||||
while (ex.InnerException != null)
|
||||
|
@ -182,20 +182,17 @@ namespace RecurringIntegrationsScheduler.Job
|
|||
{
|
||||
using (_httpClientHelper = new HttpClientHelper(_settings, _retryPolicyForHttp))
|
||||
{
|
||||
var firstFile = true;
|
||||
var fileCount = 0;
|
||||
|
||||
while (InputQueue.TryDequeue(out DataMessage dataMessage))
|
||||
{
|
||||
try
|
||||
{
|
||||
if (!firstFile)
|
||||
if (fileCount > 0 && _settings.Interval > 0) //Only delay after first file and never after last.
|
||||
{
|
||||
System.Threading.Thread.Sleep(_settings.Interval);
|
||||
}
|
||||
else
|
||||
{
|
||||
firstFile = false;
|
||||
System.Threading.Thread.Sleep(_settings.Interval * 1000);
|
||||
}
|
||||
fileCount++;
|
||||
|
||||
var sourceStream = _retryPolicyForIo.Execute(() => FileOperationsHelper.Read(dataMessage.FullPath));
|
||||
if (sourceStream == null) continue;//Nothing to do here
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="log4net" version="2.0.8" targetFramework="net46" />
|
||||
<package id="Polly" version="6.1.0" targetFramework="net461" />
|
||||
<package id="Polly" version="7.2.0" targetFramework="net472" />
|
||||
<package id="Quartz" version="3.0.7" targetFramework="net461" />
|
||||
</packages>
|
|
@ -1,113 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{96BB041A-3FDE-400F-ADDA-9DB19F3274BE}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RecurringIntegrationsScheduler.Common</RootNamespace>
|
||||
<AssemblyName>RecurringIntegrationsScheduler.Common</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\Output\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<CodeAnalysisIgnoreGeneratedCode>false</CodeAnalysisIgnoreGeneratedCode>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\Output\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Microsoft.IdentityModel.Clients.ActiveDirectory, Version=3.19.8.16603, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.IdentityModel.Clients.ActiveDirectory.3.19.8\lib\net45\Microsoft.IdentityModel.Clients.ActiveDirectory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.IdentityModel.Clients.ActiveDirectory.Platform, Version=3.19.8.16603, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.IdentityModel.Clients.ActiveDirectory.3.19.8\lib\net45\Microsoft.IdentityModel.Clients.ActiveDirectory.Platform.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.11.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Polly, Version=6.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.6.1.0\lib\netstandard2.0\Polly.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.3.0.7\lib\net452\Quartz.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.IO.Compression" />
|
||||
<Reference Include="System.IO.Compression.FileSystem" />
|
||||
<Reference Include="System.Linq.Dynamic, Version=1.0.6132.35681, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Linq.Dynamic.1.0.7\lib\net40\System.Linq.Dynamic.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Remoting" />
|
||||
<Reference Include="System.Security" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\Version.cs">
|
||||
<Link>Version.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="Contracts\ContractEnums.cs" />
|
||||
<Compile Include="Contracts\OdataActionsConstants.cs" />
|
||||
<Compile Include="Helpers\FileOperationsHelper.cs" />
|
||||
<Compile Include="JobSettings\ExportJobSettings.cs" />
|
||||
<Compile Include="JobSettings\ImportJobSettings.cs" />
|
||||
<Compile Include="JobSettings\ExecutionJobSettings.cs" />
|
||||
<Compile Include="JobSettings\ProcessingJobSettings.cs" />
|
||||
<Compile Include="JobSettings\DownloadJobSettings.cs" />
|
||||
<Compile Include="JobSettings\UploadJobSettings.cs" />
|
||||
<Compile Include="JobSettings\Settings.cs" />
|
||||
<Compile Include="Contracts\EntityExecutionStatus.cs" />
|
||||
<Compile Include="Contracts\DataJobStatus.cs" />
|
||||
<Compile Include="Contracts\DataJobStatusDetail.cs" />
|
||||
<Compile Include="Contracts\DequeueResponse.cs" />
|
||||
<Compile Include="Contracts\DataMessage.cs" />
|
||||
<Compile Include="Contracts\SettingsConstants.cs" />
|
||||
<Compile Include="Helpers\AuthenticationHelper.cs" />
|
||||
<Compile Include="Helpers\EncryptDecrypt.cs" />
|
||||
<Compile Include="Helpers\Extensions.cs" />
|
||||
<Compile Include="Helpers\HttpClientHelper.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
|
@ -1,166 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0014)about:internet -->
|
||||
|
||||
<html xmlns:msxsl="urn:schemas-microsoft-com:xslt"><head><meta content="en-us" http-equiv="Content-Language" /><meta content="text/html; charset=utf-16" http-equiv="Content-Type" /><title _locID="NuGetUpgradeReportTitle">
|
||||
NuGetMigrationLog
|
||||
</title><style>
|
||||
|
||||
/* Body style, for the entire document */
|
||||
body
|
||||
{
|
||||
background: #F3F3F4;
|
||||
color: #1E1E1F;
|
||||
font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
|
||||
font-size: 12pt;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* Header1 style, used for the main title */
|
||||
h1
|
||||
{
|
||||
padding: 10px 0px 10px 10px;
|
||||
font-size: 21pt;
|
||||
background-color: #E2E2E2;
|
||||
border-bottom: 1px #C1C1C2 solid;
|
||||
color: #201F20;
|
||||
margin: 0;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
/* Header2 style, used for "Overview" and other sections */
|
||||
h2
|
||||
{
|
||||
font-size: 18pt;
|
||||
font-weight: normal;
|
||||
padding: 15px 0 5px 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* Header3 style, used for sub-sections, such as project name */
|
||||
h3
|
||||
{
|
||||
font-weight: normal;
|
||||
font-size: 15pt;
|
||||
margin: 0;
|
||||
padding: 15px 0 5px 0;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.info-text
|
||||
{
|
||||
margin: 0px 0 0.75em 0;
|
||||
}
|
||||
|
||||
/* Color all hyperlinks one color */
|
||||
a
|
||||
{
|
||||
color: #1382CE;
|
||||
}
|
||||
|
||||
/* Table styles */
|
||||
table
|
||||
{
|
||||
border-spacing: 0 0;
|
||||
border-collapse: collapse;
|
||||
font-size: 11pt;
|
||||
}
|
||||
|
||||
table th
|
||||
{
|
||||
background: #E7E7E8;
|
||||
text-align: left;
|
||||
text-decoration: none;
|
||||
font-weight: normal;
|
||||
padding: 3px 6px 3px 6px;
|
||||
}
|
||||
|
||||
table td
|
||||
{
|
||||
vertical-align: top;
|
||||
padding: 3px 6px 5px 5px;
|
||||
margin: 0px;
|
||||
border: 1px solid #E7E7E8;
|
||||
background: #F7F7F8;
|
||||
}
|
||||
|
||||
/* Local link is a style for hyperlinks that link to file:/// content, there are lots so color them as 'normal' text until the user mouse overs */
|
||||
.localLink
|
||||
{
|
||||
color: #1E1E1F;
|
||||
background: #EEEEED;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.localLink:hover
|
||||
{
|
||||
color: #1382CE;
|
||||
background: #FFFF99;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.issueCell
|
||||
{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.packageIssue
|
||||
{
|
||||
margin-left: 25px;
|
||||
}
|
||||
|
||||
/* Padding around the content after the h1 */
|
||||
#content
|
||||
{
|
||||
padding: 0px 20px 20px 20px;
|
||||
}
|
||||
|
||||
.issues table
|
||||
{
|
||||
width: 97%;
|
||||
}
|
||||
|
||||
/* All Icons */
|
||||
.IconSuccessEncoded, .IconInfoEncoded, .IconWarningEncoded, .IconErrorEncoded
|
||||
{
|
||||
min-width:18px;
|
||||
min-height:18px;
|
||||
background-repeat:no-repeat;
|
||||
background-position:center;
|
||||
}
|
||||
|
||||
.IconSuccessEncoded
|
||||
{
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABcElEQVR4Xq2TsUsCURzHv15g8ZJcBWlyiYYgCIWcb9DFRRwMW5TA2c0/QEFwFkxxUQdxVlBwCYWOi6IhWgQhBLHJUCkhLr/BW8S7gvrAg+N+v8/v+x68Z8MGy+XSCyABQAXgBgHGALoASkIIDWSLeLBetdHryMjd5IxQPWT4rn1c/P7+xxp72Cs9m5SZ0Bq2vPnbPFafK2zDvmNHypdC0BPkLlQhxJsCAhQoZwdZU5mwxh720qGo8MzTxTTKZDPCx2HoVzp6lz0Q9tKhyx0kGs8Ny+TkWRKk8lCROwEduhyg9l/6lunOPSfmH3NUH6uQ0KHLAe7JYvJjevm+DAMGJHToKtigE+vwvIidxLamb8IBY9e+C5LiXREkfho3TSd06HJA13/oh6T51MTsfQbHrsMynQ5dDihFjiK8JJAU9AKIWTp76dCVN7HWHrajmUEGvyF9nkbAE6gLIS7kTUyuf2gscLoJrElZo/Mvj+nPz/kLTmfnEwP3tB0AAAAASUVORK5CYII=);
|
||||
}
|
||||
|
||||
.IconInfoEncoded
|
||||
{
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABHElEQVR4Xs2TsUoDQRRF7wwoziokjZUKadInhdhukR9YP8DMX1hYW+QvdsXa/QHBbcXC7W0CamWTQnclFutceIQJwwaWNLlwm5k5d94M76mmaeCrrmsLYOocY12FcxZFUeozCqKqqgYA8uevv1H6VuPxcwlfk5N92KHBxfFeCSAxxswlYAW/Xr989x/mv9gkhtyMDhcAxgzRsp7flj8B/HF1RsMXq+NZMkopaHe7lbKxQUEIGbKsYNoGn969060hZBkQex/W8oRQwsQaW2o3Ago2SVcJUzAgY3N0lTCZZm+zPS8HB51gMmS1DEYyOz9acKO1D8JWTlafKIMxdhvlfdyT94Vv5h7P8Ky7nQzACmhvKq3zk3PjW9asz9D/1oigecsioooAAAAASUVORK5CYII=);
|
||||
}
|
||||
|
||||
.IconWarningEncoded
|
||||
{
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAx0lEQVR4XpWSMQ7CMAxFf4xAyBMLCxMrO8dhaBcuwdCJS3RJBw7SA/QGTCxdWJgiQYWKXJWKIXHIlyw5lqr34tQgEOdcBsCOx5yZK3hCCKdYXneQkh4pEfqzLfu+wVDSyyzFoJjfz9NB+pAF+eizx2Vruts0k15mPgvS6GYvpVtQhB61IB/dk6AF6fS4Ben0uIX5odtFe8Q/eW1KvFeH4e8khT6+gm5B+t3juyDt7n0jpe+CANTd+oTUjN/U3yVaABnSUjFz/gFq44JaVSCXeQAAAABJRU5ErkJggg==);
|
||||
}
|
||||
|
||||
.IconErrorEncoded
|
||||
{
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABQElEQVR4XqWTvUoEQRCE6wYPZUA80AfwAQz23uCMjA7MDRQEIzPBVEyNTQUFIw00vcQTTMzuAh/AxEQQT8HF/3G/oGGnEUGuoNnd6qoZuqltyKEsyzVJq5I6rnUp6SjGeGhESikzzlc1eL7opfuVbrqbU1Zw9NCgtQMaZpY0eNnaaL2fHusvTK5vKu7sjSS1Y4y3QUA6K3e3Mau5UFDyMP7tYF9o8cAHZv68vipoIJg971PZIZ5HiwdvYGGvFVFHmGmZ2MxwmQYPXubPl9Up0tfoMQGetXd6mRbvhBw+boZ6WF7Mbv1+GsHRk0fQmPAH1GfmZirbCfDJ61tw3Px8/8pZsPAG4jlVhcPgZ7adwNWBB68lkRQWFiTgFlbnLY3DGGM7izIJIyT/jjIvEJw6fdJTc6krDzh6aMwMP9bvDH4ADSsa9uSWVJkAAAAASUVORK5CYII=);
|
||||
}
|
||||
|
||||
</style></head><body><h1>
|
||||
NuGet Migration Report - Common</h1><div id="content"><h2 _locID="OverviewTitle">Overview</h2><div class="info-text">Migration to PackageReference was completed successfully. Please build and run your solution to verify that all packages are available.</div><div class="info-text">
|
||||
If you run into any problems, have feedback, questions, or concerns, please
|
||||
<a href="https://github.com/NuGet/Home/issues/">file an issue on the NuGet GitHub repository.</a></div><div class="info-text">
|
||||
Changed files and this report have been backed up here:
|
||||
<a href="C:\Users\tmelissa\source\repos\Recurring-Integrations-Scheduler\MigrationBackup\a8d2b540\Common">C:\Users\tmelissa\source\repos\Recurring-Integrations-Scheduler\MigrationBackup\a8d2b540\Common</a></div><div class="info-text"><a href="https://aka.ms/nuget-pc2pr-migrator-rollback">Help me rollback to packages.config</a></div><h2 _locID="PackagesTitle">Packages processed</h2><h3 _locID="IncludePackagesTitle">Top-level dependencies:</h3><div class="issues"><table><tr><th class="issueCell">Package Id</th><th>Version</th></tr><tr><td class="issueCell"><span>Microsoft.IdentityModel.Clients.ActiveDirectory</span></td><td><span>
|
||||
v3.19.8</span></td></tr><tr><td class="issueCell"><span>Newtonsoft.Json</span></td><td><span>
|
||||
v11.0.2</span></td></tr><tr><td class="issueCell"><span>Polly</span></td><td><span>
|
||||
v6.1.0</span></td></tr><tr><td class="issueCell"><span>Quartz</span></td><td><span>
|
||||
v3.0.7</span></td></tr><tr><td class="issueCell"><span>System.Linq.Dynamic</span></td><td><span>
|
||||
v1.0.7</span></td></tr></table></div><p /><h3 _locID="IncludePackagesTitle">Transitive dependencies:</h3><div class="issues"><table><tr><th class="issueCell">Package Id</th><th>Version</th></tr><tr><td class="issueCell">
|
||||
No transitive dependencies found.
|
||||
</td><td /></tr></table></div><h2 _locID="IssuesTitle">Package compatibility issues</h2><div class="issues"><table><tr><th /><th class="issueCell" _locID="DescriptionTableHeader">Description</th></tr><tr><td class="IconInfoEncoded" /><td class="issueCell">
|
||||
No issues were found.
|
||||
</td></tr></table></div></div></body></html>
|
|
@ -1,8 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Microsoft.IdentityModel.Clients.ActiveDirectory" version="3.19.8" targetFramework="net46" />
|
||||
<package id="Newtonsoft.Json" version="11.0.2" targetFramework="net46" />
|
||||
<package id="Polly" version="6.1.0" targetFramework="net461" />
|
||||
<package id="Quartz" version="3.0.7" targetFramework="net461" />
|
||||
<package id="System.Linq.Dynamic" version="1.0.7" targetFramework="net45" />
|
||||
</packages>
|
|
@ -1,4 +1,4 @@
|
|||
# Recurring Integrations Scheduler
|
||||
# Recurring Integrations Scheduler RIS
|
||||
|
||||
This tool helps to quickly set up and orchestrate file based integration scenarios to and from Dynamics 365 for Finance and Operations. We see this tool to be a good implementation accelerator for use during the implementation phase of the project for data migration, ad hoc file integration needs and to be used as a proof of concept validator among others.
|
||||
|
||||
|
@ -6,7 +6,7 @@ This tool helps to quickly set up and orchestrate file based integration scenari
|
|||
|
||||
Recurring Integrations Scheduler Service is a Windows service that can trigger many integration jobs at predefined schedule. You can schedule jobs and set their recurrence in a very similar way to well-known Operations' batch framework.
|
||||
|
||||
There is six types of integration jobs you can use: Import, Export and Execution monitor as well as Upload, Download and Processing monitor. First three use new Odata actions introduced in Platform Update 5. Three other use Connector API and recurring data jobs.
|
||||
There are six types of integration jobs you can use: Import, Export and Execution monitor as well as Upload, Download and Processing monitor. First three use new Odata actions introduced in Platform Update 5. Three other use Connector API and recurring data jobs.
|
||||
More details in wiki.
|
||||
|
||||
Single Recurring Integrations Scheduler service can work with multiple Operations instances even within different tenants. This enables both production and implementation scenarios where you need to work with multiple non-prod instances. Recurring Integrations Scheduler logs important events to Windows Event Log. It is possible to increase its logging level to log every step for debugging purposes and to trace possible problems.
|
||||
|
|
|
@ -176,6 +176,10 @@
|
|||
<assemblyIdentity name="Quartz" publicKeyToken="f6b8c98a402cc8a4" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.0.7.0" newVersion="3.0.7.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /></startup></configuration>
|
||||
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /></startup></configuration>
|
||||
|
|
До Ширина: | Высота: | Размер: 52 KiB После Ширина: | Высота: | Размер: 52 KiB |
|
@ -51,17 +51,17 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.tableLayoutPanel.Controls.Add(this.textBoxDescription, 1, 2);
|
||||
this.tableLayoutPanel.Controls.Add(this.okButton, 1, 3);
|
||||
this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tableLayoutPanel.Location = new System.Drawing.Point(14, 14);
|
||||
this.tableLayoutPanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.tableLayoutPanel.Location = new System.Drawing.Point(17, 17);
|
||||
this.tableLayoutPanel.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.tableLayoutPanel.Name = "tableLayoutPanel";
|
||||
this.tableLayoutPanel.RowCount = 4;
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 70F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 31F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 31F));
|
||||
this.tableLayoutPanel.Size = new System.Drawing.Size(624, 407);
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 37F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 37F));
|
||||
this.tableLayoutPanel.Size = new System.Drawing.Size(763, 488);
|
||||
this.tableLayoutPanel.TabIndex = 0;
|
||||
//
|
||||
// logoPictureBox
|
||||
|
@ -69,22 +69,22 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.logoPictureBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.logoPictureBox.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.logoPictureBox.Image = ((System.Drawing.Image)(resources.GetObject("logoPictureBox.Image")));
|
||||
this.logoPictureBox.Location = new System.Drawing.Point(4, 5);
|
||||
this.logoPictureBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.logoPictureBox.Location = new System.Drawing.Point(5, 6);
|
||||
this.logoPictureBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.logoPictureBox.Name = "logoPictureBox";
|
||||
this.tableLayoutPanel.SetRowSpan(this.logoPictureBox, 4);
|
||||
this.logoPictureBox.Size = new System.Drawing.Size(197, 397);
|
||||
this.logoPictureBox.Size = new System.Drawing.Size(241, 476);
|
||||
this.logoPictureBox.TabIndex = 12;
|
||||
this.logoPictureBox.TabStop = false;
|
||||
//
|
||||
// labelProductName
|
||||
//
|
||||
this.labelProductName.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.labelProductName.Location = new System.Drawing.Point(214, 0);
|
||||
this.labelProductName.Margin = new System.Windows.Forms.Padding(9, 0, 4, 0);
|
||||
this.labelProductName.MaximumSize = new System.Drawing.Size(0, 26);
|
||||
this.labelProductName.Location = new System.Drawing.Point(262, 0);
|
||||
this.labelProductName.Margin = new System.Windows.Forms.Padding(11, 0, 5, 0);
|
||||
this.labelProductName.MaximumSize = new System.Drawing.Size(0, 31);
|
||||
this.labelProductName.Name = "labelProductName";
|
||||
this.labelProductName.Size = new System.Drawing.Size(406, 26);
|
||||
this.labelProductName.Size = new System.Drawing.Size(496, 31);
|
||||
this.labelProductName.TabIndex = 19;
|
||||
this.labelProductName.Text = "Recurring Integrations Scheduler";
|
||||
this.labelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
|
@ -92,11 +92,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// labelVersion
|
||||
//
|
||||
this.labelVersion.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.labelVersion.Location = new System.Drawing.Point(214, 40);
|
||||
this.labelVersion.Margin = new System.Windows.Forms.Padding(9, 0, 4, 0);
|
||||
this.labelVersion.MaximumSize = new System.Drawing.Size(0, 26);
|
||||
this.labelVersion.Location = new System.Drawing.Point(262, 48);
|
||||
this.labelVersion.Margin = new System.Windows.Forms.Padding(11, 0, 5, 0);
|
||||
this.labelVersion.MaximumSize = new System.Drawing.Size(0, 31);
|
||||
this.labelVersion.Name = "labelVersion";
|
||||
this.labelVersion.Size = new System.Drawing.Size(406, 26);
|
||||
this.labelVersion.Size = new System.Drawing.Size(496, 31);
|
||||
this.labelVersion.TabIndex = 0;
|
||||
this.labelVersion.Text = "Version 1.0.0.0";
|
||||
this.labelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
|
@ -104,13 +104,13 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// textBoxDescription
|
||||
//
|
||||
this.textBoxDescription.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxDescription.Location = new System.Drawing.Point(214, 85);
|
||||
this.textBoxDescription.Margin = new System.Windows.Forms.Padding(9, 5, 4, 5);
|
||||
this.textBoxDescription.Location = new System.Drawing.Point(262, 102);
|
||||
this.textBoxDescription.Margin = new System.Windows.Forms.Padding(11, 6, 5, 6);
|
||||
this.textBoxDescription.Multiline = true;
|
||||
this.textBoxDescription.Name = "textBoxDescription";
|
||||
this.textBoxDescription.ReadOnly = true;
|
||||
this.textBoxDescription.ScrollBars = System.Windows.Forms.ScrollBars.Both;
|
||||
this.textBoxDescription.Size = new System.Drawing.Size(406, 274);
|
||||
this.textBoxDescription.Size = new System.Drawing.Size(496, 329);
|
||||
this.textBoxDescription.TabIndex = 23;
|
||||
this.textBoxDescription.TabStop = false;
|
||||
this.textBoxDescription.Text = resources.GetString("textBoxDescription.Text");
|
||||
|
@ -119,26 +119,26 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.okButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.okButton.Location = new System.Drawing.Point(508, 370);
|
||||
this.okButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.okButton.Location = new System.Drawing.Point(621, 444);
|
||||
this.okButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.okButton.Name = "okButton";
|
||||
this.okButton.Size = new System.Drawing.Size(112, 32);
|
||||
this.okButton.Size = new System.Drawing.Size(137, 38);
|
||||
this.okButton.TabIndex = 24;
|
||||
this.okButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.OK;
|
||||
//
|
||||
// AboutBox
|
||||
//
|
||||
this.AcceptButton = this.okButton;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(11F, 24F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(652, 435);
|
||||
this.ClientSize = new System.Drawing.Size(797, 522);
|
||||
this.Controls.Add(this.tableLayoutPanel);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "AboutBox";
|
||||
this.Padding = new System.Windows.Forms.Padding(14);
|
||||
this.Padding = new System.Windows.Forms.Padding(17, 17, 17, 17);
|
||||
this.ShowIcon = false;
|
||||
this.ShowInTaskbar = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
|
|
|
@ -32,6 +32,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DownloadJob));
|
||||
this.jobDetailsGroupBox = new System.Windows.Forms.GroupBox();
|
||||
this.intervalLabel = new System.Windows.Forms.Label();
|
||||
this.numericUpDownInterval = new System.Windows.Forms.NumericUpDown();
|
||||
this.deletePackageCheckBox = new System.Windows.Forms.CheckBox();
|
||||
this.addTimestampCheckBox = new System.Windows.Forms.CheckBox();
|
||||
this.unzipCheckBox = new System.Windows.Forms.CheckBox();
|
||||
|
@ -92,6 +94,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.addJobButton = new System.Windows.Forms.Button();
|
||||
this.cancelButton = new System.Windows.Forms.Button();
|
||||
this.jobDetailsGroupBox.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.numericUpDownInterval)).BeginInit();
|
||||
this.axDetailsGroupBox.SuspendLayout();
|
||||
this.authMethodPanel.SuspendLayout();
|
||||
this.recurrenceGroupBox.SuspendLayout();
|
||||
|
@ -105,6 +108,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// jobDetailsGroupBox
|
||||
//
|
||||
this.jobDetailsGroupBox.Controls.Add(this.intervalLabel);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.numericUpDownInterval);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.deletePackageCheckBox);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.addTimestampCheckBox);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.unzipCheckBox);
|
||||
|
@ -121,22 +126,45 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.jobDetailsGroupBox.Controls.Add(this.jobGroupLabel);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.jobName);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.jobNameLabel);
|
||||
this.jobDetailsGroupBox.Location = new System.Drawing.Point(20, 20);
|
||||
this.jobDetailsGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobDetailsGroupBox.Location = new System.Drawing.Point(24, 24);
|
||||
this.jobDetailsGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobDetailsGroupBox.Name = "jobDetailsGroupBox";
|
||||
this.jobDetailsGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobDetailsGroupBox.Size = new System.Drawing.Size(345, 463);
|
||||
this.jobDetailsGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobDetailsGroupBox.Size = new System.Drawing.Size(422, 639);
|
||||
this.jobDetailsGroupBox.TabIndex = 0;
|
||||
this.jobDetailsGroupBox.TabStop = false;
|
||||
this.jobDetailsGroupBox.Text = "Job details";
|
||||
//
|
||||
// intervalLabel
|
||||
//
|
||||
this.intervalLabel.Location = new System.Drawing.Point(16, 549);
|
||||
this.intervalLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.intervalLabel.Name = "intervalLabel";
|
||||
this.intervalLabel.Size = new System.Drawing.Size(273, 77);
|
||||
this.intervalLabel.TabIndex = 26;
|
||||
this.intervalLabel.Text = "Delay between attempts to download exported files from blob storage (seconds)";
|
||||
//
|
||||
// numericUpDownInterval
|
||||
//
|
||||
this.numericUpDownInterval.Location = new System.Drawing.Point(298, 576);
|
||||
this.numericUpDownInterval.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.numericUpDownInterval.Maximum = new decimal(new int[] {
|
||||
3600,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.numericUpDownInterval.Name = "numericUpDownInterval";
|
||||
this.numericUpDownInterval.Size = new System.Drawing.Size(105, 29);
|
||||
this.numericUpDownInterval.TabIndex = 25;
|
||||
//
|
||||
// deletePackageCheckBox
|
||||
//
|
||||
this.deletePackageCheckBox.AutoSize = true;
|
||||
this.deletePackageCheckBox.Enabled = false;
|
||||
this.deletePackageCheckBox.Location = new System.Drawing.Point(18, 425);
|
||||
this.deletePackageCheckBox.Location = new System.Drawing.Point(22, 510);
|
||||
this.deletePackageCheckBox.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.deletePackageCheckBox.Name = "deletePackageCheckBox";
|
||||
this.deletePackageCheckBox.Size = new System.Drawing.Size(171, 24);
|
||||
this.deletePackageCheckBox.Size = new System.Drawing.Size(203, 29);
|
||||
this.deletePackageCheckBox.TabIndex = 14;
|
||||
this.deletePackageCheckBox.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Delete_package_file;
|
||||
this.deletePackageCheckBox.UseVisualStyleBackColor = true;
|
||||
|
@ -145,9 +173,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.addTimestampCheckBox.AutoSize = true;
|
||||
this.addTimestampCheckBox.Enabled = false;
|
||||
this.addTimestampCheckBox.Location = new System.Drawing.Point(18, 394);
|
||||
this.addTimestampCheckBox.Location = new System.Drawing.Point(22, 473);
|
||||
this.addTimestampCheckBox.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.addTimestampCheckBox.Name = "addTimestampCheckBox";
|
||||
this.addTimestampCheckBox.Size = new System.Drawing.Size(260, 24);
|
||||
this.addTimestampCheckBox.Size = new System.Drawing.Size(315, 29);
|
||||
this.addTimestampCheckBox.TabIndex = 13;
|
||||
this.addTimestampCheckBox.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Make_exported_file_name_unique;
|
||||
this.addTimestampCheckBox.UseVisualStyleBackColor = true;
|
||||
|
@ -155,9 +184,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// unzipCheckBox
|
||||
//
|
||||
this.unzipCheckBox.AutoSize = true;
|
||||
this.unzipCheckBox.Location = new System.Drawing.Point(18, 363);
|
||||
this.unzipCheckBox.Location = new System.Drawing.Point(22, 436);
|
||||
this.unzipCheckBox.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.unzipCheckBox.Name = "unzipCheckBox";
|
||||
this.unzipCheckBox.Size = new System.Drawing.Size(165, 24);
|
||||
this.unzipCheckBox.Size = new System.Drawing.Size(197, 29);
|
||||
this.unzipCheckBox.TabIndex = 12;
|
||||
this.unzipCheckBox.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Unzip_package_file;
|
||||
this.unzipCheckBox.UseVisualStyleBackColor = true;
|
||||
|
@ -168,10 +198,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.useStandardSubfolder.AutoSize = true;
|
||||
this.useStandardSubfolder.Checked = true;
|
||||
this.useStandardSubfolder.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.useStandardSubfolder.Location = new System.Drawing.Point(18, 265);
|
||||
this.useStandardSubfolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.useStandardSubfolder.Location = new System.Drawing.Point(22, 318);
|
||||
this.useStandardSubfolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.useStandardSubfolder.Name = "useStandardSubfolder";
|
||||
this.useStandardSubfolder.Size = new System.Drawing.Size(213, 24);
|
||||
this.useStandardSubfolder.Size = new System.Drawing.Size(253, 29);
|
||||
this.useStandardSubfolder.TabIndex = 8;
|
||||
this.useStandardSubfolder.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Use_default_folder_names;
|
||||
this.useStandardSubfolder.UseVisualStyleBackColor = true;
|
||||
|
@ -182,10 +212,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.errorsFolderBrowserButton.Enabled = false;
|
||||
this.errorsFolderBrowserButton.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.errorsFolderBrowserButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Folder_open_32xMD_exp;
|
||||
this.errorsFolderBrowserButton.Location = new System.Drawing.Point(303, 317);
|
||||
this.errorsFolderBrowserButton.Location = new System.Drawing.Point(370, 380);
|
||||
this.errorsFolderBrowserButton.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.errorsFolderBrowserButton.Name = "errorsFolderBrowserButton";
|
||||
this.errorsFolderBrowserButton.Size = new System.Drawing.Size(36, 40);
|
||||
this.errorsFolderBrowserButton.Size = new System.Drawing.Size(44, 48);
|
||||
this.errorsFolderBrowserButton.TabIndex = 7;
|
||||
this.errorsFolderBrowserButton.TextAlign = System.Drawing.ContentAlignment.TopLeft;
|
||||
this.errorsFolderBrowserButton.UseVisualStyleBackColor = true;
|
||||
|
@ -194,19 +224,19 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// errorsFolder
|
||||
//
|
||||
this.errorsFolder.Enabled = false;
|
||||
this.errorsFolder.Location = new System.Drawing.Point(18, 323);
|
||||
this.errorsFolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.errorsFolder.Location = new System.Drawing.Point(22, 388);
|
||||
this.errorsFolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.errorsFolder.Name = "errorsFolder";
|
||||
this.errorsFolder.Size = new System.Drawing.Size(278, 26);
|
||||
this.errorsFolder.Size = new System.Drawing.Size(339, 29);
|
||||
this.errorsFolder.TabIndex = 6;
|
||||
//
|
||||
// errorsFolderLabel
|
||||
//
|
||||
this.errorsFolderLabel.AutoSize = true;
|
||||
this.errorsFolderLabel.Location = new System.Drawing.Point(14, 297);
|
||||
this.errorsFolderLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.errorsFolderLabel.Location = new System.Drawing.Point(17, 356);
|
||||
this.errorsFolderLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.errorsFolderLabel.Name = "errorsFolderLabel";
|
||||
this.errorsFolderLabel.Size = new System.Drawing.Size(96, 20);
|
||||
this.errorsFolderLabel.Size = new System.Drawing.Size(117, 25);
|
||||
this.errorsFolderLabel.TabIndex = 11;
|
||||
this.errorsFolderLabel.Text = "Errors folder";
|
||||
//
|
||||
|
@ -214,10 +244,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.downloadFolderBrowserButton.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.downloadFolderBrowserButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Folder_open_32xMD_exp;
|
||||
this.downloadFolderBrowserButton.Location = new System.Drawing.Point(303, 222);
|
||||
this.downloadFolderBrowserButton.Location = new System.Drawing.Point(370, 266);
|
||||
this.downloadFolderBrowserButton.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.downloadFolderBrowserButton.Name = "downloadFolderBrowserButton";
|
||||
this.downloadFolderBrowserButton.Size = new System.Drawing.Size(36, 40);
|
||||
this.downloadFolderBrowserButton.Size = new System.Drawing.Size(44, 48);
|
||||
this.downloadFolderBrowserButton.TabIndex = 5;
|
||||
this.downloadFolderBrowserButton.TextAlign = System.Drawing.ContentAlignment.TopLeft;
|
||||
this.downloadFolderBrowserButton.UseVisualStyleBackColor = true;
|
||||
|
@ -225,39 +255,39 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// downloadFolder
|
||||
//
|
||||
this.downloadFolder.Location = new System.Drawing.Point(20, 226);
|
||||
this.downloadFolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.downloadFolder.Location = new System.Drawing.Point(24, 271);
|
||||
this.downloadFolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.downloadFolder.Name = "downloadFolder";
|
||||
this.downloadFolder.Size = new System.Drawing.Size(278, 26);
|
||||
this.downloadFolder.Size = new System.Drawing.Size(339, 29);
|
||||
this.downloadFolder.TabIndex = 4;
|
||||
this.downloadFolder.TextChanged += new System.EventHandler(this.DownloadFolder_TextChanged);
|
||||
//
|
||||
// downloadFolderLabel
|
||||
//
|
||||
this.downloadFolderLabel.AutoSize = true;
|
||||
this.downloadFolderLabel.Location = new System.Drawing.Point(15, 200);
|
||||
this.downloadFolderLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.downloadFolderLabel.Location = new System.Drawing.Point(18, 240);
|
||||
this.downloadFolderLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.downloadFolderLabel.Name = "downloadFolderLabel";
|
||||
this.downloadFolderLabel.Size = new System.Drawing.Size(124, 20);
|
||||
this.downloadFolderLabel.Size = new System.Drawing.Size(152, 25);
|
||||
this.downloadFolderLabel.TabIndex = 8;
|
||||
this.downloadFolderLabel.Text = "Download folder";
|
||||
//
|
||||
// jobDescription
|
||||
//
|
||||
this.jobDescription.Location = new System.Drawing.Point(16, 140);
|
||||
this.jobDescription.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobDescription.Location = new System.Drawing.Point(20, 168);
|
||||
this.jobDescription.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobDescription.Multiline = true;
|
||||
this.jobDescription.Name = "jobDescription";
|
||||
this.jobDescription.Size = new System.Drawing.Size(314, 52);
|
||||
this.jobDescription.Size = new System.Drawing.Size(383, 62);
|
||||
this.jobDescription.TabIndex = 3;
|
||||
//
|
||||
// jobDescriptionLabel
|
||||
//
|
||||
this.jobDescriptionLabel.AutoSize = true;
|
||||
this.jobDescriptionLabel.Location = new System.Drawing.Point(14, 114);
|
||||
this.jobDescriptionLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.jobDescriptionLabel.Location = new System.Drawing.Point(17, 137);
|
||||
this.jobDescriptionLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.jobDescriptionLabel.Name = "jobDescriptionLabel";
|
||||
this.jobDescriptionLabel.Size = new System.Drawing.Size(89, 20);
|
||||
this.jobDescriptionLabel.Size = new System.Drawing.Size(109, 25);
|
||||
this.jobDescriptionLabel.TabIndex = 4;
|
||||
this.jobDescriptionLabel.Text = "Description";
|
||||
//
|
||||
|
@ -265,38 +295,38 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.jobGroupComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.jobGroupComboBox.FormattingEnabled = true;
|
||||
this.jobGroupComboBox.Location = new System.Drawing.Point(75, 75);
|
||||
this.jobGroupComboBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobGroupComboBox.Location = new System.Drawing.Point(92, 90);
|
||||
this.jobGroupComboBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobGroupComboBox.Name = "jobGroupComboBox";
|
||||
this.jobGroupComboBox.Size = new System.Drawing.Size(258, 28);
|
||||
this.jobGroupComboBox.Size = new System.Drawing.Size(314, 32);
|
||||
this.jobGroupComboBox.Sorted = true;
|
||||
this.jobGroupComboBox.TabIndex = 2;
|
||||
//
|
||||
// jobGroupLabel
|
||||
//
|
||||
this.jobGroupLabel.AutoSize = true;
|
||||
this.jobGroupLabel.Location = new System.Drawing.Point(14, 80);
|
||||
this.jobGroupLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.jobGroupLabel.Location = new System.Drawing.Point(17, 96);
|
||||
this.jobGroupLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.jobGroupLabel.Name = "jobGroupLabel";
|
||||
this.jobGroupLabel.Size = new System.Drawing.Size(54, 20);
|
||||
this.jobGroupLabel.Size = new System.Drawing.Size(66, 25);
|
||||
this.jobGroupLabel.TabIndex = 2;
|
||||
this.jobGroupLabel.Text = "Group";
|
||||
//
|
||||
// jobName
|
||||
//
|
||||
this.jobName.Location = new System.Drawing.Point(75, 26);
|
||||
this.jobName.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobName.Location = new System.Drawing.Point(92, 31);
|
||||
this.jobName.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobName.Name = "jobName";
|
||||
this.jobName.Size = new System.Drawing.Size(258, 26);
|
||||
this.jobName.Size = new System.Drawing.Size(314, 29);
|
||||
this.jobName.TabIndex = 1;
|
||||
//
|
||||
// jobNameLabel
|
||||
//
|
||||
this.jobNameLabel.AutoSize = true;
|
||||
this.jobNameLabel.Location = new System.Drawing.Point(14, 31);
|
||||
this.jobNameLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.jobNameLabel.Location = new System.Drawing.Point(17, 37);
|
||||
this.jobNameLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.jobNameLabel.Name = "jobNameLabel";
|
||||
this.jobNameLabel.Size = new System.Drawing.Size(51, 20);
|
||||
this.jobNameLabel.Size = new System.Drawing.Size(64, 25);
|
||||
this.jobNameLabel.TabIndex = 0;
|
||||
this.jobNameLabel.Text = "Name";
|
||||
//
|
||||
|
@ -311,11 +341,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.axDetailsGroupBox.Controls.Add(this.userComboBox);
|
||||
this.axDetailsGroupBox.Controls.Add(this.instanceLabel);
|
||||
this.axDetailsGroupBox.Controls.Add(this.instanceComboBox);
|
||||
this.axDetailsGroupBox.Location = new System.Drawing.Point(20, 492);
|
||||
this.axDetailsGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.axDetailsGroupBox.Location = new System.Drawing.Point(24, 675);
|
||||
this.axDetailsGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.axDetailsGroupBox.Name = "axDetailsGroupBox";
|
||||
this.axDetailsGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.axDetailsGroupBox.Size = new System.Drawing.Size(345, 237);
|
||||
this.axDetailsGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.axDetailsGroupBox.Size = new System.Drawing.Size(422, 284);
|
||||
this.axDetailsGroupBox.TabIndex = 1;
|
||||
this.axDetailsGroupBox.TabStop = false;
|
||||
this.axDetailsGroupBox.Text = "Dynamics details";
|
||||
|
@ -323,10 +353,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// aadApplicationLabel
|
||||
//
|
||||
this.aadApplicationLabel.AutoSize = true;
|
||||
this.aadApplicationLabel.Location = new System.Drawing.Point(14, 158);
|
||||
this.aadApplicationLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.aadApplicationLabel.Location = new System.Drawing.Point(17, 190);
|
||||
this.aadApplicationLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.aadApplicationLabel.Name = "aadApplicationLabel";
|
||||
this.aadApplicationLabel.Size = new System.Drawing.Size(123, 20);
|
||||
this.aadApplicationLabel.Size = new System.Drawing.Size(152, 25);
|
||||
this.aadApplicationLabel.TabIndex = 34;
|
||||
this.aadApplicationLabel.Text = "AAD application";
|
||||
//
|
||||
|
@ -334,29 +364,29 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.aadApplicationComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.aadApplicationComboBox.FormattingEnabled = true;
|
||||
this.aadApplicationComboBox.Location = new System.Drawing.Point(159, 155);
|
||||
this.aadApplicationComboBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.aadApplicationComboBox.Location = new System.Drawing.Point(194, 186);
|
||||
this.aadApplicationComboBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.aadApplicationComboBox.Name = "aadApplicationComboBox";
|
||||
this.aadApplicationComboBox.Size = new System.Drawing.Size(174, 28);
|
||||
this.aadApplicationComboBox.Size = new System.Drawing.Size(212, 32);
|
||||
this.aadApplicationComboBox.TabIndex = 33;
|
||||
//
|
||||
// authMethodPanel
|
||||
//
|
||||
this.authMethodPanel.Controls.Add(this.serviceAuthRadioButton);
|
||||
this.authMethodPanel.Controls.Add(this.userAuthRadioButton);
|
||||
this.authMethodPanel.Location = new System.Drawing.Point(12, 106);
|
||||
this.authMethodPanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.authMethodPanel.Location = new System.Drawing.Point(15, 127);
|
||||
this.authMethodPanel.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.authMethodPanel.Name = "authMethodPanel";
|
||||
this.authMethodPanel.Size = new System.Drawing.Size(321, 38);
|
||||
this.authMethodPanel.Size = new System.Drawing.Size(392, 46);
|
||||
this.authMethodPanel.TabIndex = 31;
|
||||
//
|
||||
// serviceAuthRadioButton
|
||||
//
|
||||
this.serviceAuthRadioButton.AutoSize = true;
|
||||
this.serviceAuthRadioButton.Location = new System.Drawing.Point(177, 5);
|
||||
this.serviceAuthRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.serviceAuthRadioButton.Location = new System.Drawing.Point(216, 6);
|
||||
this.serviceAuthRadioButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.serviceAuthRadioButton.Name = "serviceAuthRadioButton";
|
||||
this.serviceAuthRadioButton.Size = new System.Drawing.Size(122, 24);
|
||||
this.serviceAuthRadioButton.Size = new System.Drawing.Size(146, 29);
|
||||
this.serviceAuthRadioButton.TabIndex = 16;
|
||||
this.serviceAuthRadioButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Service_auth;
|
||||
this.serviceAuthRadioButton.UseVisualStyleBackColor = true;
|
||||
|
@ -366,10 +396,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.userAuthRadioButton.AutoSize = true;
|
||||
this.userAuthRadioButton.Checked = true;
|
||||
this.userAuthRadioButton.Location = new System.Drawing.Point(4, 5);
|
||||
this.userAuthRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.userAuthRadioButton.Location = new System.Drawing.Point(5, 6);
|
||||
this.userAuthRadioButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.userAuthRadioButton.Name = "userAuthRadioButton";
|
||||
this.userAuthRadioButton.Size = new System.Drawing.Size(104, 24);
|
||||
this.userAuthRadioButton.Size = new System.Drawing.Size(121, 29);
|
||||
this.userAuthRadioButton.TabIndex = 15;
|
||||
this.userAuthRadioButton.TabStop = true;
|
||||
this.userAuthRadioButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.User_auth;
|
||||
|
@ -378,10 +408,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// dataJobLabel
|
||||
//
|
||||
this.dataJobLabel.AutoSize = true;
|
||||
this.dataJobLabel.Location = new System.Drawing.Point(30, 71);
|
||||
this.dataJobLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.dataJobLabel.Location = new System.Drawing.Point(37, 85);
|
||||
this.dataJobLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.dataJobLabel.Name = "dataJobLabel";
|
||||
this.dataJobLabel.Size = new System.Drawing.Size(69, 20);
|
||||
this.dataJobLabel.Size = new System.Drawing.Size(84, 25);
|
||||
this.dataJobLabel.TabIndex = 22;
|
||||
this.dataJobLabel.Text = "Data job";
|
||||
//
|
||||
|
@ -389,19 +419,19 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.dataJobComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.dataJobComboBox.FormattingEnabled = true;
|
||||
this.dataJobComboBox.Location = new System.Drawing.Point(114, 66);
|
||||
this.dataJobComboBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.dataJobComboBox.Location = new System.Drawing.Point(139, 79);
|
||||
this.dataJobComboBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.dataJobComboBox.Name = "dataJobComboBox";
|
||||
this.dataJobComboBox.Size = new System.Drawing.Size(218, 28);
|
||||
this.dataJobComboBox.Size = new System.Drawing.Size(266, 32);
|
||||
this.dataJobComboBox.TabIndex = 11;
|
||||
//
|
||||
// userLabel
|
||||
//
|
||||
this.userLabel.AutoSize = true;
|
||||
this.userLabel.Location = new System.Drawing.Point(98, 198);
|
||||
this.userLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.userLabel.Location = new System.Drawing.Point(120, 238);
|
||||
this.userLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.userLabel.Name = "userLabel";
|
||||
this.userLabel.Size = new System.Drawing.Size(43, 20);
|
||||
this.userLabel.Size = new System.Drawing.Size(53, 25);
|
||||
this.userLabel.TabIndex = 19;
|
||||
this.userLabel.Text = "User";
|
||||
//
|
||||
|
@ -409,19 +439,19 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.userComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.userComboBox.FormattingEnabled = true;
|
||||
this.userComboBox.Location = new System.Drawing.Point(159, 195);
|
||||
this.userComboBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.userComboBox.Location = new System.Drawing.Point(194, 234);
|
||||
this.userComboBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.userComboBox.Name = "userComboBox";
|
||||
this.userComboBox.Size = new System.Drawing.Size(174, 28);
|
||||
this.userComboBox.Size = new System.Drawing.Size(212, 32);
|
||||
this.userComboBox.TabIndex = 10;
|
||||
//
|
||||
// instanceLabel
|
||||
//
|
||||
this.instanceLabel.AutoSize = true;
|
||||
this.instanceLabel.Location = new System.Drawing.Point(30, 31);
|
||||
this.instanceLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.instanceLabel.Location = new System.Drawing.Point(37, 37);
|
||||
this.instanceLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.instanceLabel.Name = "instanceLabel";
|
||||
this.instanceLabel.Size = new System.Drawing.Size(71, 20);
|
||||
this.instanceLabel.Size = new System.Drawing.Size(86, 25);
|
||||
this.instanceLabel.TabIndex = 16;
|
||||
this.instanceLabel.Text = "Instance";
|
||||
//
|
||||
|
@ -429,10 +459,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.instanceComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.instanceComboBox.FormattingEnabled = true;
|
||||
this.instanceComboBox.Location = new System.Drawing.Point(114, 26);
|
||||
this.instanceComboBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.instanceComboBox.Location = new System.Drawing.Point(139, 31);
|
||||
this.instanceComboBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.instanceComboBox.Name = "instanceComboBox";
|
||||
this.instanceComboBox.Size = new System.Drawing.Size(218, 28);
|
||||
this.instanceComboBox.Size = new System.Drawing.Size(266, 32);
|
||||
this.instanceComboBox.TabIndex = 9;
|
||||
//
|
||||
// recurrenceGroupBox
|
||||
|
@ -454,11 +484,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.recurrenceGroupBox.Controls.Add(this.startAtDateTimePicker);
|
||||
this.recurrenceGroupBox.Controls.Add(this.minutesDateTimePicker);
|
||||
this.recurrenceGroupBox.Controls.Add(this.hoursDateTimePicker);
|
||||
this.recurrenceGroupBox.Location = new System.Drawing.Point(372, 20);
|
||||
this.recurrenceGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.recurrenceGroupBox.Location = new System.Drawing.Point(455, 24);
|
||||
this.recurrenceGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.recurrenceGroupBox.Name = "recurrenceGroupBox";
|
||||
this.recurrenceGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.recurrenceGroupBox.Size = new System.Drawing.Size(345, 700);
|
||||
this.recurrenceGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.recurrenceGroupBox.Size = new System.Drawing.Size(422, 840);
|
||||
this.recurrenceGroupBox.TabIndex = 2;
|
||||
this.recurrenceGroupBox.TabStop = false;
|
||||
this.recurrenceGroupBox.Text = "Recurrence";
|
||||
|
@ -466,19 +496,20 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// pauseIndefinitelyCheckBox
|
||||
//
|
||||
this.pauseIndefinitelyCheckBox.AutoSize = true;
|
||||
this.pauseIndefinitelyCheckBox.Location = new System.Drawing.Point(14, 31);
|
||||
this.pauseIndefinitelyCheckBox.Location = new System.Drawing.Point(17, 37);
|
||||
this.pauseIndefinitelyCheckBox.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.pauseIndefinitelyCheckBox.Name = "pauseIndefinitelyCheckBox";
|
||||
this.pauseIndefinitelyCheckBox.Size = new System.Drawing.Size(183, 24);
|
||||
this.pauseIndefinitelyCheckBox.Size = new System.Drawing.Size(221, 29);
|
||||
this.pauseIndefinitelyCheckBox.TabIndex = 0;
|
||||
this.pauseIndefinitelyCheckBox.Text = "Pause job indefinitely";
|
||||
this.pauseIndefinitelyCheckBox.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// moreExamplesButton
|
||||
//
|
||||
this.moreExamplesButton.Location = new System.Drawing.Point(237, 569);
|
||||
this.moreExamplesButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.moreExamplesButton.Location = new System.Drawing.Point(290, 683);
|
||||
this.moreExamplesButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.moreExamplesButton.Name = "moreExamplesButton";
|
||||
this.moreExamplesButton.Size = new System.Drawing.Size(99, 102);
|
||||
this.moreExamplesButton.Size = new System.Drawing.Size(121, 122);
|
||||
this.moreExamplesButton.TabIndex = 19;
|
||||
this.moreExamplesButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.More_examples;
|
||||
this.moreExamplesButton.UseVisualStyleBackColor = true;
|
||||
|
@ -487,22 +518,22 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// calculatedRunsTextBox
|
||||
//
|
||||
this.calculatedRunsTextBox.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.calculatedRunsTextBox.Location = new System.Drawing.Point(9, 569);
|
||||
this.calculatedRunsTextBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.calculatedRunsTextBox.Location = new System.Drawing.Point(11, 683);
|
||||
this.calculatedRunsTextBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.calculatedRunsTextBox.Multiline = true;
|
||||
this.calculatedRunsTextBox.Name = "calculatedRunsTextBox";
|
||||
this.calculatedRunsTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
|
||||
this.calculatedRunsTextBox.Size = new System.Drawing.Size(216, 99);
|
||||
this.calculatedRunsTextBox.Size = new System.Drawing.Size(263, 118);
|
||||
this.calculatedRunsTextBox.TabIndex = 32;
|
||||
this.calculatedRunsTextBox.TabStop = false;
|
||||
//
|
||||
// calculateNextRunsButton
|
||||
//
|
||||
this.calculateNextRunsButton.Enabled = false;
|
||||
this.calculateNextRunsButton.Location = new System.Drawing.Point(9, 520);
|
||||
this.calculateNextRunsButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.calculateNextRunsButton.Location = new System.Drawing.Point(11, 624);
|
||||
this.calculateNextRunsButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.calculateNextRunsButton.Name = "calculateNextRunsButton";
|
||||
this.calculateNextRunsButton.Size = new System.Drawing.Size(327, 35);
|
||||
this.calculateNextRunsButton.Size = new System.Drawing.Size(400, 42);
|
||||
this.calculateNextRunsButton.TabIndex = 18;
|
||||
this.calculateNextRunsButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Calculate_next_100_runs_of_cron_trigger;
|
||||
this.calculateNextRunsButton.UseVisualStyleBackColor = true;
|
||||
|
@ -511,10 +542,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// cronDocsLinkLabel
|
||||
//
|
||||
this.cronDocsLinkLabel.AutoSize = true;
|
||||
this.cronDocsLinkLabel.Location = new System.Drawing.Point(9, 489);
|
||||
this.cronDocsLinkLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.cronDocsLinkLabel.Location = new System.Drawing.Point(11, 587);
|
||||
this.cronDocsLinkLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.cronDocsLinkLabel.Name = "cronDocsLinkLabel";
|
||||
this.cronDocsLinkLabel.Size = new System.Drawing.Size(259, 20);
|
||||
this.cronDocsLinkLabel.Size = new System.Drawing.Size(316, 25);
|
||||
this.cronDocsLinkLabel.TabIndex = 30;
|
||||
this.cronDocsLinkLabel.TabStop = true;
|
||||
this.cronDocsLinkLabel.Text = "Quartz cron triggers documentation";
|
||||
|
@ -524,19 +555,19 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.triggerTypePanel.Controls.Add(this.cronTriggerRadioButton);
|
||||
this.triggerTypePanel.Controls.Add(this.simpleTriggerRadioButton);
|
||||
this.triggerTypePanel.Location = new System.Drawing.Point(14, 105);
|
||||
this.triggerTypePanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.triggerTypePanel.Location = new System.Drawing.Point(17, 126);
|
||||
this.triggerTypePanel.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.triggerTypePanel.Name = "triggerTypePanel";
|
||||
this.triggerTypePanel.Size = new System.Drawing.Size(321, 37);
|
||||
this.triggerTypePanel.Size = new System.Drawing.Size(392, 44);
|
||||
this.triggerTypePanel.TabIndex = 29;
|
||||
//
|
||||
// cronTriggerRadioButton
|
||||
//
|
||||
this.cronTriggerRadioButton.AutoSize = true;
|
||||
this.cronTriggerRadioButton.Location = new System.Drawing.Point(194, 8);
|
||||
this.cronTriggerRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.cronTriggerRadioButton.Location = new System.Drawing.Point(237, 10);
|
||||
this.cronTriggerRadioButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.cronTriggerRadioButton.Name = "cronTriggerRadioButton";
|
||||
this.cronTriggerRadioButton.Size = new System.Drawing.Size(117, 24);
|
||||
this.cronTriggerRadioButton.Size = new System.Drawing.Size(139, 29);
|
||||
this.cronTriggerRadioButton.TabIndex = 16;
|
||||
this.cronTriggerRadioButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Cron_trigger;
|
||||
this.cronTriggerRadioButton.UseVisualStyleBackColor = true;
|
||||
|
@ -546,10 +577,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.simpleTriggerRadioButton.AutoSize = true;
|
||||
this.simpleTriggerRadioButton.Checked = true;
|
||||
this.simpleTriggerRadioButton.Location = new System.Drawing.Point(4, 5);
|
||||
this.simpleTriggerRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.simpleTriggerRadioButton.Location = new System.Drawing.Point(5, 6);
|
||||
this.simpleTriggerRadioButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.simpleTriggerRadioButton.Name = "simpleTriggerRadioButton";
|
||||
this.simpleTriggerRadioButton.Size = new System.Drawing.Size(131, 24);
|
||||
this.simpleTriggerRadioButton.Size = new System.Drawing.Size(156, 29);
|
||||
this.simpleTriggerRadioButton.TabIndex = 15;
|
||||
this.simpleTriggerRadioButton.TabStop = true;
|
||||
this.simpleTriggerRadioButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Simple_trigger;
|
||||
|
@ -558,10 +589,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// buildCronLabel
|
||||
//
|
||||
this.buildCronLabel.AutoSize = true;
|
||||
this.buildCronLabel.Location = new System.Drawing.Point(9, 457);
|
||||
this.buildCronLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.buildCronLabel.Location = new System.Drawing.Point(11, 548);
|
||||
this.buildCronLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.buildCronLabel.Name = "buildCronLabel";
|
||||
this.buildCronLabel.Size = new System.Drawing.Size(177, 20);
|
||||
this.buildCronLabel.Size = new System.Drawing.Size(219, 25);
|
||||
this.buildCronLabel.TabIndex = 26;
|
||||
this.buildCronLabel.Text = "Build cron expression at";
|
||||
//
|
||||
|
@ -569,11 +600,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.cronTriggerInfoTextBox.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.cronTriggerInfoTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.cronTriggerInfoTextBox.Location = new System.Drawing.Point(14, 214);
|
||||
this.cronTriggerInfoTextBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.cronTriggerInfoTextBox.Location = new System.Drawing.Point(17, 257);
|
||||
this.cronTriggerInfoTextBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.cronTriggerInfoTextBox.Multiline = true;
|
||||
this.cronTriggerInfoTextBox.Name = "cronTriggerInfoTextBox";
|
||||
this.cronTriggerInfoTextBox.Size = new System.Drawing.Size(312, 238);
|
||||
this.cronTriggerInfoTextBox.Size = new System.Drawing.Size(381, 286);
|
||||
this.cronTriggerInfoTextBox.TabIndex = 25;
|
||||
this.cronTriggerInfoTextBox.TabStop = false;
|
||||
this.cronTriggerInfoTextBox.Text = resources.GetString("cronTriggerInfoTextBox.Text");
|
||||
|
@ -581,10 +612,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// cronmakerLinkLabel
|
||||
//
|
||||
this.cronmakerLinkLabel.AutoSize = true;
|
||||
this.cronmakerLinkLabel.Location = new System.Drawing.Point(186, 457);
|
||||
this.cronmakerLinkLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.cronmakerLinkLabel.Location = new System.Drawing.Point(227, 548);
|
||||
this.cronmakerLinkLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.cronmakerLinkLabel.Name = "cronmakerLinkLabel";
|
||||
this.cronmakerLinkLabel.Size = new System.Drawing.Size(118, 20);
|
||||
this.cronmakerLinkLabel.Size = new System.Drawing.Size(146, 25);
|
||||
this.cronmakerLinkLabel.TabIndex = 24;
|
||||
this.cronmakerLinkLabel.TabStop = true;
|
||||
this.cronmakerLinkLabel.Text = "cronmaker.com";
|
||||
|
@ -593,30 +624,30 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// cronExpressionLabel
|
||||
//
|
||||
this.cronExpressionLabel.AutoSize = true;
|
||||
this.cronExpressionLabel.Location = new System.Drawing.Point(9, 149);
|
||||
this.cronExpressionLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.cronExpressionLabel.Location = new System.Drawing.Point(11, 179);
|
||||
this.cronExpressionLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.cronExpressionLabel.Name = "cronExpressionLabel";
|
||||
this.cronExpressionLabel.Size = new System.Drawing.Size(123, 20);
|
||||
this.cronExpressionLabel.Size = new System.Drawing.Size(155, 25);
|
||||
this.cronExpressionLabel.TabIndex = 23;
|
||||
this.cronExpressionLabel.Text = "Cron expression";
|
||||
//
|
||||
// cronExpressionTextBox
|
||||
//
|
||||
this.cronExpressionTextBox.Enabled = false;
|
||||
this.cronExpressionTextBox.Location = new System.Drawing.Point(14, 174);
|
||||
this.cronExpressionTextBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.cronExpressionTextBox.Location = new System.Drawing.Point(17, 209);
|
||||
this.cronExpressionTextBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.cronExpressionTextBox.Name = "cronExpressionTextBox";
|
||||
this.cronExpressionTextBox.Size = new System.Drawing.Size(320, 26);
|
||||
this.cronExpressionTextBox.Size = new System.Drawing.Size(390, 29);
|
||||
this.cronExpressionTextBox.TabIndex = 17;
|
||||
this.cronExpressionTextBox.Text = "0 0/15 8-18 ? * MON-FRI *";
|
||||
//
|
||||
// minutesLabel
|
||||
//
|
||||
this.minutesLabel.AutoSize = true;
|
||||
this.minutesLabel.Location = new System.Drawing.Point(96, 69);
|
||||
this.minutesLabel.Location = new System.Drawing.Point(117, 83);
|
||||
this.minutesLabel.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.minutesLabel.Name = "minutesLabel";
|
||||
this.minutesLabel.Size = new System.Drawing.Size(26, 20);
|
||||
this.minutesLabel.Size = new System.Drawing.Size(35, 25);
|
||||
this.minutesLabel.TabIndex = 5;
|
||||
this.minutesLabel.Text = "M:";
|
||||
this.minutesLabel.TextAlign = System.Drawing.ContentAlignment.TopRight;
|
||||
|
@ -624,10 +655,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// hoursLabel
|
||||
//
|
||||
this.hoursLabel.AutoSize = true;
|
||||
this.hoursLabel.Location = new System.Drawing.Point(9, 69);
|
||||
this.hoursLabel.Location = new System.Drawing.Point(11, 83);
|
||||
this.hoursLabel.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.hoursLabel.Name = "hoursLabel";
|
||||
this.hoursLabel.Size = new System.Drawing.Size(25, 20);
|
||||
this.hoursLabel.Size = new System.Drawing.Size(32, 25);
|
||||
this.hoursLabel.TabIndex = 4;
|
||||
this.hoursLabel.Text = "H:";
|
||||
this.hoursLabel.TextAlign = System.Drawing.ContentAlignment.TopRight;
|
||||
|
@ -635,10 +666,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// startAtLabel
|
||||
//
|
||||
this.startAtLabel.AutoSize = true;
|
||||
this.startAtLabel.Location = new System.Drawing.Point(189, 69);
|
||||
this.startAtLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.startAtLabel.Location = new System.Drawing.Point(231, 83);
|
||||
this.startAtLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.startAtLabel.Name = "startAtLabel";
|
||||
this.startAtLabel.Size = new System.Drawing.Size(59, 20);
|
||||
this.startAtLabel.Size = new System.Drawing.Size(70, 25);
|
||||
this.startAtLabel.TabIndex = 3;
|
||||
this.startAtLabel.Text = "start at";
|
||||
this.startAtLabel.TextAlign = System.Drawing.ContentAlignment.TopRight;
|
||||
|
@ -647,11 +678,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.startAtDateTimePicker.CustomFormat = "HH:mm";
|
||||
this.startAtDateTimePicker.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
|
||||
this.startAtDateTimePicker.Location = new System.Drawing.Point(248, 65);
|
||||
this.startAtDateTimePicker.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.startAtDateTimePicker.Location = new System.Drawing.Point(303, 78);
|
||||
this.startAtDateTimePicker.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.startAtDateTimePicker.Name = "startAtDateTimePicker";
|
||||
this.startAtDateTimePicker.ShowUpDown = true;
|
||||
this.startAtDateTimePicker.Size = new System.Drawing.Size(76, 26);
|
||||
this.startAtDateTimePicker.Size = new System.Drawing.Size(92, 29);
|
||||
this.startAtDateTimePicker.TabIndex = 14;
|
||||
this.startAtDateTimePicker.Value = new System.DateTime(2016, 6, 26, 0, 0, 0, 0);
|
||||
//
|
||||
|
@ -659,11 +690,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.minutesDateTimePicker.CustomFormat = "mm";
|
||||
this.minutesDateTimePicker.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
|
||||
this.minutesDateTimePicker.Location = new System.Drawing.Point(124, 65);
|
||||
this.minutesDateTimePicker.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.minutesDateTimePicker.Location = new System.Drawing.Point(152, 78);
|
||||
this.minutesDateTimePicker.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.minutesDateTimePicker.Name = "minutesDateTimePicker";
|
||||
this.minutesDateTimePicker.ShowUpDown = true;
|
||||
this.minutesDateTimePicker.Size = new System.Drawing.Size(50, 26);
|
||||
this.minutesDateTimePicker.Size = new System.Drawing.Size(60, 29);
|
||||
this.minutesDateTimePicker.TabIndex = 13;
|
||||
this.minutesDateTimePicker.Value = new System.DateTime(2016, 6, 26, 0, 1, 0, 0);
|
||||
//
|
||||
|
@ -671,11 +702,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.hoursDateTimePicker.CustomFormat = "HH";
|
||||
this.hoursDateTimePicker.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
|
||||
this.hoursDateTimePicker.Location = new System.Drawing.Point(36, 65);
|
||||
this.hoursDateTimePicker.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.hoursDateTimePicker.Location = new System.Drawing.Point(44, 78);
|
||||
this.hoursDateTimePicker.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.hoursDateTimePicker.Name = "hoursDateTimePicker";
|
||||
this.hoursDateTimePicker.ShowUpDown = true;
|
||||
this.hoursDateTimePicker.Size = new System.Drawing.Size(50, 26);
|
||||
this.hoursDateTimePicker.Size = new System.Drawing.Size(60, 29);
|
||||
this.hoursDateTimePicker.TabIndex = 12;
|
||||
this.hoursDateTimePicker.Value = new System.DateTime(2016, 6, 26, 0, 0, 0, 0);
|
||||
//
|
||||
|
@ -685,26 +716,26 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.retryPolicyGroupBox.Controls.Add(this.retriesCountUpDown);
|
||||
this.retryPolicyGroupBox.Controls.Add(this.label2);
|
||||
this.retryPolicyGroupBox.Controls.Add(this.label1);
|
||||
this.retryPolicyGroupBox.Location = new System.Drawing.Point(372, 725);
|
||||
this.retryPolicyGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.retryPolicyGroupBox.Location = new System.Drawing.Point(455, 870);
|
||||
this.retryPolicyGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.retryPolicyGroupBox.Name = "retryPolicyGroupBox";
|
||||
this.retryPolicyGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.retryPolicyGroupBox.Size = new System.Drawing.Size(346, 103);
|
||||
this.retryPolicyGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.retryPolicyGroupBox.Size = new System.Drawing.Size(423, 124);
|
||||
this.retryPolicyGroupBox.TabIndex = 7;
|
||||
this.retryPolicyGroupBox.TabStop = false;
|
||||
this.retryPolicyGroupBox.Text = "Retry policy";
|
||||
//
|
||||
// retriesDelayUpDown
|
||||
//
|
||||
this.retriesDelayUpDown.Location = new System.Drawing.Point(150, 65);
|
||||
this.retriesDelayUpDown.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.retriesDelayUpDown.Location = new System.Drawing.Point(183, 78);
|
||||
this.retriesDelayUpDown.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.retriesDelayUpDown.Maximum = new decimal(new int[] {
|
||||
86400,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.retriesDelayUpDown.Name = "retriesDelayUpDown";
|
||||
this.retriesDelayUpDown.Size = new System.Drawing.Size(99, 26);
|
||||
this.retriesDelayUpDown.Size = new System.Drawing.Size(121, 29);
|
||||
this.retriesDelayUpDown.TabIndex = 7;
|
||||
this.retriesDelayUpDown.Value = new decimal(new int[] {
|
||||
60,
|
||||
|
@ -714,15 +745,15 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// retriesCountUpDown
|
||||
//
|
||||
this.retriesCountUpDown.Location = new System.Drawing.Point(150, 28);
|
||||
this.retriesCountUpDown.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.retriesCountUpDown.Location = new System.Drawing.Point(183, 34);
|
||||
this.retriesCountUpDown.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.retriesCountUpDown.Maximum = new decimal(new int[] {
|
||||
9999,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.retriesCountUpDown.Name = "retriesCountUpDown";
|
||||
this.retriesCountUpDown.Size = new System.Drawing.Size(99, 26);
|
||||
this.retriesCountUpDown.Size = new System.Drawing.Size(121, 29);
|
||||
this.retriesCountUpDown.TabIndex = 6;
|
||||
this.retriesCountUpDown.Value = new decimal(new int[] {
|
||||
1,
|
||||
|
@ -733,29 +764,31 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(10, 68);
|
||||
this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.label2.Location = new System.Drawing.Point(12, 82);
|
||||
this.label2.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(123, 20);
|
||||
this.label2.Size = new System.Drawing.Size(155, 25);
|
||||
this.label2.TabIndex = 2;
|
||||
this.label2.Text = "Delay (seconds)";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(10, 31);
|
||||
this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.label1.Location = new System.Drawing.Point(12, 37);
|
||||
this.label1.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(131, 20);
|
||||
this.label1.Size = new System.Drawing.Size(160, 25);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "Number of retries";
|
||||
//
|
||||
// groupBoxExceptions
|
||||
//
|
||||
this.groupBoxExceptions.Controls.Add(this.pauseOnExceptionsCheckBox);
|
||||
this.groupBoxExceptions.Location = new System.Drawing.Point(20, 737);
|
||||
this.groupBoxExceptions.Location = new System.Drawing.Point(24, 969);
|
||||
this.groupBoxExceptions.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.groupBoxExceptions.Name = "groupBoxExceptions";
|
||||
this.groupBoxExceptions.Size = new System.Drawing.Size(345, 91);
|
||||
this.groupBoxExceptions.Padding = new System.Windows.Forms.Padding(4);
|
||||
this.groupBoxExceptions.Size = new System.Drawing.Size(422, 109);
|
||||
this.groupBoxExceptions.TabIndex = 10;
|
||||
this.groupBoxExceptions.TabStop = false;
|
||||
this.groupBoxExceptions.Text = "Exceptions";
|
||||
|
@ -765,9 +798,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.pauseOnExceptionsCheckBox.AutoSize = true;
|
||||
this.pauseOnExceptionsCheckBox.Checked = true;
|
||||
this.pauseOnExceptionsCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.pauseOnExceptionsCheckBox.Location = new System.Drawing.Point(14, 26);
|
||||
this.pauseOnExceptionsCheckBox.Location = new System.Drawing.Point(17, 31);
|
||||
this.pauseOnExceptionsCheckBox.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.pauseOnExceptionsCheckBox.Name = "pauseOnExceptionsCheckBox";
|
||||
this.pauseOnExceptionsCheckBox.Size = new System.Drawing.Size(270, 24);
|
||||
this.pauseOnExceptionsCheckBox.Size = new System.Drawing.Size(329, 29);
|
||||
this.pauseOnExceptionsCheckBox.TabIndex = 0;
|
||||
this.pauseOnExceptionsCheckBox.Text = "Pause job when exception occurs";
|
||||
this.pauseOnExceptionsCheckBox.UseVisualStyleBackColor = true;
|
||||
|
@ -776,17 +810,20 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.groupBoxButtons.Controls.Add(this.addJobButton);
|
||||
this.groupBoxButtons.Controls.Add(this.cancelButton);
|
||||
this.groupBoxButtons.Location = new System.Drawing.Point(20, 836);
|
||||
this.groupBoxButtons.Location = new System.Drawing.Point(24, 1075);
|
||||
this.groupBoxButtons.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.groupBoxButtons.Name = "groupBoxButtons";
|
||||
this.groupBoxButtons.Size = new System.Drawing.Size(697, 74);
|
||||
this.groupBoxButtons.Padding = new System.Windows.Forms.Padding(4);
|
||||
this.groupBoxButtons.Size = new System.Drawing.Size(852, 89);
|
||||
this.groupBoxButtons.TabIndex = 11;
|
||||
this.groupBoxButtons.TabStop = false;
|
||||
//
|
||||
// addJobButton
|
||||
//
|
||||
this.addJobButton.Location = new System.Drawing.Point(352, 25);
|
||||
this.addJobButton.Location = new System.Drawing.Point(430, 30);
|
||||
this.addJobButton.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.addJobButton.Name = "addJobButton";
|
||||
this.addJobButton.Size = new System.Drawing.Size(162, 34);
|
||||
this.addJobButton.Size = new System.Drawing.Size(198, 41);
|
||||
this.addJobButton.TabIndex = 2;
|
||||
this.addJobButton.Text = "Add to schedule";
|
||||
this.addJobButton.UseVisualStyleBackColor = true;
|
||||
|
@ -794,9 +831,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// cancelButton
|
||||
//
|
||||
this.cancelButton.Location = new System.Drawing.Point(529, 25);
|
||||
this.cancelButton.Location = new System.Drawing.Point(647, 30);
|
||||
this.cancelButton.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.cancelButton.Name = "cancelButton";
|
||||
this.cancelButton.Size = new System.Drawing.Size(162, 34);
|
||||
this.cancelButton.Size = new System.Drawing.Size(198, 41);
|
||||
this.cancelButton.TabIndex = 1;
|
||||
this.cancelButton.Text = "Cancel";
|
||||
this.cancelButton.UseVisualStyleBackColor = true;
|
||||
|
@ -804,11 +842,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// DownloadJob
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(11F, 24F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.AutoSize = true;
|
||||
this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
|
||||
this.ClientSize = new System.Drawing.Size(724, 920);
|
||||
this.ClientSize = new System.Drawing.Size(885, 1176);
|
||||
this.Controls.Add(this.groupBoxButtons);
|
||||
this.Controls.Add(this.groupBoxExceptions);
|
||||
this.Controls.Add(this.retryPolicyGroupBox);
|
||||
|
@ -816,10 +854,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.Controls.Add(this.axDetailsGroupBox);
|
||||
this.Controls.Add(this.jobDetailsGroupBox);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
||||
this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.MinimumSize = new System.Drawing.Size(746, 891);
|
||||
this.MinimumSize = new System.Drawing.Size(906, 1056);
|
||||
this.Name = "DownloadJob";
|
||||
this.ShowIcon = false;
|
||||
this.ShowInTaskbar = false;
|
||||
|
@ -828,6 +866,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.Load += new System.EventHandler(this.DownloadJobForm_Load);
|
||||
this.jobDetailsGroupBox.ResumeLayout(false);
|
||||
this.jobDetailsGroupBox.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.numericUpDownInterval)).EndInit();
|
||||
this.axDetailsGroupBox.ResumeLayout(false);
|
||||
this.axDetailsGroupBox.PerformLayout();
|
||||
this.authMethodPanel.ResumeLayout(false);
|
||||
|
@ -909,5 +948,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
private System.Windows.Forms.GroupBox groupBoxButtons;
|
||||
private System.Windows.Forms.Button addJobButton;
|
||||
private System.Windows.Forms.Button cancelButton;
|
||||
private System.Windows.Forms.Label intervalLabel;
|
||||
private System.Windows.Forms.NumericUpDown numericUpDownInterval;
|
||||
}
|
||||
}
|
|
@ -112,6 +112,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
Convert.ToBoolean(
|
||||
JobDetail.JobDataMap[SettingsConstants.UseServiceAuthentication]
|
||||
.ToString());
|
||||
numericUpDownInterval.Value = Math.Round(Convert.ToDecimal(JobDetail.JobDataMap[SettingsConstants.Interval]));
|
||||
|
||||
if (!serviceAuthRadioButton.Checked)
|
||||
{
|
||||
|
@ -409,7 +410,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
{SettingsConstants.RetryCount, retriesCountUpDown.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.RetryDelay, retriesDelayUpDown.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.PauseJobOnException, pauseOnExceptionsCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.IndefinitePause, pauseIndefinitelyCheckBox.Checked.ToString()}
|
||||
{SettingsConstants.IndefinitePause, pauseIndefinitelyCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.Interval, numericUpDownInterval.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
};
|
||||
if (serviceAuthRadioButton.Checked)
|
||||
{
|
||||
|
|
|
@ -35,8 +35,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.addTimestampCheckBox = new System.Windows.Forms.CheckBox();
|
||||
this.legalEntityLabel = new System.Windows.Forms.Label();
|
||||
this.legalEntity = new System.Windows.Forms.TextBox();
|
||||
this.intervalLabel = new System.Windows.Forms.Label();
|
||||
this.interval = new System.Windows.Forms.NumericUpDown();
|
||||
this.statusCheckIntervalLabel = new System.Windows.Forms.Label();
|
||||
this.statusCheckInterval = new System.Windows.Forms.NumericUpDown();
|
||||
this.dataProjectLabel = new System.Windows.Forms.Label();
|
||||
this.dataProject = new System.Windows.Forms.TextBox();
|
||||
this.deletePackageCheckBox = new System.Windows.Forms.CheckBox();
|
||||
|
@ -96,8 +96,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.addJobButton = new System.Windows.Forms.Button();
|
||||
this.cancelButton = new System.Windows.Forms.Button();
|
||||
this.customActionsButton = new System.Windows.Forms.Button();
|
||||
this.intervalLabel = new System.Windows.Forms.Label();
|
||||
this.numericUpDownInterval = new System.Windows.Forms.NumericUpDown();
|
||||
this.jobDetailsGroupBox.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.interval)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.statusCheckInterval)).BeginInit();
|
||||
this.axDetailsGroupBox.SuspendLayout();
|
||||
this.authMethodPanel.SuspendLayout();
|
||||
this.recurrenceGroupBox.SuspendLayout();
|
||||
|
@ -107,15 +109,18 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
((System.ComponentModel.ISupportInitialize)(this.retriesCountUpDown)).BeginInit();
|
||||
this.groupBoxExceptions.SuspendLayout();
|
||||
this.groupBoxButtons.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.numericUpDownInterval)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// jobDetailsGroupBox
|
||||
//
|
||||
this.jobDetailsGroupBox.Controls.Add(this.intervalLabel);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.numericUpDownInterval);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.addTimestampCheckBox);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.legalEntityLabel);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.legalEntity);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.intervalLabel);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.interval);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.statusCheckIntervalLabel);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.statusCheckInterval);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.dataProjectLabel);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.dataProject);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.deletePackageCheckBox);
|
||||
|
@ -133,11 +138,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.jobDetailsGroupBox.Controls.Add(this.jobGroupLabel);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.jobName);
|
||||
this.jobDetailsGroupBox.Controls.Add(this.jobNameLabel);
|
||||
this.jobDetailsGroupBox.Location = new System.Drawing.Point(20, 20);
|
||||
this.jobDetailsGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobDetailsGroupBox.Location = new System.Drawing.Point(24, 24);
|
||||
this.jobDetailsGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobDetailsGroupBox.Name = "jobDetailsGroupBox";
|
||||
this.jobDetailsGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobDetailsGroupBox.Size = new System.Drawing.Size(345, 600);
|
||||
this.jobDetailsGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobDetailsGroupBox.Size = new System.Drawing.Size(422, 769);
|
||||
this.jobDetailsGroupBox.TabIndex = 0;
|
||||
this.jobDetailsGroupBox.TabStop = false;
|
||||
this.jobDetailsGroupBox.Text = "Job details";
|
||||
|
@ -146,10 +151,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.addTimestampCheckBox.AutoSize = true;
|
||||
this.addTimestampCheckBox.Enabled = false;
|
||||
this.addTimestampCheckBox.Location = new System.Drawing.Point(16, 394);
|
||||
this.addTimestampCheckBox.Margin = new System.Windows.Forms.Padding(3, 5, 3, 5);
|
||||
this.addTimestampCheckBox.Location = new System.Drawing.Point(20, 473);
|
||||
this.addTimestampCheckBox.Margin = new System.Windows.Forms.Padding(4, 6, 4, 6);
|
||||
this.addTimestampCheckBox.Name = "addTimestampCheckBox";
|
||||
this.addTimestampCheckBox.Size = new System.Drawing.Size(260, 24);
|
||||
this.addTimestampCheckBox.Size = new System.Drawing.Size(315, 29);
|
||||
this.addTimestampCheckBox.TabIndex = 10;
|
||||
this.addTimestampCheckBox.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Make_exported_file_name_unique;
|
||||
this.addTimestampCheckBox.UseVisualStyleBackColor = true;
|
||||
|
@ -157,49 +162,50 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// legalEntityLabel
|
||||
//
|
||||
this.legalEntityLabel.AutoSize = true;
|
||||
this.legalEntityLabel.Location = new System.Drawing.Point(15, 500);
|
||||
this.legalEntityLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.legalEntityLabel.Location = new System.Drawing.Point(18, 600);
|
||||
this.legalEntityLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.legalEntityLabel.Name = "legalEntityLabel";
|
||||
this.legalEntityLabel.Size = new System.Drawing.Size(90, 20);
|
||||
this.legalEntityLabel.Size = new System.Drawing.Size(111, 25);
|
||||
this.legalEntityLabel.TabIndex = 22;
|
||||
this.legalEntityLabel.Text = "Legal entity";
|
||||
//
|
||||
// legalEntity
|
||||
//
|
||||
this.legalEntity.Location = new System.Drawing.Point(120, 497);
|
||||
this.legalEntity.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.legalEntity.Location = new System.Drawing.Point(147, 596);
|
||||
this.legalEntity.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.legalEntity.Name = "legalEntity";
|
||||
this.legalEntity.Size = new System.Drawing.Size(96, 26);
|
||||
this.legalEntity.Size = new System.Drawing.Size(116, 29);
|
||||
this.legalEntity.TabIndex = 13;
|
||||
//
|
||||
// intervalLabel
|
||||
// statusCheckIntervalLabel
|
||||
//
|
||||
this.intervalLabel.AutoSize = true;
|
||||
this.intervalLabel.Location = new System.Drawing.Point(15, 538);
|
||||
this.intervalLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.intervalLabel.Name = "intervalLabel";
|
||||
this.intervalLabel.Size = new System.Drawing.Size(199, 20);
|
||||
this.intervalLabel.TabIndex = 20;
|
||||
this.intervalLabel.Text = "Status check interval (sec.)";
|
||||
this.statusCheckIntervalLabel.AutoSize = true;
|
||||
this.statusCheckIntervalLabel.Location = new System.Drawing.Point(18, 646);
|
||||
this.statusCheckIntervalLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.statusCheckIntervalLabel.Name = "statusCheckIntervalLabel";
|
||||
this.statusCheckIntervalLabel.Size = new System.Drawing.Size(247, 25);
|
||||
this.statusCheckIntervalLabel.TabIndex = 20;
|
||||
this.statusCheckIntervalLabel.Text = "Status check interval (sec.)";
|
||||
//
|
||||
// interval
|
||||
// statusCheckInterval
|
||||
//
|
||||
this.interval.Location = new System.Drawing.Point(220, 537);
|
||||
this.interval.Maximum = new decimal(new int[] {
|
||||
this.statusCheckInterval.Location = new System.Drawing.Point(269, 644);
|
||||
this.statusCheckInterval.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
|
||||
this.statusCheckInterval.Maximum = new decimal(new int[] {
|
||||
3600,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.interval.Minimum = new decimal(new int[] {
|
||||
this.statusCheckInterval.Minimum = new decimal(new int[] {
|
||||
5,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.interval.Name = "interval";
|
||||
this.interval.Size = new System.Drawing.Size(111, 26);
|
||||
this.interval.TabIndex = 14;
|
||||
this.interval.Value = new decimal(new int[] {
|
||||
300,
|
||||
this.statusCheckInterval.Name = "statusCheckInterval";
|
||||
this.statusCheckInterval.Size = new System.Drawing.Size(136, 29);
|
||||
this.statusCheckInterval.TabIndex = 14;
|
||||
this.statusCheckInterval.Value = new decimal(new int[] {
|
||||
5,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
|
@ -207,29 +213,29 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// dataProjectLabel
|
||||
//
|
||||
this.dataProjectLabel.AutoSize = true;
|
||||
this.dataProjectLabel.Location = new System.Drawing.Point(15, 465);
|
||||
this.dataProjectLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.dataProjectLabel.Location = new System.Drawing.Point(18, 558);
|
||||
this.dataProjectLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.dataProjectLabel.Name = "dataProjectLabel";
|
||||
this.dataProjectLabel.Size = new System.Drawing.Size(96, 20);
|
||||
this.dataProjectLabel.Size = new System.Drawing.Size(116, 25);
|
||||
this.dataProjectLabel.TabIndex = 16;
|
||||
this.dataProjectLabel.Text = "Data project";
|
||||
//
|
||||
// dataProject
|
||||
//
|
||||
this.dataProject.Location = new System.Drawing.Point(118, 462);
|
||||
this.dataProject.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.dataProject.Location = new System.Drawing.Point(144, 554);
|
||||
this.dataProject.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.dataProject.Name = "dataProject";
|
||||
this.dataProject.Size = new System.Drawing.Size(220, 26);
|
||||
this.dataProject.Size = new System.Drawing.Size(268, 29);
|
||||
this.dataProject.TabIndex = 12;
|
||||
//
|
||||
// deletePackageCheckBox
|
||||
//
|
||||
this.deletePackageCheckBox.AutoSize = true;
|
||||
this.deletePackageCheckBox.Enabled = false;
|
||||
this.deletePackageCheckBox.Location = new System.Drawing.Point(16, 426);
|
||||
this.deletePackageCheckBox.Margin = new System.Windows.Forms.Padding(3, 5, 3, 5);
|
||||
this.deletePackageCheckBox.Location = new System.Drawing.Point(20, 511);
|
||||
this.deletePackageCheckBox.Margin = new System.Windows.Forms.Padding(4, 6, 4, 6);
|
||||
this.deletePackageCheckBox.Name = "deletePackageCheckBox";
|
||||
this.deletePackageCheckBox.Size = new System.Drawing.Size(171, 24);
|
||||
this.deletePackageCheckBox.Size = new System.Drawing.Size(203, 29);
|
||||
this.deletePackageCheckBox.TabIndex = 11;
|
||||
this.deletePackageCheckBox.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Delete_package_file;
|
||||
this.deletePackageCheckBox.UseVisualStyleBackColor = true;
|
||||
|
@ -237,10 +243,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// unzipCheckBox
|
||||
//
|
||||
this.unzipCheckBox.AutoSize = true;
|
||||
this.unzipCheckBox.Location = new System.Drawing.Point(18, 362);
|
||||
this.unzipCheckBox.Margin = new System.Windows.Forms.Padding(3, 5, 3, 5);
|
||||
this.unzipCheckBox.Location = new System.Drawing.Point(22, 434);
|
||||
this.unzipCheckBox.Margin = new System.Windows.Forms.Padding(4, 6, 4, 6);
|
||||
this.unzipCheckBox.Name = "unzipCheckBox";
|
||||
this.unzipCheckBox.Size = new System.Drawing.Size(165, 24);
|
||||
this.unzipCheckBox.Size = new System.Drawing.Size(197, 29);
|
||||
this.unzipCheckBox.TabIndex = 9;
|
||||
this.unzipCheckBox.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Unzip_package_file;
|
||||
this.unzipCheckBox.UseVisualStyleBackColor = true;
|
||||
|
@ -251,10 +257,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.useStandardSubfolder.AutoSize = true;
|
||||
this.useStandardSubfolder.Checked = true;
|
||||
this.useStandardSubfolder.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.useStandardSubfolder.Location = new System.Drawing.Point(18, 265);
|
||||
this.useStandardSubfolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.useStandardSubfolder.Location = new System.Drawing.Point(22, 318);
|
||||
this.useStandardSubfolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.useStandardSubfolder.Name = "useStandardSubfolder";
|
||||
this.useStandardSubfolder.Size = new System.Drawing.Size(213, 24);
|
||||
this.useStandardSubfolder.Size = new System.Drawing.Size(253, 29);
|
||||
this.useStandardSubfolder.TabIndex = 6;
|
||||
this.useStandardSubfolder.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Use_default_folder_names;
|
||||
this.useStandardSubfolder.UseVisualStyleBackColor = true;
|
||||
|
@ -265,10 +271,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.errorsFolderBrowserButton.Enabled = false;
|
||||
this.errorsFolderBrowserButton.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.errorsFolderBrowserButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Folder_open_32xMD_exp;
|
||||
this.errorsFolderBrowserButton.Location = new System.Drawing.Point(303, 318);
|
||||
this.errorsFolderBrowserButton.Location = new System.Drawing.Point(370, 382);
|
||||
this.errorsFolderBrowserButton.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.errorsFolderBrowserButton.Name = "errorsFolderBrowserButton";
|
||||
this.errorsFolderBrowserButton.Size = new System.Drawing.Size(36, 40);
|
||||
this.errorsFolderBrowserButton.Size = new System.Drawing.Size(44, 48);
|
||||
this.errorsFolderBrowserButton.TabIndex = 8;
|
||||
this.errorsFolderBrowserButton.TextAlign = System.Drawing.ContentAlignment.TopLeft;
|
||||
this.errorsFolderBrowserButton.UseVisualStyleBackColor = true;
|
||||
|
@ -277,19 +283,19 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// errorsFolder
|
||||
//
|
||||
this.errorsFolder.Enabled = false;
|
||||
this.errorsFolder.Location = new System.Drawing.Point(18, 322);
|
||||
this.errorsFolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.errorsFolder.Location = new System.Drawing.Point(22, 386);
|
||||
this.errorsFolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.errorsFolder.Name = "errorsFolder";
|
||||
this.errorsFolder.Size = new System.Drawing.Size(278, 26);
|
||||
this.errorsFolder.Size = new System.Drawing.Size(339, 29);
|
||||
this.errorsFolder.TabIndex = 7;
|
||||
//
|
||||
// errorsFolderLabel
|
||||
//
|
||||
this.errorsFolderLabel.AutoSize = true;
|
||||
this.errorsFolderLabel.Location = new System.Drawing.Point(14, 295);
|
||||
this.errorsFolderLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.errorsFolderLabel.Location = new System.Drawing.Point(17, 354);
|
||||
this.errorsFolderLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.errorsFolderLabel.Name = "errorsFolderLabel";
|
||||
this.errorsFolderLabel.Size = new System.Drawing.Size(96, 20);
|
||||
this.errorsFolderLabel.Size = new System.Drawing.Size(117, 25);
|
||||
this.errorsFolderLabel.TabIndex = 11;
|
||||
this.errorsFolderLabel.Text = "Errors folder";
|
||||
//
|
||||
|
@ -297,10 +303,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.downloadFolderBrowserButton.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.downloadFolderBrowserButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Folder_open_32xMD_exp;
|
||||
this.downloadFolderBrowserButton.Location = new System.Drawing.Point(303, 222);
|
||||
this.downloadFolderBrowserButton.Location = new System.Drawing.Point(370, 266);
|
||||
this.downloadFolderBrowserButton.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.downloadFolderBrowserButton.Name = "downloadFolderBrowserButton";
|
||||
this.downloadFolderBrowserButton.Size = new System.Drawing.Size(36, 40);
|
||||
this.downloadFolderBrowserButton.Size = new System.Drawing.Size(44, 48);
|
||||
this.downloadFolderBrowserButton.TabIndex = 5;
|
||||
this.downloadFolderBrowserButton.TextAlign = System.Drawing.ContentAlignment.TopLeft;
|
||||
this.downloadFolderBrowserButton.UseVisualStyleBackColor = true;
|
||||
|
@ -308,39 +314,39 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// downloadFolder
|
||||
//
|
||||
this.downloadFolder.Location = new System.Drawing.Point(20, 226);
|
||||
this.downloadFolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.downloadFolder.Location = new System.Drawing.Point(24, 271);
|
||||
this.downloadFolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.downloadFolder.Name = "downloadFolder";
|
||||
this.downloadFolder.Size = new System.Drawing.Size(278, 26);
|
||||
this.downloadFolder.Size = new System.Drawing.Size(339, 29);
|
||||
this.downloadFolder.TabIndex = 4;
|
||||
this.downloadFolder.TextChanged += new System.EventHandler(this.DownloadFolder_TextChanged);
|
||||
//
|
||||
// downloadFolderLabel
|
||||
//
|
||||
this.downloadFolderLabel.AutoSize = true;
|
||||
this.downloadFolderLabel.Location = new System.Drawing.Point(15, 200);
|
||||
this.downloadFolderLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.downloadFolderLabel.Location = new System.Drawing.Point(18, 240);
|
||||
this.downloadFolderLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.downloadFolderLabel.Name = "downloadFolderLabel";
|
||||
this.downloadFolderLabel.Size = new System.Drawing.Size(124, 20);
|
||||
this.downloadFolderLabel.Size = new System.Drawing.Size(152, 25);
|
||||
this.downloadFolderLabel.TabIndex = 8;
|
||||
this.downloadFolderLabel.Text = "Download folder";
|
||||
//
|
||||
// jobDescription
|
||||
//
|
||||
this.jobDescription.Location = new System.Drawing.Point(16, 140);
|
||||
this.jobDescription.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobDescription.Location = new System.Drawing.Point(20, 168);
|
||||
this.jobDescription.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobDescription.Multiline = true;
|
||||
this.jobDescription.Name = "jobDescription";
|
||||
this.jobDescription.Size = new System.Drawing.Size(314, 52);
|
||||
this.jobDescription.Size = new System.Drawing.Size(383, 62);
|
||||
this.jobDescription.TabIndex = 3;
|
||||
//
|
||||
// jobDescriptionLabel
|
||||
//
|
||||
this.jobDescriptionLabel.AutoSize = true;
|
||||
this.jobDescriptionLabel.Location = new System.Drawing.Point(14, 114);
|
||||
this.jobDescriptionLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.jobDescriptionLabel.Location = new System.Drawing.Point(17, 137);
|
||||
this.jobDescriptionLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.jobDescriptionLabel.Name = "jobDescriptionLabel";
|
||||
this.jobDescriptionLabel.Size = new System.Drawing.Size(89, 20);
|
||||
this.jobDescriptionLabel.Size = new System.Drawing.Size(109, 25);
|
||||
this.jobDescriptionLabel.TabIndex = 4;
|
||||
this.jobDescriptionLabel.Text = "Description";
|
||||
//
|
||||
|
@ -348,38 +354,38 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.jobGroupComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.jobGroupComboBox.FormattingEnabled = true;
|
||||
this.jobGroupComboBox.Location = new System.Drawing.Point(75, 75);
|
||||
this.jobGroupComboBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobGroupComboBox.Location = new System.Drawing.Point(92, 90);
|
||||
this.jobGroupComboBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobGroupComboBox.Name = "jobGroupComboBox";
|
||||
this.jobGroupComboBox.Size = new System.Drawing.Size(258, 28);
|
||||
this.jobGroupComboBox.Size = new System.Drawing.Size(314, 32);
|
||||
this.jobGroupComboBox.Sorted = true;
|
||||
this.jobGroupComboBox.TabIndex = 2;
|
||||
//
|
||||
// jobGroupLabel
|
||||
//
|
||||
this.jobGroupLabel.AutoSize = true;
|
||||
this.jobGroupLabel.Location = new System.Drawing.Point(14, 80);
|
||||
this.jobGroupLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.jobGroupLabel.Location = new System.Drawing.Point(17, 96);
|
||||
this.jobGroupLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.jobGroupLabel.Name = "jobGroupLabel";
|
||||
this.jobGroupLabel.Size = new System.Drawing.Size(54, 20);
|
||||
this.jobGroupLabel.Size = new System.Drawing.Size(66, 25);
|
||||
this.jobGroupLabel.TabIndex = 2;
|
||||
this.jobGroupLabel.Text = "Group";
|
||||
//
|
||||
// jobName
|
||||
//
|
||||
this.jobName.Location = new System.Drawing.Point(75, 26);
|
||||
this.jobName.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobName.Location = new System.Drawing.Point(92, 31);
|
||||
this.jobName.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobName.Name = "jobName";
|
||||
this.jobName.Size = new System.Drawing.Size(258, 26);
|
||||
this.jobName.Size = new System.Drawing.Size(314, 29);
|
||||
this.jobName.TabIndex = 1;
|
||||
//
|
||||
// jobNameLabel
|
||||
//
|
||||
this.jobNameLabel.AutoSize = true;
|
||||
this.jobNameLabel.Location = new System.Drawing.Point(14, 31);
|
||||
this.jobNameLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.jobNameLabel.Location = new System.Drawing.Point(17, 37);
|
||||
this.jobNameLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.jobNameLabel.Name = "jobNameLabel";
|
||||
this.jobNameLabel.Size = new System.Drawing.Size(51, 20);
|
||||
this.jobNameLabel.Size = new System.Drawing.Size(64, 25);
|
||||
this.jobNameLabel.TabIndex = 0;
|
||||
this.jobNameLabel.Text = "Name";
|
||||
//
|
||||
|
@ -392,11 +398,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.axDetailsGroupBox.Controls.Add(this.userComboBox);
|
||||
this.axDetailsGroupBox.Controls.Add(this.instanceLabel);
|
||||
this.axDetailsGroupBox.Controls.Add(this.instanceComboBox);
|
||||
this.axDetailsGroupBox.Location = new System.Drawing.Point(370, 20);
|
||||
this.axDetailsGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.axDetailsGroupBox.Location = new System.Drawing.Point(452, 24);
|
||||
this.axDetailsGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.axDetailsGroupBox.Name = "axDetailsGroupBox";
|
||||
this.axDetailsGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.axDetailsGroupBox.Size = new System.Drawing.Size(345, 195);
|
||||
this.axDetailsGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.axDetailsGroupBox.Size = new System.Drawing.Size(422, 234);
|
||||
this.axDetailsGroupBox.TabIndex = 1;
|
||||
this.axDetailsGroupBox.TabStop = false;
|
||||
this.axDetailsGroupBox.Text = "Dynamics details";
|
||||
|
@ -404,10 +410,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// aadApplicationLabel
|
||||
//
|
||||
this.aadApplicationLabel.AutoSize = true;
|
||||
this.aadApplicationLabel.Location = new System.Drawing.Point(14, 120);
|
||||
this.aadApplicationLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.aadApplicationLabel.Location = new System.Drawing.Point(17, 144);
|
||||
this.aadApplicationLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.aadApplicationLabel.Name = "aadApplicationLabel";
|
||||
this.aadApplicationLabel.Size = new System.Drawing.Size(123, 20);
|
||||
this.aadApplicationLabel.Size = new System.Drawing.Size(152, 25);
|
||||
this.aadApplicationLabel.TabIndex = 34;
|
||||
this.aadApplicationLabel.Text = "AAD application";
|
||||
//
|
||||
|
@ -415,29 +421,29 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.aadApplicationComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.aadApplicationComboBox.FormattingEnabled = true;
|
||||
this.aadApplicationComboBox.Location = new System.Drawing.Point(154, 115);
|
||||
this.aadApplicationComboBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.aadApplicationComboBox.Location = new System.Drawing.Point(188, 138);
|
||||
this.aadApplicationComboBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.aadApplicationComboBox.Name = "aadApplicationComboBox";
|
||||
this.aadApplicationComboBox.Size = new System.Drawing.Size(180, 28);
|
||||
this.aadApplicationComboBox.Size = new System.Drawing.Size(219, 32);
|
||||
this.aadApplicationComboBox.TabIndex = 17;
|
||||
//
|
||||
// authMethodPanel
|
||||
//
|
||||
this.authMethodPanel.Controls.Add(this.serviceAuthRadioButton);
|
||||
this.authMethodPanel.Controls.Add(this.userAuthRadioButton);
|
||||
this.authMethodPanel.Location = new System.Drawing.Point(12, 68);
|
||||
this.authMethodPanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.authMethodPanel.Location = new System.Drawing.Point(15, 82);
|
||||
this.authMethodPanel.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.authMethodPanel.Name = "authMethodPanel";
|
||||
this.authMethodPanel.Size = new System.Drawing.Size(322, 38);
|
||||
this.authMethodPanel.Size = new System.Drawing.Size(394, 46);
|
||||
this.authMethodPanel.TabIndex = 31;
|
||||
//
|
||||
// serviceAuthRadioButton
|
||||
//
|
||||
this.serviceAuthRadioButton.AutoSize = true;
|
||||
this.serviceAuthRadioButton.Location = new System.Drawing.Point(177, 5);
|
||||
this.serviceAuthRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.serviceAuthRadioButton.Location = new System.Drawing.Point(216, 6);
|
||||
this.serviceAuthRadioButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.serviceAuthRadioButton.Name = "serviceAuthRadioButton";
|
||||
this.serviceAuthRadioButton.Size = new System.Drawing.Size(122, 24);
|
||||
this.serviceAuthRadioButton.Size = new System.Drawing.Size(146, 29);
|
||||
this.serviceAuthRadioButton.TabIndex = 16;
|
||||
this.serviceAuthRadioButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Service_auth;
|
||||
this.serviceAuthRadioButton.UseVisualStyleBackColor = true;
|
||||
|
@ -447,10 +453,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.userAuthRadioButton.AutoSize = true;
|
||||
this.userAuthRadioButton.Checked = true;
|
||||
this.userAuthRadioButton.Location = new System.Drawing.Point(4, 5);
|
||||
this.userAuthRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.userAuthRadioButton.Location = new System.Drawing.Point(5, 6);
|
||||
this.userAuthRadioButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.userAuthRadioButton.Name = "userAuthRadioButton";
|
||||
this.userAuthRadioButton.Size = new System.Drawing.Size(104, 24);
|
||||
this.userAuthRadioButton.Size = new System.Drawing.Size(121, 29);
|
||||
this.userAuthRadioButton.TabIndex = 15;
|
||||
this.userAuthRadioButton.TabStop = true;
|
||||
this.userAuthRadioButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.User_auth;
|
||||
|
@ -459,10 +465,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// userLabel
|
||||
//
|
||||
this.userLabel.AutoSize = true;
|
||||
this.userLabel.Location = new System.Drawing.Point(93, 160);
|
||||
this.userLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.userLabel.Location = new System.Drawing.Point(114, 192);
|
||||
this.userLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.userLabel.Name = "userLabel";
|
||||
this.userLabel.Size = new System.Drawing.Size(43, 20);
|
||||
this.userLabel.Size = new System.Drawing.Size(53, 25);
|
||||
this.userLabel.TabIndex = 19;
|
||||
this.userLabel.Text = "User";
|
||||
//
|
||||
|
@ -470,19 +476,19 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.userComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.userComboBox.FormattingEnabled = true;
|
||||
this.userComboBox.Location = new System.Drawing.Point(154, 155);
|
||||
this.userComboBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.userComboBox.Location = new System.Drawing.Point(188, 186);
|
||||
this.userComboBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.userComboBox.Name = "userComboBox";
|
||||
this.userComboBox.Size = new System.Drawing.Size(180, 28);
|
||||
this.userComboBox.Size = new System.Drawing.Size(219, 32);
|
||||
this.userComboBox.TabIndex = 18;
|
||||
//
|
||||
// instanceLabel
|
||||
//
|
||||
this.instanceLabel.AutoSize = true;
|
||||
this.instanceLabel.Location = new System.Drawing.Point(28, 31);
|
||||
this.instanceLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.instanceLabel.Location = new System.Drawing.Point(34, 37);
|
||||
this.instanceLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.instanceLabel.Name = "instanceLabel";
|
||||
this.instanceLabel.Size = new System.Drawing.Size(71, 20);
|
||||
this.instanceLabel.Size = new System.Drawing.Size(86, 25);
|
||||
this.instanceLabel.TabIndex = 16;
|
||||
this.instanceLabel.Text = "Instance";
|
||||
//
|
||||
|
@ -490,10 +496,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.instanceComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.instanceComboBox.FormattingEnabled = true;
|
||||
this.instanceComboBox.Location = new System.Drawing.Point(114, 26);
|
||||
this.instanceComboBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.instanceComboBox.Location = new System.Drawing.Point(139, 31);
|
||||
this.instanceComboBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.instanceComboBox.Name = "instanceComboBox";
|
||||
this.instanceComboBox.Size = new System.Drawing.Size(218, 28);
|
||||
this.instanceComboBox.Size = new System.Drawing.Size(266, 32);
|
||||
this.instanceComboBox.TabIndex = 14;
|
||||
//
|
||||
// recurrenceGroupBox
|
||||
|
@ -515,11 +521,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.recurrenceGroupBox.Controls.Add(this.startAtDateTimePicker);
|
||||
this.recurrenceGroupBox.Controls.Add(this.minutesDateTimePicker);
|
||||
this.recurrenceGroupBox.Controls.Add(this.hoursDateTimePicker);
|
||||
this.recurrenceGroupBox.Location = new System.Drawing.Point(724, 20);
|
||||
this.recurrenceGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.recurrenceGroupBox.Location = new System.Drawing.Point(885, 24);
|
||||
this.recurrenceGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.recurrenceGroupBox.Name = "recurrenceGroupBox";
|
||||
this.recurrenceGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.recurrenceGroupBox.Size = new System.Drawing.Size(345, 700);
|
||||
this.recurrenceGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.recurrenceGroupBox.Size = new System.Drawing.Size(422, 840);
|
||||
this.recurrenceGroupBox.TabIndex = 2;
|
||||
this.recurrenceGroupBox.TabStop = false;
|
||||
this.recurrenceGroupBox.Text = "Recurrence";
|
||||
|
@ -527,19 +533,20 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// pauseIndefinitelyCheckBox
|
||||
//
|
||||
this.pauseIndefinitelyCheckBox.AutoSize = true;
|
||||
this.pauseIndefinitelyCheckBox.Location = new System.Drawing.Point(14, 35);
|
||||
this.pauseIndefinitelyCheckBox.Location = new System.Drawing.Point(17, 42);
|
||||
this.pauseIndefinitelyCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
|
||||
this.pauseIndefinitelyCheckBox.Name = "pauseIndefinitelyCheckBox";
|
||||
this.pauseIndefinitelyCheckBox.Size = new System.Drawing.Size(183, 24);
|
||||
this.pauseIndefinitelyCheckBox.Size = new System.Drawing.Size(221, 29);
|
||||
this.pauseIndefinitelyCheckBox.TabIndex = 0;
|
||||
this.pauseIndefinitelyCheckBox.Text = "Pause job indefinitely";
|
||||
this.pauseIndefinitelyCheckBox.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// moreExamplesButton
|
||||
//
|
||||
this.moreExamplesButton.Location = new System.Drawing.Point(237, 585);
|
||||
this.moreExamplesButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.moreExamplesButton.Location = new System.Drawing.Point(290, 702);
|
||||
this.moreExamplesButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.moreExamplesButton.Name = "moreExamplesButton";
|
||||
this.moreExamplesButton.Size = new System.Drawing.Size(99, 102);
|
||||
this.moreExamplesButton.Size = new System.Drawing.Size(121, 122);
|
||||
this.moreExamplesButton.TabIndex = 27;
|
||||
this.moreExamplesButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.More_examples;
|
||||
this.moreExamplesButton.UseVisualStyleBackColor = true;
|
||||
|
@ -548,22 +555,22 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// calculatedRunsTextBox
|
||||
//
|
||||
this.calculatedRunsTextBox.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.calculatedRunsTextBox.Location = new System.Drawing.Point(9, 585);
|
||||
this.calculatedRunsTextBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.calculatedRunsTextBox.Location = new System.Drawing.Point(11, 702);
|
||||
this.calculatedRunsTextBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.calculatedRunsTextBox.Multiline = true;
|
||||
this.calculatedRunsTextBox.Name = "calculatedRunsTextBox";
|
||||
this.calculatedRunsTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
|
||||
this.calculatedRunsTextBox.Size = new System.Drawing.Size(216, 99);
|
||||
this.calculatedRunsTextBox.Size = new System.Drawing.Size(263, 118);
|
||||
this.calculatedRunsTextBox.TabIndex = 26;
|
||||
this.calculatedRunsTextBox.TabStop = false;
|
||||
//
|
||||
// calculateNextRunsButton
|
||||
//
|
||||
this.calculateNextRunsButton.Enabled = false;
|
||||
this.calculateNextRunsButton.Location = new System.Drawing.Point(9, 535);
|
||||
this.calculateNextRunsButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.calculateNextRunsButton.Location = new System.Drawing.Point(11, 642);
|
||||
this.calculateNextRunsButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.calculateNextRunsButton.Name = "calculateNextRunsButton";
|
||||
this.calculateNextRunsButton.Size = new System.Drawing.Size(327, 35);
|
||||
this.calculateNextRunsButton.Size = new System.Drawing.Size(400, 42);
|
||||
this.calculateNextRunsButton.TabIndex = 25;
|
||||
this.calculateNextRunsButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Calculate_next_100_runs_of_cron_trigger;
|
||||
this.calculateNextRunsButton.UseVisualStyleBackColor = true;
|
||||
|
@ -572,10 +579,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// cronDocsLinkLabel
|
||||
//
|
||||
this.cronDocsLinkLabel.AutoSize = true;
|
||||
this.cronDocsLinkLabel.Location = new System.Drawing.Point(9, 505);
|
||||
this.cronDocsLinkLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.cronDocsLinkLabel.Location = new System.Drawing.Point(11, 606);
|
||||
this.cronDocsLinkLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.cronDocsLinkLabel.Name = "cronDocsLinkLabel";
|
||||
this.cronDocsLinkLabel.Size = new System.Drawing.Size(259, 20);
|
||||
this.cronDocsLinkLabel.Size = new System.Drawing.Size(316, 25);
|
||||
this.cronDocsLinkLabel.TabIndex = 30;
|
||||
this.cronDocsLinkLabel.TabStop = true;
|
||||
this.cronDocsLinkLabel.Text = "Quartz cron triggers documentation";
|
||||
|
@ -585,19 +592,19 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.triggerTypePanel.Controls.Add(this.cronTriggerRadioButton);
|
||||
this.triggerTypePanel.Controls.Add(this.simpleTriggerRadioButton);
|
||||
this.triggerTypePanel.Location = new System.Drawing.Point(14, 120);
|
||||
this.triggerTypePanel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.triggerTypePanel.Location = new System.Drawing.Point(17, 144);
|
||||
this.triggerTypePanel.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.triggerTypePanel.Name = "triggerTypePanel";
|
||||
this.triggerTypePanel.Size = new System.Drawing.Size(321, 35);
|
||||
this.triggerTypePanel.Size = new System.Drawing.Size(392, 42);
|
||||
this.triggerTypePanel.TabIndex = 29;
|
||||
//
|
||||
// cronTriggerRadioButton
|
||||
//
|
||||
this.cronTriggerRadioButton.AutoSize = true;
|
||||
this.cronTriggerRadioButton.Location = new System.Drawing.Point(194, 8);
|
||||
this.cronTriggerRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.cronTriggerRadioButton.Location = new System.Drawing.Point(237, 10);
|
||||
this.cronTriggerRadioButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.cronTriggerRadioButton.Name = "cronTriggerRadioButton";
|
||||
this.cronTriggerRadioButton.Size = new System.Drawing.Size(117, 24);
|
||||
this.cronTriggerRadioButton.Size = new System.Drawing.Size(139, 29);
|
||||
this.cronTriggerRadioButton.TabIndex = 23;
|
||||
this.cronTriggerRadioButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Cron_trigger;
|
||||
this.cronTriggerRadioButton.UseVisualStyleBackColor = true;
|
||||
|
@ -607,10 +614,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.simpleTriggerRadioButton.AutoSize = true;
|
||||
this.simpleTriggerRadioButton.Checked = true;
|
||||
this.simpleTriggerRadioButton.Location = new System.Drawing.Point(4, 5);
|
||||
this.simpleTriggerRadioButton.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.simpleTriggerRadioButton.Location = new System.Drawing.Point(5, 6);
|
||||
this.simpleTriggerRadioButton.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.simpleTriggerRadioButton.Name = "simpleTriggerRadioButton";
|
||||
this.simpleTriggerRadioButton.Size = new System.Drawing.Size(131, 24);
|
||||
this.simpleTriggerRadioButton.Size = new System.Drawing.Size(156, 29);
|
||||
this.simpleTriggerRadioButton.TabIndex = 22;
|
||||
this.simpleTriggerRadioButton.TabStop = true;
|
||||
this.simpleTriggerRadioButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Simple_trigger;
|
||||
|
@ -619,10 +626,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// buildCronLabel
|
||||
//
|
||||
this.buildCronLabel.AutoSize = true;
|
||||
this.buildCronLabel.Location = new System.Drawing.Point(9, 472);
|
||||
this.buildCronLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.buildCronLabel.Location = new System.Drawing.Point(11, 566);
|
||||
this.buildCronLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.buildCronLabel.Name = "buildCronLabel";
|
||||
this.buildCronLabel.Size = new System.Drawing.Size(177, 20);
|
||||
this.buildCronLabel.Size = new System.Drawing.Size(219, 25);
|
||||
this.buildCronLabel.TabIndex = 26;
|
||||
this.buildCronLabel.Text = "Build cron expression at";
|
||||
//
|
||||
|
@ -630,11 +637,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.cronTriggerInfoTextBox.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.cronTriggerInfoTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.cronTriggerInfoTextBox.Location = new System.Drawing.Point(14, 229);
|
||||
this.cronTriggerInfoTextBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.cronTriggerInfoTextBox.Location = new System.Drawing.Point(17, 275);
|
||||
this.cronTriggerInfoTextBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.cronTriggerInfoTextBox.Multiline = true;
|
||||
this.cronTriggerInfoTextBox.Name = "cronTriggerInfoTextBox";
|
||||
this.cronTriggerInfoTextBox.Size = new System.Drawing.Size(312, 238);
|
||||
this.cronTriggerInfoTextBox.Size = new System.Drawing.Size(381, 286);
|
||||
this.cronTriggerInfoTextBox.TabIndex = 25;
|
||||
this.cronTriggerInfoTextBox.TabStop = false;
|
||||
this.cronTriggerInfoTextBox.Text = resources.GetString("cronTriggerInfoTextBox.Text");
|
||||
|
@ -642,10 +649,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// cronmakerLinkLabel
|
||||
//
|
||||
this.cronmakerLinkLabel.AutoSize = true;
|
||||
this.cronmakerLinkLabel.Location = new System.Drawing.Point(186, 472);
|
||||
this.cronmakerLinkLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.cronmakerLinkLabel.Location = new System.Drawing.Point(227, 566);
|
||||
this.cronmakerLinkLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.cronmakerLinkLabel.Name = "cronmakerLinkLabel";
|
||||
this.cronmakerLinkLabel.Size = new System.Drawing.Size(118, 20);
|
||||
this.cronmakerLinkLabel.Size = new System.Drawing.Size(146, 25);
|
||||
this.cronmakerLinkLabel.TabIndex = 24;
|
||||
this.cronmakerLinkLabel.TabStop = true;
|
||||
this.cronmakerLinkLabel.Text = "cronmaker.com";
|
||||
|
@ -654,30 +661,30 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// cronExpressionLabel
|
||||
//
|
||||
this.cronExpressionLabel.AutoSize = true;
|
||||
this.cronExpressionLabel.Location = new System.Drawing.Point(9, 165);
|
||||
this.cronExpressionLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.cronExpressionLabel.Location = new System.Drawing.Point(11, 198);
|
||||
this.cronExpressionLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.cronExpressionLabel.Name = "cronExpressionLabel";
|
||||
this.cronExpressionLabel.Size = new System.Drawing.Size(123, 20);
|
||||
this.cronExpressionLabel.Size = new System.Drawing.Size(155, 25);
|
||||
this.cronExpressionLabel.TabIndex = 23;
|
||||
this.cronExpressionLabel.Text = "Cron expression";
|
||||
//
|
||||
// cronExpressionTextBox
|
||||
//
|
||||
this.cronExpressionTextBox.Enabled = false;
|
||||
this.cronExpressionTextBox.Location = new System.Drawing.Point(14, 189);
|
||||
this.cronExpressionTextBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.cronExpressionTextBox.Location = new System.Drawing.Point(17, 227);
|
||||
this.cronExpressionTextBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.cronExpressionTextBox.Name = "cronExpressionTextBox";
|
||||
this.cronExpressionTextBox.Size = new System.Drawing.Size(320, 26);
|
||||
this.cronExpressionTextBox.Size = new System.Drawing.Size(390, 29);
|
||||
this.cronExpressionTextBox.TabIndex = 24;
|
||||
this.cronExpressionTextBox.Text = "0 0/15 8-18 ? * MON-FRI *";
|
||||
//
|
||||
// minutesLabel
|
||||
//
|
||||
this.minutesLabel.AutoSize = true;
|
||||
this.minutesLabel.Location = new System.Drawing.Point(96, 85);
|
||||
this.minutesLabel.Location = new System.Drawing.Point(117, 102);
|
||||
this.minutesLabel.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.minutesLabel.Name = "minutesLabel";
|
||||
this.minutesLabel.Size = new System.Drawing.Size(26, 20);
|
||||
this.minutesLabel.Size = new System.Drawing.Size(35, 25);
|
||||
this.minutesLabel.TabIndex = 5;
|
||||
this.minutesLabel.Text = "M:";
|
||||
this.minutesLabel.TextAlign = System.Drawing.ContentAlignment.TopRight;
|
||||
|
@ -685,10 +692,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// hoursLabel
|
||||
//
|
||||
this.hoursLabel.AutoSize = true;
|
||||
this.hoursLabel.Location = new System.Drawing.Point(9, 85);
|
||||
this.hoursLabel.Location = new System.Drawing.Point(11, 102);
|
||||
this.hoursLabel.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.hoursLabel.Name = "hoursLabel";
|
||||
this.hoursLabel.Size = new System.Drawing.Size(25, 20);
|
||||
this.hoursLabel.Size = new System.Drawing.Size(32, 25);
|
||||
this.hoursLabel.TabIndex = 4;
|
||||
this.hoursLabel.Text = "H:";
|
||||
this.hoursLabel.TextAlign = System.Drawing.ContentAlignment.TopRight;
|
||||
|
@ -696,10 +703,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// startAtLabel
|
||||
//
|
||||
this.startAtLabel.AutoSize = true;
|
||||
this.startAtLabel.Location = new System.Drawing.Point(189, 85);
|
||||
this.startAtLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.startAtLabel.Location = new System.Drawing.Point(231, 102);
|
||||
this.startAtLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.startAtLabel.Name = "startAtLabel";
|
||||
this.startAtLabel.Size = new System.Drawing.Size(59, 20);
|
||||
this.startAtLabel.Size = new System.Drawing.Size(70, 25);
|
||||
this.startAtLabel.TabIndex = 3;
|
||||
this.startAtLabel.Text = "start at";
|
||||
this.startAtLabel.TextAlign = System.Drawing.ContentAlignment.TopRight;
|
||||
|
@ -708,11 +715,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.startAtDateTimePicker.CustomFormat = "HH:mm";
|
||||
this.startAtDateTimePicker.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
|
||||
this.startAtDateTimePicker.Location = new System.Drawing.Point(248, 80);
|
||||
this.startAtDateTimePicker.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.startAtDateTimePicker.Location = new System.Drawing.Point(303, 96);
|
||||
this.startAtDateTimePicker.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.startAtDateTimePicker.Name = "startAtDateTimePicker";
|
||||
this.startAtDateTimePicker.ShowUpDown = true;
|
||||
this.startAtDateTimePicker.Size = new System.Drawing.Size(76, 26);
|
||||
this.startAtDateTimePicker.Size = new System.Drawing.Size(92, 29);
|
||||
this.startAtDateTimePicker.TabIndex = 21;
|
||||
this.startAtDateTimePicker.Value = new System.DateTime(2016, 6, 26, 0, 0, 0, 0);
|
||||
//
|
||||
|
@ -720,11 +727,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.minutesDateTimePicker.CustomFormat = "mm";
|
||||
this.minutesDateTimePicker.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
|
||||
this.minutesDateTimePicker.Location = new System.Drawing.Point(124, 80);
|
||||
this.minutesDateTimePicker.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.minutesDateTimePicker.Location = new System.Drawing.Point(152, 96);
|
||||
this.minutesDateTimePicker.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.minutesDateTimePicker.Name = "minutesDateTimePicker";
|
||||
this.minutesDateTimePicker.ShowUpDown = true;
|
||||
this.minutesDateTimePicker.Size = new System.Drawing.Size(50, 26);
|
||||
this.minutesDateTimePicker.Size = new System.Drawing.Size(60, 29);
|
||||
this.minutesDateTimePicker.TabIndex = 20;
|
||||
this.minutesDateTimePicker.Value = new System.DateTime(2016, 6, 26, 0, 1, 0, 0);
|
||||
//
|
||||
|
@ -732,11 +739,11 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.hoursDateTimePicker.CustomFormat = "HH";
|
||||
this.hoursDateTimePicker.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
|
||||
this.hoursDateTimePicker.Location = new System.Drawing.Point(36, 80);
|
||||
this.hoursDateTimePicker.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.hoursDateTimePicker.Location = new System.Drawing.Point(44, 96);
|
||||
this.hoursDateTimePicker.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.hoursDateTimePicker.Name = "hoursDateTimePicker";
|
||||
this.hoursDateTimePicker.ShowUpDown = true;
|
||||
this.hoursDateTimePicker.Size = new System.Drawing.Size(50, 26);
|
||||
this.hoursDateTimePicker.Size = new System.Drawing.Size(60, 29);
|
||||
this.hoursDateTimePicker.TabIndex = 19;
|
||||
this.hoursDateTimePicker.Value = new System.DateTime(2016, 6, 26, 0, 0, 0, 0);
|
||||
//
|
||||
|
@ -746,26 +753,26 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.retryPolicyGroupBox.Controls.Add(this.retriesCountUpDown);
|
||||
this.retryPolicyGroupBox.Controls.Add(this.label2);
|
||||
this.retryPolicyGroupBox.Controls.Add(this.label1);
|
||||
this.retryPolicyGroupBox.Location = new System.Drawing.Point(369, 225);
|
||||
this.retryPolicyGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.retryPolicyGroupBox.Location = new System.Drawing.Point(451, 270);
|
||||
this.retryPolicyGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.retryPolicyGroupBox.Name = "retryPolicyGroupBox";
|
||||
this.retryPolicyGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.retryPolicyGroupBox.Size = new System.Drawing.Size(346, 103);
|
||||
this.retryPolicyGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.retryPolicyGroupBox.Size = new System.Drawing.Size(423, 124);
|
||||
this.retryPolicyGroupBox.TabIndex = 7;
|
||||
this.retryPolicyGroupBox.TabStop = false;
|
||||
this.retryPolicyGroupBox.Text = "Retry policy";
|
||||
//
|
||||
// retriesDelayUpDown
|
||||
//
|
||||
this.retriesDelayUpDown.Location = new System.Drawing.Point(156, 60);
|
||||
this.retriesDelayUpDown.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.retriesDelayUpDown.Location = new System.Drawing.Point(191, 72);
|
||||
this.retriesDelayUpDown.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.retriesDelayUpDown.Maximum = new decimal(new int[] {
|
||||
86400,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.retriesDelayUpDown.Name = "retriesDelayUpDown";
|
||||
this.retriesDelayUpDown.Size = new System.Drawing.Size(99, 26);
|
||||
this.retriesDelayUpDown.Size = new System.Drawing.Size(121, 29);
|
||||
this.retriesDelayUpDown.TabIndex = 7;
|
||||
this.retriesDelayUpDown.Value = new decimal(new int[] {
|
||||
60,
|
||||
|
@ -775,15 +782,15 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// retriesCountUpDown
|
||||
//
|
||||
this.retriesCountUpDown.Location = new System.Drawing.Point(156, 23);
|
||||
this.retriesCountUpDown.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.retriesCountUpDown.Location = new System.Drawing.Point(191, 28);
|
||||
this.retriesCountUpDown.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.retriesCountUpDown.Maximum = new decimal(new int[] {
|
||||
9999,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.retriesCountUpDown.Name = "retriesCountUpDown";
|
||||
this.retriesCountUpDown.Size = new System.Drawing.Size(99, 26);
|
||||
this.retriesCountUpDown.Size = new System.Drawing.Size(121, 29);
|
||||
this.retriesCountUpDown.TabIndex = 6;
|
||||
this.retriesCountUpDown.Value = new decimal(new int[] {
|
||||
1,
|
||||
|
@ -794,29 +801,31 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(10, 68);
|
||||
this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.label2.Location = new System.Drawing.Point(12, 82);
|
||||
this.label2.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(123, 20);
|
||||
this.label2.Size = new System.Drawing.Size(155, 25);
|
||||
this.label2.TabIndex = 2;
|
||||
this.label2.Text = "Delay (seconds)";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(10, 31);
|
||||
this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.label1.Location = new System.Drawing.Point(12, 37);
|
||||
this.label1.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(131, 20);
|
||||
this.label1.Size = new System.Drawing.Size(160, 25);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "Number of retries";
|
||||
//
|
||||
// groupBoxExceptions
|
||||
//
|
||||
this.groupBoxExceptions.Controls.Add(this.pauseOnExceptionsCheckBox);
|
||||
this.groupBoxExceptions.Location = new System.Drawing.Point(369, 335);
|
||||
this.groupBoxExceptions.Location = new System.Drawing.Point(451, 402);
|
||||
this.groupBoxExceptions.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
|
||||
this.groupBoxExceptions.Name = "groupBoxExceptions";
|
||||
this.groupBoxExceptions.Size = new System.Drawing.Size(345, 58);
|
||||
this.groupBoxExceptions.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
|
||||
this.groupBoxExceptions.Size = new System.Drawing.Size(422, 70);
|
||||
this.groupBoxExceptions.TabIndex = 10;
|
||||
this.groupBoxExceptions.TabStop = false;
|
||||
this.groupBoxExceptions.Text = "Exceptions";
|
||||
|
@ -826,9 +835,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.pauseOnExceptionsCheckBox.AutoSize = true;
|
||||
this.pauseOnExceptionsCheckBox.Checked = true;
|
||||
this.pauseOnExceptionsCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.pauseOnExceptionsCheckBox.Location = new System.Drawing.Point(14, 26);
|
||||
this.pauseOnExceptionsCheckBox.Location = new System.Drawing.Point(17, 31);
|
||||
this.pauseOnExceptionsCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
|
||||
this.pauseOnExceptionsCheckBox.Name = "pauseOnExceptionsCheckBox";
|
||||
this.pauseOnExceptionsCheckBox.Size = new System.Drawing.Size(270, 24);
|
||||
this.pauseOnExceptionsCheckBox.Size = new System.Drawing.Size(329, 29);
|
||||
this.pauseOnExceptionsCheckBox.TabIndex = 0;
|
||||
this.pauseOnExceptionsCheckBox.Text = "Pause job when exception occurs";
|
||||
this.pauseOnExceptionsCheckBox.UseVisualStyleBackColor = true;
|
||||
|
@ -838,17 +848,20 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.groupBoxButtons.Controls.Add(this.addJobButton);
|
||||
this.groupBoxButtons.Controls.Add(this.cancelButton);
|
||||
this.groupBoxButtons.Controls.Add(this.customActionsButton);
|
||||
this.groupBoxButtons.Location = new System.Drawing.Point(14, 728);
|
||||
this.groupBoxButtons.Location = new System.Drawing.Point(17, 874);
|
||||
this.groupBoxButtons.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
|
||||
this.groupBoxButtons.Name = "groupBoxButtons";
|
||||
this.groupBoxButtons.Size = new System.Drawing.Size(1055, 71);
|
||||
this.groupBoxButtons.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
|
||||
this.groupBoxButtons.Size = new System.Drawing.Size(1289, 85);
|
||||
this.groupBoxButtons.TabIndex = 11;
|
||||
this.groupBoxButtons.TabStop = false;
|
||||
//
|
||||
// addJobButton
|
||||
//
|
||||
this.addJobButton.Location = new System.Drawing.Point(709, 25);
|
||||
this.addJobButton.Location = new System.Drawing.Point(867, 30);
|
||||
this.addJobButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
|
||||
this.addJobButton.Name = "addJobButton";
|
||||
this.addJobButton.Size = new System.Drawing.Size(162, 34);
|
||||
this.addJobButton.Size = new System.Drawing.Size(198, 41);
|
||||
this.addJobButton.TabIndex = 2;
|
||||
this.addJobButton.Text = "Add to schedule";
|
||||
this.addJobButton.UseVisualStyleBackColor = true;
|
||||
|
@ -856,9 +869,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// cancelButton
|
||||
//
|
||||
this.cancelButton.Location = new System.Drawing.Point(887, 25);
|
||||
this.cancelButton.Location = new System.Drawing.Point(1084, 30);
|
||||
this.cancelButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
|
||||
this.cancelButton.Name = "cancelButton";
|
||||
this.cancelButton.Size = new System.Drawing.Size(162, 34);
|
||||
this.cancelButton.Size = new System.Drawing.Size(198, 41);
|
||||
this.cancelButton.TabIndex = 1;
|
||||
this.cancelButton.Text = "Cancel";
|
||||
this.cancelButton.UseVisualStyleBackColor = true;
|
||||
|
@ -866,21 +880,54 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// customActionsButton
|
||||
//
|
||||
this.customActionsButton.Location = new System.Drawing.Point(6, 25);
|
||||
this.customActionsButton.Location = new System.Drawing.Point(7, 30);
|
||||
this.customActionsButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
|
||||
this.customActionsButton.Name = "customActionsButton";
|
||||
this.customActionsButton.Size = new System.Drawing.Size(288, 34);
|
||||
this.customActionsButton.Size = new System.Drawing.Size(352, 41);
|
||||
this.customActionsButton.TabIndex = 0;
|
||||
this.customActionsButton.Text = "Custom Odata actions";
|
||||
this.customActionsButton.UseVisualStyleBackColor = true;
|
||||
this.customActionsButton.Click += new System.EventHandler(this.CustomActionsButton_Click);
|
||||
//
|
||||
// intervalLabel
|
||||
//
|
||||
this.intervalLabel.Location = new System.Drawing.Point(18, 686);
|
||||
this.intervalLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.intervalLabel.Name = "intervalLabel";
|
||||
this.intervalLabel.Size = new System.Drawing.Size(273, 77);
|
||||
this.intervalLabel.TabIndex = 24;
|
||||
this.intervalLabel.Text = "Delay between attempts to download exported package (seconds)";
|
||||
//
|
||||
// numericUpDownInterval
|
||||
//
|
||||
this.numericUpDownInterval.Location = new System.Drawing.Point(300, 713);
|
||||
this.numericUpDownInterval.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.numericUpDownInterval.Maximum = new decimal(new int[] {
|
||||
3600,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.numericUpDownInterval.Minimum = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.numericUpDownInterval.Name = "numericUpDownInterval";
|
||||
this.numericUpDownInterval.Size = new System.Drawing.Size(105, 29);
|
||||
this.numericUpDownInterval.TabIndex = 23;
|
||||
this.numericUpDownInterval.Value = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
//
|
||||
// ExportJob
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(11F, 24F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.AutoSize = true;
|
||||
this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
|
||||
this.ClientSize = new System.Drawing.Size(1071, 811);
|
||||
this.ClientSize = new System.Drawing.Size(1309, 973);
|
||||
this.Controls.Add(this.groupBoxButtons);
|
||||
this.Controls.Add(this.groupBoxExceptions);
|
||||
this.Controls.Add(this.retryPolicyGroupBox);
|
||||
|
@ -888,10 +935,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.Controls.Add(this.axDetailsGroupBox);
|
||||
this.Controls.Add(this.jobDetailsGroupBox);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
||||
this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.MinimumSize = new System.Drawing.Size(1093, 756);
|
||||
this.MinimumSize = new System.Drawing.Size(1331, 894);
|
||||
this.Name = "ExportJob";
|
||||
this.ShowIcon = false;
|
||||
this.ShowInTaskbar = false;
|
||||
|
@ -900,7 +947,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.Load += new System.EventHandler(this.ExportJobForm_Load);
|
||||
this.jobDetailsGroupBox.ResumeLayout(false);
|
||||
this.jobDetailsGroupBox.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.interval)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.statusCheckInterval)).EndInit();
|
||||
this.axDetailsGroupBox.ResumeLayout(false);
|
||||
this.axDetailsGroupBox.PerformLayout();
|
||||
this.authMethodPanel.ResumeLayout(false);
|
||||
|
@ -916,6 +963,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.groupBoxExceptions.ResumeLayout(false);
|
||||
this.groupBoxExceptions.PerformLayout();
|
||||
this.groupBoxButtons.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.numericUpDownInterval)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
@ -970,8 +1018,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
private System.Windows.Forms.ComboBox aadApplicationComboBox;
|
||||
private System.Windows.Forms.Label dataProjectLabel;
|
||||
private System.Windows.Forms.TextBox dataProject;
|
||||
private System.Windows.Forms.Label intervalLabel;
|
||||
private System.Windows.Forms.NumericUpDown interval;
|
||||
private System.Windows.Forms.Label statusCheckIntervalLabel;
|
||||
private System.Windows.Forms.NumericUpDown statusCheckInterval;
|
||||
private System.Windows.Forms.Label legalEntityLabel;
|
||||
private System.Windows.Forms.TextBox legalEntity;
|
||||
private System.Windows.Forms.CheckBox addTimestampCheckBox;
|
||||
|
@ -987,5 +1035,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
private System.Windows.Forms.Button addJobButton;
|
||||
private System.Windows.Forms.Button cancelButton;
|
||||
private System.Windows.Forms.Button customActionsButton;
|
||||
private System.Windows.Forms.Label intervalLabel;
|
||||
private System.Windows.Forms.NumericUpDown numericUpDownInterval;
|
||||
}
|
||||
}
|
|
@ -117,7 +117,9 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
|
||||
legalEntity.Text = JobDetail.JobDataMap[SettingsConstants.Company]?.ToString() ?? string.Empty;
|
||||
|
||||
interval.Value = Math.Round(Convert.ToDecimal(JobDetail.JobDataMap[SettingsConstants.Interval]) / 1000);
|
||||
statusCheckInterval.Value = Math.Round(Convert.ToDecimal(JobDetail.JobDataMap[SettingsConstants.StatusCheckInterval]));
|
||||
|
||||
numericUpDownInterval.Value = Math.Round(Convert.ToDecimal(JobDetail.JobDataMap[SettingsConstants.Interval]));
|
||||
|
||||
if (!serviceAuthRadioButton.Checked)
|
||||
{
|
||||
|
@ -399,7 +401,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
{SettingsConstants.DeletePackage, deletePackageCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.DataProject, dataProject.Text},
|
||||
{SettingsConstants.Company, legalEntity.Text},
|
||||
{SettingsConstants.Interval, (interval.Value * 1000).ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.Interval, numericUpDownInterval.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.StatusCheckInterval, statusCheckInterval.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.RetryCount, retriesCountUpDown.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.RetryDelay, retriesDelayUpDown.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.PauseJobOnException, pauseOnExceptionsCheckBox.Checked.ToString()},
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -47,6 +47,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
private string getAzureWriteUrlPath;
|
||||
private string getExecutionSummaryStatusPath;
|
||||
private string getExecutionSummaryPageUrlPath;
|
||||
private string getImportTargetErrorKeysFileUrlPath;
|
||||
private string generateImportTargetErrorKeysFilePath;
|
||||
|
||||
private void ImportJobForm_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
@ -93,6 +95,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
getAzureWriteUrlPath = OdataActionsConstants.GetAzureWriteUrlActionPath;
|
||||
getExecutionSummaryStatusPath = OdataActionsConstants.GetExecutionSummaryStatusActionPath;
|
||||
getExecutionSummaryPageUrlPath = OdataActionsConstants.GetExecutionSummaryPageUrlActionPath;
|
||||
getImportTargetErrorKeysFileUrlPath = OdataActionsConstants.GetImportTargetErrorKeysFileUrlPath;
|
||||
generateImportTargetErrorKeysFilePath = OdataActionsConstants.GenerateImportTargetErrorKeysFilePath;
|
||||
|
||||
if (ImportJobDetail != null)
|
||||
{
|
||||
|
@ -133,6 +137,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
(ImportJobDetail.JobDataMap[SettingsConstants.ExecuteImport] != null) &&
|
||||
Convert.ToBoolean(ImportJobDetail.JobDataMap[SettingsConstants.ExecuteImport].ToString());
|
||||
|
||||
numericUpDownInterval.Value = Math.Round(Convert.ToDecimal(ImportJobDetail.JobDataMap[SettingsConstants.Interval]));
|
||||
|
||||
serviceAuthRadioButton.Checked =
|
||||
(ImportJobDetail.JobDataMap[SettingsConstants.UseServiceAuthentication] != null) &&
|
||||
Convert.ToBoolean(ImportJobDetail.JobDataMap[SettingsConstants.UseServiceAuthentication].ToString());
|
||||
|
@ -285,6 +291,14 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
|
||||
getExecutionSummaryStatusPath = ExecutionJobDetail.JobDataMap[SettingsConstants.GetExecutionSummaryStatusActionPath]?.ToString() ?? OdataActionsConstants.GetExecutionSummaryStatusActionPath;
|
||||
getExecutionSummaryPageUrlPath = ExecutionJobDetail.JobDataMap[SettingsConstants.GetExecutionSummaryPageUrlActionPath]?.ToString() ?? OdataActionsConstants.GetExecutionSummaryPageUrlActionPath;
|
||||
getImportTargetErrorKeysFileUrlPath = ExecutionJobDetail.JobDataMap[SettingsConstants.GetImportTargetErrorKeysFileUrlPath]?.ToString() ?? OdataActionsConstants.GetImportTargetErrorKeysFileUrlPath;
|
||||
generateImportTargetErrorKeysFilePath = ExecutionJobDetail.JobDataMap[SettingsConstants.GenerateImportTargetErrorKeysFilePath]?.ToString() ?? OdataActionsConstants.GenerateImportTargetErrorKeysFilePath;
|
||||
|
||||
downloadErrorKeysFileCheckBox.Checked =
|
||||
(ExecutionJobDetail.JobDataMap[SettingsConstants.GetImportTargetErrorKeysFile] != null) &&
|
||||
Convert.ToBoolean(ExecutionJobDetail.JobDataMap[SettingsConstants.GetImportTargetErrorKeysFile].ToString());
|
||||
|
||||
numericUpDownStatusCheckInterval.Value = Math.Round(Convert.ToDecimal(ExecutionJobDetail.JobDataMap[SettingsConstants.StatusCheckInterval]));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -521,7 +535,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
if (upJobSimpleTriggerRadioButton.Checked)
|
||||
{
|
||||
var minutes = upJobHoursDateTimePicker.Value.Hour*60;
|
||||
minutes = minutes + upJobMinutesDateTimePicker.Value.Minute;
|
||||
minutes += upJobMinutesDateTimePicker.Value.Minute;
|
||||
|
||||
return builder.WithSimpleSchedule(x => x
|
||||
.WithIntervalInMinutes(minutes)
|
||||
|
@ -566,7 +580,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
{SettingsConstants.PauseJobOnException, pauseOnExceptionsCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.GetAzureWriteUrlActionPath, getAzureWriteUrlPath},
|
||||
{SettingsConstants.ImportFromPackageActionPath, importFromPackagePath},
|
||||
{SettingsConstants.IndefinitePause, pauseIndefinitelyCheckBox.Checked.ToString()}
|
||||
{SettingsConstants.IndefinitePause, pauseIndefinitelyCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.Interval, numericUpDownInterval.Value.ToString(CultureInfo.InvariantCulture)}
|
||||
};
|
||||
if (serviceAuthRadioButton.Checked)
|
||||
{
|
||||
|
@ -602,7 +617,12 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
{SettingsConstants.PauseJobOnException, pauseOnExceptionsCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.GetExecutionSummaryStatusActionPath, getExecutionSummaryStatusPath},
|
||||
{SettingsConstants.GetExecutionSummaryPageUrlActionPath, getExecutionSummaryPageUrlPath},
|
||||
{SettingsConstants.IndefinitePause, pauseIndefinitelyCheckBox.Checked.ToString()}
|
||||
{SettingsConstants.IndefinitePause, pauseIndefinitelyCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.GetImportTargetErrorKeysFile, downloadErrorKeysFileCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.GetImportTargetErrorKeysFileUrlPath, getImportTargetErrorKeysFileUrlPath},
|
||||
{SettingsConstants.GenerateImportTargetErrorKeysFilePath, generateImportTargetErrorKeysFilePath},
|
||||
{SettingsConstants.PackageTemplate, packageTemplateTextBox.Text},
|
||||
{SettingsConstants.StatusCheckInterval, numericUpDownStatusCheckInterval.Value.ToString(CultureInfo.InvariantCulture)}
|
||||
};
|
||||
if (serviceAuthRadioButton.Checked)
|
||||
{
|
||||
|
@ -799,6 +819,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
form.ImportFromPackagePath = importFromPackagePath;
|
||||
form.GetExecutionSummaryStatusPath = getExecutionSummaryStatusPath;
|
||||
form.GetExecutionSummaryPageUrlPath = getExecutionSummaryPageUrlPath;
|
||||
form.GetImportTargetErrorKeysFileUrlPath = getImportTargetErrorKeysFileUrlPath;
|
||||
form.GenerateImportTargetErrorKeysFilePath = generateImportTargetErrorKeysFilePath;
|
||||
form.ShowDialog();
|
||||
|
||||
if (form.Cancelled) return;
|
||||
|
@ -807,6 +829,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
importFromPackagePath = form.ImportFromPackagePath;
|
||||
getExecutionSummaryStatusPath = form.GetExecutionSummaryStatusPath;
|
||||
getExecutionSummaryPageUrlPath = form.GetExecutionSummaryPageUrlPath;
|
||||
getImportTargetErrorKeysFileUrlPath = form.GetImportTargetErrorKeysFileUrlPath;
|
||||
generateImportTargetErrorKeysFilePath = form.GenerateImportTargetErrorKeysFilePath;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
|
|
@ -31,6 +31,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
private void InitializeComponent()
|
||||
{
|
||||
this.panel1 = new System.Windows.Forms.Panel();
|
||||
this.GetImportTargetErrorKeysFileUrlLabel = new System.Windows.Forms.Label();
|
||||
this.GetImportTargetErrorKeysFileUrlTextBox = new System.Windows.Forms.TextBox();
|
||||
this.GetExecutionSummaryPageUrlLabel = new System.Windows.Forms.Label();
|
||||
this.GetExecutionSummaryPageUrlTextBox = new System.Windows.Forms.TextBox();
|
||||
this.GetExecutionSummaryStatusLabel = new System.Windows.Forms.Label();
|
||||
|
@ -41,11 +43,17 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.ButtonOK = new System.Windows.Forms.Button();
|
||||
this.GetAzureWriteUrlLabel = new System.Windows.Forms.Label();
|
||||
this.GetAzureWriteUrlTextBox = new System.Windows.Forms.TextBox();
|
||||
this.GenerateImportTargetErrorKeysFileLabel = new System.Windows.Forms.Label();
|
||||
this.GenerateImportTargetErrorKeysFileTextBox = new System.Windows.Forms.TextBox();
|
||||
this.panel1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// panel1
|
||||
//
|
||||
this.panel1.Controls.Add(this.GenerateImportTargetErrorKeysFileLabel);
|
||||
this.panel1.Controls.Add(this.GenerateImportTargetErrorKeysFileTextBox);
|
||||
this.panel1.Controls.Add(this.GetImportTargetErrorKeysFileUrlLabel);
|
||||
this.panel1.Controls.Add(this.GetImportTargetErrorKeysFileUrlTextBox);
|
||||
this.panel1.Controls.Add(this.GetExecutionSummaryPageUrlLabel);
|
||||
this.panel1.Controls.Add(this.GetExecutionSummaryPageUrlTextBox);
|
||||
this.panel1.Controls.Add(this.GetExecutionSummaryStatusLabel);
|
||||
|
@ -60,13 +68,30 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.panel1.Location = new System.Drawing.Point(0, 0);
|
||||
this.panel1.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.panel1.Name = "panel1";
|
||||
this.panel1.Size = new System.Drawing.Size(778, 201);
|
||||
this.panel1.Size = new System.Drawing.Size(778, 264);
|
||||
this.panel1.TabIndex = 0;
|
||||
//
|
||||
// GetImportTargetErrorKeysFileUrlLabel
|
||||
//
|
||||
this.GetImportTargetErrorKeysFileUrlLabel.AutoSize = true;
|
||||
this.GetImportTargetErrorKeysFileUrlLabel.Location = new System.Drawing.Point(24, 161);
|
||||
this.GetImportTargetErrorKeysFileUrlLabel.Name = "GetImportTargetErrorKeysFileUrlLabel";
|
||||
this.GetImportTargetErrorKeysFileUrlLabel.Size = new System.Drawing.Size(242, 20);
|
||||
this.GetImportTargetErrorKeysFileUrlLabel.TabIndex = 17;
|
||||
this.GetImportTargetErrorKeysFileUrlLabel.Text = "GetImportTargetErrorKeysFileUrl";
|
||||
//
|
||||
// GetImportTargetErrorKeysFileUrlTextBox
|
||||
//
|
||||
this.GetImportTargetErrorKeysFileUrlTextBox.Location = new System.Drawing.Point(266, 158);
|
||||
this.GetImportTargetErrorKeysFileUrlTextBox.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.GetImportTargetErrorKeysFileUrlTextBox.Name = "GetImportTargetErrorKeysFileUrlTextBox";
|
||||
this.GetImportTargetErrorKeysFileUrlTextBox.Size = new System.Drawing.Size(500, 26);
|
||||
this.GetImportTargetErrorKeysFileUrlTextBox.TabIndex = 16;
|
||||
//
|
||||
// GetExecutionSummaryPageUrlLabel
|
||||
//
|
||||
this.GetExecutionSummaryPageUrlLabel.AutoSize = true;
|
||||
this.GetExecutionSummaryPageUrlLabel.Location = new System.Drawing.Point(3, 127);
|
||||
this.GetExecutionSummaryPageUrlLabel.Location = new System.Drawing.Point(36, 127);
|
||||
this.GetExecutionSummaryPageUrlLabel.Name = "GetExecutionSummaryPageUrlLabel";
|
||||
this.GetExecutionSummaryPageUrlLabel.Size = new System.Drawing.Size(230, 20);
|
||||
this.GetExecutionSummaryPageUrlLabel.TabIndex = 15;
|
||||
|
@ -74,16 +99,16 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// GetExecutionSummaryPageUrlTextBox
|
||||
//
|
||||
this.GetExecutionSummaryPageUrlTextBox.Location = new System.Drawing.Point(238, 124);
|
||||
this.GetExecutionSummaryPageUrlTextBox.Location = new System.Drawing.Point(266, 124);
|
||||
this.GetExecutionSummaryPageUrlTextBox.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.GetExecutionSummaryPageUrlTextBox.Name = "GetExecutionSummaryPageUrlTextBox";
|
||||
this.GetExecutionSummaryPageUrlTextBox.Size = new System.Drawing.Size(528, 26);
|
||||
this.GetExecutionSummaryPageUrlTextBox.Size = new System.Drawing.Size(500, 26);
|
||||
this.GetExecutionSummaryPageUrlTextBox.TabIndex = 14;
|
||||
//
|
||||
// GetExecutionSummaryStatusLabel
|
||||
//
|
||||
this.GetExecutionSummaryStatusLabel.AutoSize = true;
|
||||
this.GetExecutionSummaryStatusLabel.Location = new System.Drawing.Point(13, 93);
|
||||
this.GetExecutionSummaryStatusLabel.Location = new System.Drawing.Point(46, 93);
|
||||
this.GetExecutionSummaryStatusLabel.Name = "GetExecutionSummaryStatusLabel";
|
||||
this.GetExecutionSummaryStatusLabel.Size = new System.Drawing.Size(220, 20);
|
||||
this.GetExecutionSummaryStatusLabel.TabIndex = 13;
|
||||
|
@ -91,16 +116,16 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// GetExecutionSummaryStatusTextBox
|
||||
//
|
||||
this.GetExecutionSummaryStatusTextBox.Location = new System.Drawing.Point(238, 90);
|
||||
this.GetExecutionSummaryStatusTextBox.Location = new System.Drawing.Point(266, 90);
|
||||
this.GetExecutionSummaryStatusTextBox.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.GetExecutionSummaryStatusTextBox.Name = "GetExecutionSummaryStatusTextBox";
|
||||
this.GetExecutionSummaryStatusTextBox.Size = new System.Drawing.Size(528, 26);
|
||||
this.GetExecutionSummaryStatusTextBox.Size = new System.Drawing.Size(500, 26);
|
||||
this.GetExecutionSummaryStatusTextBox.TabIndex = 12;
|
||||
//
|
||||
// ImportFromPackageLabel
|
||||
//
|
||||
this.ImportFromPackageLabel.AutoSize = true;
|
||||
this.ImportFromPackageLabel.Location = new System.Drawing.Point(79, 59);
|
||||
this.ImportFromPackageLabel.Location = new System.Drawing.Point(112, 59);
|
||||
this.ImportFromPackageLabel.Name = "ImportFromPackageLabel";
|
||||
this.ImportFromPackageLabel.Size = new System.Drawing.Size(154, 20);
|
||||
this.ImportFromPackageLabel.TabIndex = 11;
|
||||
|
@ -108,16 +133,16 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// ImportFromPackageTextBox
|
||||
//
|
||||
this.ImportFromPackageTextBox.Location = new System.Drawing.Point(238, 56);
|
||||
this.ImportFromPackageTextBox.Location = new System.Drawing.Point(266, 56);
|
||||
this.ImportFromPackageTextBox.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.ImportFromPackageTextBox.Name = "ImportFromPackageTextBox";
|
||||
this.ImportFromPackageTextBox.Size = new System.Drawing.Size(528, 26);
|
||||
this.ImportFromPackageTextBox.Size = new System.Drawing.Size(500, 26);
|
||||
this.ImportFromPackageTextBox.TabIndex = 10;
|
||||
//
|
||||
// ButtonCancel
|
||||
//
|
||||
this.ButtonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.ButtonCancel.Location = new System.Drawing.Point(370, 158);
|
||||
this.ButtonCancel.Location = new System.Drawing.Point(361, 224);
|
||||
this.ButtonCancel.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.ButtonCancel.Name = "ButtonCancel";
|
||||
this.ButtonCancel.Size = new System.Drawing.Size(102, 32);
|
||||
|
@ -129,7 +154,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// ButtonOK
|
||||
//
|
||||
this.ButtonOK.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.ButtonOK.Location = new System.Drawing.Point(262, 158);
|
||||
this.ButtonOK.Location = new System.Drawing.Point(253, 224);
|
||||
this.ButtonOK.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.ButtonOK.Name = "ButtonOK";
|
||||
this.ButtonOK.Size = new System.Drawing.Size(102, 32);
|
||||
|
@ -141,7 +166,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// GetAzureWriteUrlLabel
|
||||
//
|
||||
this.GetAzureWriteUrlLabel.AutoSize = true;
|
||||
this.GetAzureWriteUrlLabel.Location = new System.Drawing.Point(97, 25);
|
||||
this.GetAzureWriteUrlLabel.Location = new System.Drawing.Point(131, 25);
|
||||
this.GetAzureWriteUrlLabel.Name = "GetAzureWriteUrlLabel";
|
||||
this.GetAzureWriteUrlLabel.Size = new System.Drawing.Size(135, 20);
|
||||
this.GetAzureWriteUrlLabel.TabIndex = 1;
|
||||
|
@ -149,24 +174,41 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
// GetAzureWriteUrlTextBox
|
||||
//
|
||||
this.GetAzureWriteUrlTextBox.Location = new System.Drawing.Point(238, 22);
|
||||
this.GetAzureWriteUrlTextBox.Location = new System.Drawing.Point(266, 22);
|
||||
this.GetAzureWriteUrlTextBox.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.GetAzureWriteUrlTextBox.Name = "GetAzureWriteUrlTextBox";
|
||||
this.GetAzureWriteUrlTextBox.Size = new System.Drawing.Size(528, 26);
|
||||
this.GetAzureWriteUrlTextBox.Size = new System.Drawing.Size(500, 26);
|
||||
this.GetAzureWriteUrlTextBox.TabIndex = 0;
|
||||
//
|
||||
// GenerateImportTargetErrorKeysFileLabel
|
||||
//
|
||||
this.GenerateImportTargetErrorKeysFileLabel.AutoSize = true;
|
||||
this.GenerateImportTargetErrorKeysFileLabel.Location = new System.Drawing.Point(3, 195);
|
||||
this.GenerateImportTargetErrorKeysFileLabel.Name = "GenerateImportTargetErrorKeysFileLabel";
|
||||
this.GenerateImportTargetErrorKeysFileLabel.Size = new System.Drawing.Size(263, 20);
|
||||
this.GenerateImportTargetErrorKeysFileLabel.TabIndex = 19;
|
||||
this.GenerateImportTargetErrorKeysFileLabel.Text = "GenerateImportTargetErrorKeysFile";
|
||||
//
|
||||
// GenerateImportTargetErrorKeysFileTextBox
|
||||
//
|
||||
this.GenerateImportTargetErrorKeysFileTextBox.Location = new System.Drawing.Point(266, 192);
|
||||
this.GenerateImportTargetErrorKeysFileTextBox.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.GenerateImportTargetErrorKeysFileTextBox.Name = "GenerateImportTargetErrorKeysFileTextBox";
|
||||
this.GenerateImportTargetErrorKeysFileTextBox.Size = new System.Drawing.Size(500, 26);
|
||||
this.GenerateImportTargetErrorKeysFileTextBox.TabIndex = 18;
|
||||
//
|
||||
// ImportJobOptions
|
||||
//
|
||||
this.AcceptButton = this.ButtonOK;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.CancelButton = this.ButtonCancel;
|
||||
this.ClientSize = new System.Drawing.Size(778, 201);
|
||||
this.ClientSize = new System.Drawing.Size(778, 264);
|
||||
this.Controls.Add(this.panel1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.MaximizeBox = false;
|
||||
this.MaximumSize = new System.Drawing.Size(800, 300);
|
||||
this.MaximumSize = new System.Drawing.Size(800, 320);
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "ImportJobOptions";
|
||||
this.ShowIcon = false;
|
||||
|
@ -194,5 +236,9 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
private System.Windows.Forms.TextBox GetExecutionSummaryPageUrlTextBox;
|
||||
private System.Windows.Forms.Label GetExecutionSummaryStatusLabel;
|
||||
private System.Windows.Forms.TextBox GetExecutionSummaryStatusTextBox;
|
||||
private System.Windows.Forms.Label GetImportTargetErrorKeysFileUrlLabel;
|
||||
private System.Windows.Forms.TextBox GetImportTargetErrorKeysFileUrlTextBox;
|
||||
private System.Windows.Forms.Label GenerateImportTargetErrorKeysFileLabel;
|
||||
private System.Windows.Forms.TextBox GenerateImportTargetErrorKeysFileTextBox;
|
||||
}
|
||||
}
|
|
@ -18,6 +18,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
public string GetAzureWriteUrlPath;
|
||||
public string GetExecutionSummaryStatusPath;
|
||||
public string GetExecutionSummaryPageUrlPath;
|
||||
public string GetImportTargetErrorKeysFileUrlPath;
|
||||
public string GenerateImportTargetErrorKeysFilePath;
|
||||
|
||||
private bool InputIsValid()
|
||||
{
|
||||
|
@ -33,6 +35,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
GetAzureWriteUrlPath = GetAzureWriteUrlTextBox.Text;
|
||||
GetExecutionSummaryStatusPath = GetExecutionSummaryStatusTextBox.Text;
|
||||
GetExecutionSummaryPageUrlPath = GetExecutionSummaryPageUrlTextBox.Text;
|
||||
GetImportTargetErrorKeysFileUrlPath = GetImportTargetErrorKeysFileUrlTextBox.Text;
|
||||
GenerateImportTargetErrorKeysFilePath = GenerateImportTargetErrorKeysFileTextBox.Text;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -53,6 +57,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
GetAzureWriteUrlTextBox.Text = GetAzureWriteUrlPath;
|
||||
GetExecutionSummaryStatusTextBox.Text = GetExecutionSummaryStatusPath;
|
||||
GetExecutionSummaryPageUrlTextBox.Text = GetExecutionSummaryPageUrlPath;
|
||||
GetImportTargetErrorKeysFileUrlTextBox.Text = GetImportTargetErrorKeysFileUrlPath;
|
||||
GenerateImportTargetErrorKeysFileTextBox.Text = GenerateImportTargetErrorKeysFilePath;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -31,8 +31,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
|
||||
this.mainMenuToolStrip = new System.Windows.Forms.ToolStrip();
|
||||
this.connectToServerButton = new System.Windows.Forms.ToolStripButton();
|
||||
this.privateSchedulerButton = new System.Windows.Forms.ToolStripButton();
|
||||
|
@ -66,10 +66,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.instanceFilter = new System.Windows.Forms.ToolStripTextBox();
|
||||
this.jobNameFilter = new System.Windows.Forms.ToolStripTextBox();
|
||||
this.addJobsDropDownButton = new System.Windows.Forms.ToolStripDropDownButton();
|
||||
this.addUploadJobMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.addDownloadJobMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.addImportJobMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.addExportJobMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.addUploadJobMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.addDownloadJobMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.deleteJobButton = new System.Windows.Forms.ToolStripButton();
|
||||
this.editJobButton = new System.Windows.Forms.ToolStripButton();
|
||||
this.pauseResumeDropDownButton = new System.Windows.Forms.ToolStripDropDownButton();
|
||||
|
@ -97,27 +97,24 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.aboutButton});
|
||||
this.mainMenuToolStrip.Location = new System.Drawing.Point(0, 0);
|
||||
this.mainMenuToolStrip.Name = "mainMenuToolStrip";
|
||||
this.mainMenuToolStrip.Size = new System.Drawing.Size(1132, 32);
|
||||
this.mainMenuToolStrip.Size = new System.Drawing.Size(1384, 44);
|
||||
this.mainMenuToolStrip.TabIndex = 0;
|
||||
this.mainMenuToolStrip.Text = "";
|
||||
//
|
||||
// connectToServerButton
|
||||
//
|
||||
this.connectToServerButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.connectToServerButton.Image = ((System.Drawing.Image)(resources.GetObject("connectToServerButton.Image")));
|
||||
this.connectToServerButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.connectToServerButton.Name = "connectToServerButton";
|
||||
this.connectToServerButton.Size = new System.Drawing.Size(161, 29);
|
||||
this.connectToServerButton.Size = new System.Drawing.Size(188, 38);
|
||||
this.connectToServerButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Connect_to_service;
|
||||
this.connectToServerButton.Click += new System.EventHandler(this.ConnectToServerButton_Click);
|
||||
//
|
||||
// privateSchedulerButton
|
||||
//
|
||||
this.privateSchedulerButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.privateSchedulerButton.Image = ((System.Drawing.Image)(resources.GetObject("privateSchedulerButton.Image")));
|
||||
this.privateSchedulerButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.privateSchedulerButton.Name = "privateSchedulerButton";
|
||||
this.privateSchedulerButton.Size = new System.Drawing.Size(224, 29);
|
||||
this.privateSchedulerButton.Size = new System.Drawing.Size(262, 38);
|
||||
this.privateSchedulerButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Start_standalone_scheduler;
|
||||
this.privateSchedulerButton.Click += new System.EventHandler(this.PrivateSchedulerButton_Click);
|
||||
//
|
||||
|
@ -125,20 +122,18 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.saveScheduleButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.saveScheduleButton.Enabled = false;
|
||||
this.saveScheduleButton.Image = ((System.Drawing.Image)(resources.GetObject("saveScheduleButton.Image")));
|
||||
this.saveScheduleButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.saveScheduleButton.Name = "saveScheduleButton";
|
||||
this.saveScheduleButton.Size = new System.Drawing.Size(155, 29);
|
||||
this.saveScheduleButton.Size = new System.Drawing.Size(182, 38);
|
||||
this.saveScheduleButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Save_schedule_file;
|
||||
this.saveScheduleButton.Click += new System.EventHandler(this.SaveScheduleButton_Click);
|
||||
//
|
||||
// settingsButton
|
||||
//
|
||||
this.settingsButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.settingsButton.Image = ((System.Drawing.Image)(resources.GetObject("settingsButton.Image")));
|
||||
this.settingsButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.settingsButton.Name = "settingsButton";
|
||||
this.settingsButton.Size = new System.Drawing.Size(103, 29);
|
||||
this.settingsButton.Size = new System.Drawing.Size(120, 38);
|
||||
this.settingsButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Parameters;
|
||||
this.settingsButton.Click += new System.EventHandler(this.SettingsButton_Click);
|
||||
//
|
||||
|
@ -146,10 +141,9 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.aboutButton.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||
this.aboutButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.aboutButton.Image = ((System.Drawing.Image)(resources.GetObject("aboutButton.Image")));
|
||||
this.aboutButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.aboutButton.Name = "aboutButton";
|
||||
this.aboutButton.Size = new System.Drawing.Size(66, 29);
|
||||
this.aboutButton.Size = new System.Drawing.Size(74, 38);
|
||||
this.aboutButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.A_bout;
|
||||
this.aboutButton.Click += new System.EventHandler(this.AboutButton_Click);
|
||||
//
|
||||
|
@ -158,17 +152,17 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.statusStrip.ImageScalingSize = new System.Drawing.Size(20, 20);
|
||||
this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.toolStripConnectionStatus});
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 474);
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 566);
|
||||
this.statusStrip.Name = "statusStrip";
|
||||
this.statusStrip.Padding = new System.Windows.Forms.Padding(1, 0, 21, 0);
|
||||
this.statusStrip.Size = new System.Drawing.Size(1132, 30);
|
||||
this.statusStrip.Padding = new System.Windows.Forms.Padding(1, 0, 26, 0);
|
||||
this.statusStrip.Size = new System.Drawing.Size(1384, 39);
|
||||
this.statusStrip.TabIndex = 1;
|
||||
this.statusStrip.Text = "statusStrip1";
|
||||
//
|
||||
// toolStripConnectionStatus
|
||||
//
|
||||
this.toolStripConnectionStatus.Name = "toolStripConnectionStatus";
|
||||
this.toolStripConnectionStatus.Size = new System.Drawing.Size(129, 25);
|
||||
this.toolStripConnectionStatus.Size = new System.Drawing.Size(151, 30);
|
||||
this.toolStripConnectionStatus.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Not_connected;
|
||||
//
|
||||
// jobsDataGridView
|
||||
|
@ -194,15 +188,15 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.jobsDataGridView.ContextMenuStrip = this.contextMenuStrip1;
|
||||
this.jobsDataGridView.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.jobsDataGridView.GridColor = System.Drawing.SystemColors.Window;
|
||||
this.jobsDataGridView.Location = new System.Drawing.Point(0, 32);
|
||||
this.jobsDataGridView.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobsDataGridView.Location = new System.Drawing.Point(0, 44);
|
||||
this.jobsDataGridView.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobsDataGridView.MultiSelect = false;
|
||||
this.jobsDataGridView.Name = "jobsDataGridView";
|
||||
this.jobsDataGridView.ReadOnly = true;
|
||||
this.jobsDataGridView.RowHeadersVisible = false;
|
||||
this.jobsDataGridView.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders;
|
||||
this.jobsDataGridView.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
this.jobsDataGridView.Size = new System.Drawing.Size(1132, 410);
|
||||
this.jobsDataGridView.Size = new System.Drawing.Size(1384, 478);
|
||||
this.jobsDataGridView.TabIndex = 3;
|
||||
this.jobsDataGridView.CellContentDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.JobsDataGridView_CellContentDoubleClick);
|
||||
this.jobsDataGridView.CellFormatting += new System.Windows.Forms.DataGridViewCellFormattingEventHandler(this.JobsDataGridView_CellFormatting);
|
||||
|
@ -213,6 +207,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.Instance.DataPropertyName = "Instance";
|
||||
this.Instance.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Instance;
|
||||
this.Instance.MinimumWidth = 9;
|
||||
this.Instance.Name = "Instance";
|
||||
this.Instance.ReadOnly = true;
|
||||
//
|
||||
|
@ -220,6 +215,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.JobName.DataPropertyName = "JobName";
|
||||
this.JobName.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Job_name;
|
||||
this.JobName.MinimumWidth = 9;
|
||||
this.JobName.Name = "JobName";
|
||||
this.JobName.ReadOnly = true;
|
||||
//
|
||||
|
@ -227,6 +223,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.JobGroup.DataPropertyName = "JobGroup";
|
||||
this.JobGroup.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Job_group;
|
||||
this.JobGroup.MinimumWidth = 9;
|
||||
this.JobGroup.Name = "JobGroup";
|
||||
this.JobGroup.ReadOnly = true;
|
||||
//
|
||||
|
@ -234,6 +231,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.JobDescription.DataPropertyName = "JobDescription";
|
||||
this.JobDescription.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Description;
|
||||
this.JobDescription.MinimumWidth = 9;
|
||||
this.JobDescription.Name = "JobDescription";
|
||||
this.JobDescription.ReadOnly = true;
|
||||
//
|
||||
|
@ -241,6 +239,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.JobType.DataPropertyName = "JobType";
|
||||
this.JobType.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Job_type;
|
||||
this.JobType.MinimumWidth = 9;
|
||||
this.JobType.Name = "JobType";
|
||||
this.JobType.ReadOnly = true;
|
||||
//
|
||||
|
@ -248,6 +247,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.NextFireTime.DataPropertyName = "NextFireTime";
|
||||
this.NextFireTime.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Next_run;
|
||||
this.NextFireTime.MinimumWidth = 9;
|
||||
this.NextFireTime.Name = "NextFireTime";
|
||||
this.NextFireTime.ReadOnly = true;
|
||||
//
|
||||
|
@ -255,6 +255,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.PreviousFireTime.DataPropertyName = "PreviousFireTime";
|
||||
this.PreviousFireTime.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Last_run;
|
||||
this.PreviousFireTime.MinimumWidth = 9;
|
||||
this.PreviousFireTime.Name = "PreviousFireTime";
|
||||
this.PreviousFireTime.ReadOnly = true;
|
||||
//
|
||||
|
@ -262,6 +263,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.Status.DataPropertyName = "JobStatus";
|
||||
this.Status.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Trigger_status;
|
||||
this.Status.MinimumWidth = 9;
|
||||
this.Status.Name = "Status";
|
||||
this.Status.ReadOnly = true;
|
||||
//
|
||||
|
@ -281,81 +283,81 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.openFailedProcessingFolderToolStripMenuItem,
|
||||
this.openSuccessfulDownloadsFolderToolStripMenuItem});
|
||||
this.contextMenuStrip1.Name = "contextMenuStrip1";
|
||||
this.contextMenuStrip1.Size = new System.Drawing.Size(358, 310);
|
||||
this.contextMenuStrip1.Size = new System.Drawing.Size(404, 370);
|
||||
//
|
||||
// editJobMenuItem
|
||||
//
|
||||
this.editJobMenuItem.Name = "editJobMenuItem";
|
||||
this.editJobMenuItem.Size = new System.Drawing.Size(357, 30);
|
||||
this.editJobMenuItem.Text = Resources.Edit_job;
|
||||
this.editJobMenuItem.Size = new System.Drawing.Size(403, 36);
|
||||
this.editJobMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Edit_job;
|
||||
this.editJobMenuItem.Click += new System.EventHandler(this.EditJobButton_Click);
|
||||
//
|
||||
// pauseJobMenuItem
|
||||
//
|
||||
this.pauseJobMenuItem.Name = "pauseJobMenuItem";
|
||||
this.pauseJobMenuItem.Size = new System.Drawing.Size(357, 30);
|
||||
this.pauseJobMenuItem.Text = Resources.Pause_job;
|
||||
this.pauseJobMenuItem.Size = new System.Drawing.Size(403, 36);
|
||||
this.pauseJobMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Pause_job;
|
||||
this.pauseJobMenuItem.Click += new System.EventHandler(this.PauseJobButton_Click);
|
||||
//
|
||||
// resumeJobToolStripMenuItem1
|
||||
//
|
||||
this.resumeJobToolStripMenuItem1.Name = "resumeJobToolStripMenuItem1";
|
||||
this.resumeJobToolStripMenuItem1.Size = new System.Drawing.Size(357, 30);
|
||||
this.resumeJobToolStripMenuItem1.Text = Resources.Resume_job;
|
||||
this.resumeJobToolStripMenuItem1.Size = new System.Drawing.Size(403, 36);
|
||||
this.resumeJobToolStripMenuItem1.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Resume_job;
|
||||
this.resumeJobToolStripMenuItem1.Click += new System.EventHandler(this.ResumeJobButton_Click);
|
||||
//
|
||||
// deletJobMenuItem
|
||||
//
|
||||
this.deletJobMenuItem.Name = "deletJobMenuItem";
|
||||
this.deletJobMenuItem.Size = new System.Drawing.Size(357, 30);
|
||||
this.deletJobMenuItem.Text = Resources.Delete_job;
|
||||
this.deletJobMenuItem.Size = new System.Drawing.Size(403, 36);
|
||||
this.deletJobMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Delete_job;
|
||||
this.deletJobMenuItem.Click += new System.EventHandler(this.DeleteJobButton_Click);
|
||||
//
|
||||
// toolStripSeparator1
|
||||
//
|
||||
this.toolStripSeparator1.Name = "toolStripSeparator1";
|
||||
this.toolStripSeparator1.Size = new System.Drawing.Size(354, 6);
|
||||
this.toolStripSeparator1.Size = new System.Drawing.Size(400, 6);
|
||||
//
|
||||
// openInputFolderToolStripMenuItem
|
||||
//
|
||||
this.openInputFolderToolStripMenuItem.Name = "openInputFolderToolStripMenuItem";
|
||||
this.openInputFolderToolStripMenuItem.Size = new System.Drawing.Size(357, 30);
|
||||
this.openInputFolderToolStripMenuItem.Text = Resources.Open_input_folder;
|
||||
this.openInputFolderToolStripMenuItem.Size = new System.Drawing.Size(403, 36);
|
||||
this.openInputFolderToolStripMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Open_input_folder;
|
||||
this.openInputFolderToolStripMenuItem.Click += new System.EventHandler(this.OpenInputFolderToolStripMenuItem_Click);
|
||||
//
|
||||
// openSuccessfulUploadsFolderToolStripMenuItem
|
||||
//
|
||||
this.openSuccessfulUploadsFolderToolStripMenuItem.Name = "openSuccessfulUploadsFolderToolStripMenuItem";
|
||||
this.openSuccessfulUploadsFolderToolStripMenuItem.Size = new System.Drawing.Size(357, 30);
|
||||
this.openSuccessfulUploadsFolderToolStripMenuItem.Text = Resources.Open_successful_uploads_folder;
|
||||
this.openSuccessfulUploadsFolderToolStripMenuItem.Size = new System.Drawing.Size(403, 36);
|
||||
this.openSuccessfulUploadsFolderToolStripMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Open_successful_uploads_folder;
|
||||
this.openSuccessfulUploadsFolderToolStripMenuItem.Click += new System.EventHandler(this.OpenSuccessfulUploadsFolderToolStripMenuItem_Click);
|
||||
//
|
||||
// openFailedUploadsFolderToolStripMenuItem
|
||||
//
|
||||
this.openFailedUploadsFolderToolStripMenuItem.Name = "openFailedUploadsFolderToolStripMenuItem";
|
||||
this.openFailedUploadsFolderToolStripMenuItem.Size = new System.Drawing.Size(357, 30);
|
||||
this.openFailedUploadsFolderToolStripMenuItem.Text = Resources.Open_failed_uploads_folder;
|
||||
this.openFailedUploadsFolderToolStripMenuItem.Size = new System.Drawing.Size(403, 36);
|
||||
this.openFailedUploadsFolderToolStripMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Open_failed_uploads_folder;
|
||||
this.openFailedUploadsFolderToolStripMenuItem.Click += new System.EventHandler(this.OpenFailedUploadsFolderToolStripMenuItem_Click);
|
||||
//
|
||||
// openSuccessfulProcessingFolderToolStripMenuItem
|
||||
//
|
||||
this.openSuccessfulProcessingFolderToolStripMenuItem.Name = "openSuccessfulProcessingFolderToolStripMenuItem";
|
||||
this.openSuccessfulProcessingFolderToolStripMenuItem.Size = new System.Drawing.Size(357, 30);
|
||||
this.openSuccessfulProcessingFolderToolStripMenuItem.Text = Resources.Open_successful_processing_folder;
|
||||
this.openSuccessfulProcessingFolderToolStripMenuItem.Size = new System.Drawing.Size(403, 36);
|
||||
this.openSuccessfulProcessingFolderToolStripMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Open_successful_processing_folder;
|
||||
this.openSuccessfulProcessingFolderToolStripMenuItem.Click += new System.EventHandler(this.OpenSuccessfulProcessingFolderToolStripMenuItem_Click);
|
||||
//
|
||||
// openFailedProcessingFolderToolStripMenuItem
|
||||
//
|
||||
this.openFailedProcessingFolderToolStripMenuItem.Name = "openFailedProcessingFolderToolStripMenuItem";
|
||||
this.openFailedProcessingFolderToolStripMenuItem.Size = new System.Drawing.Size(357, 30);
|
||||
this.openFailedProcessingFolderToolStripMenuItem.Text = Resources.Open_failed_processing_folder;
|
||||
this.openFailedProcessingFolderToolStripMenuItem.Size = new System.Drawing.Size(403, 36);
|
||||
this.openFailedProcessingFolderToolStripMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Open_failed_processing_folder;
|
||||
this.openFailedProcessingFolderToolStripMenuItem.Click += new System.EventHandler(this.OpenFailedProcessingFolderToolStripMenuItem_Click);
|
||||
//
|
||||
// openSuccessfulDownloadsFolderToolStripMenuItem
|
||||
//
|
||||
this.openSuccessfulDownloadsFolderToolStripMenuItem.Name = "openSuccessfulDownloadsFolderToolStripMenuItem";
|
||||
this.openSuccessfulDownloadsFolderToolStripMenuItem.Size = new System.Drawing.Size(357, 30);
|
||||
this.openSuccessfulDownloadsFolderToolStripMenuItem.Text = Resources.Open_successful_downloads_folder;
|
||||
this.openSuccessfulDownloadsFolderToolStripMenuItem.Size = new System.Drawing.Size(403, 36);
|
||||
this.openSuccessfulDownloadsFolderToolStripMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Open_successful_downloads_folder;
|
||||
this.openSuccessfulDownloadsFolderToolStripMenuItem.Click += new System.EventHandler(this.OpenSuccessfulDownloadsFolderToolStripMenuItem_Click);
|
||||
//
|
||||
// jobsToolStrip
|
||||
|
@ -370,27 +372,28 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.editJobButton,
|
||||
this.pauseResumeDropDownButton,
|
||||
this.refreshButton});
|
||||
this.jobsToolStrip.Location = new System.Drawing.Point(0, 442);
|
||||
this.jobsToolStrip.Location = new System.Drawing.Point(0, 522);
|
||||
this.jobsToolStrip.Name = "jobsToolStrip";
|
||||
this.jobsToolStrip.Padding = new System.Windows.Forms.Padding(0);
|
||||
this.jobsToolStrip.Size = new System.Drawing.Size(1132, 32);
|
||||
this.jobsToolStrip.Size = new System.Drawing.Size(1384, 44);
|
||||
this.jobsToolStrip.TabIndex = 4;
|
||||
this.jobsToolStrip.Text = "";
|
||||
//
|
||||
// instanceFilter
|
||||
//
|
||||
this.instanceFilter.Enabled = false;
|
||||
this.instanceFilter.Font = new System.Drawing.Font("Segoe UI", 9F);
|
||||
this.instanceFilter.Name = "instanceFilter";
|
||||
this.instanceFilter.Size = new System.Drawing.Size(112, 32);
|
||||
this.instanceFilter.ToolTipText = Resources.Filter_instances;
|
||||
this.instanceFilter.Size = new System.Drawing.Size(136, 44);
|
||||
this.instanceFilter.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Filter_instances;
|
||||
this.instanceFilter.TextChanged += new System.EventHandler(this.InstanceFilter_TextChanged);
|
||||
//
|
||||
// jobNameFilter
|
||||
//
|
||||
this.jobNameFilter.Enabled = false;
|
||||
this.jobNameFilter.Font = new System.Drawing.Font("Segoe UI", 9F);
|
||||
this.jobNameFilter.Name = "jobNameFilter";
|
||||
this.jobNameFilter.Size = new System.Drawing.Size(112, 32);
|
||||
this.jobNameFilter.ToolTipText = Resources.Filter_job_names;
|
||||
this.jobNameFilter.Size = new System.Drawing.Size(136, 44);
|
||||
this.jobNameFilter.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Filter_job_names;
|
||||
this.jobNameFilter.TextChanged += new System.EventHandler(this.JobNameFilter_TextChanged);
|
||||
//
|
||||
// addJobsDropDownButton
|
||||
|
@ -401,64 +404,61 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.addExportJobMenuItem,
|
||||
this.addUploadJobMenuItem,
|
||||
this.addDownloadJobMenuItem});
|
||||
this.addJobsDropDownButton.Image = ((System.Drawing.Image)(resources.GetObject("addJobsDropDownButton.Image")));
|
||||
this.addJobsDropDownButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.addJobsDropDownButton.Name = "addJobsDropDownButton";
|
||||
this.addJobsDropDownButton.Size = new System.Drawing.Size(95, 29);
|
||||
this.addJobsDropDownButton.Text = Resources.Add_job;
|
||||
//
|
||||
// addUploadJobMenuItem
|
||||
//
|
||||
this.addUploadJobMenuItem.Enabled = false;
|
||||
this.addUploadJobMenuItem.Name = "addUploadJobMenuItem";
|
||||
this.addUploadJobMenuItem.Size = new System.Drawing.Size(351, 30);
|
||||
this.addUploadJobMenuItem.Text = Resources.Add_upload_job;
|
||||
this.addUploadJobMenuItem.Click += new System.EventHandler(this.AddUploadJobMenuItem_Click);
|
||||
//
|
||||
// addDownloadJobMenuItem
|
||||
//
|
||||
this.addDownloadJobMenuItem.Enabled = false;
|
||||
this.addDownloadJobMenuItem.Name = "addDownloadJobMenuItem";
|
||||
this.addDownloadJobMenuItem.Size = new System.Drawing.Size(351, 30);
|
||||
this.addDownloadJobMenuItem.Text = Resources.Add_download_job;
|
||||
this.addDownloadJobMenuItem.Click += new System.EventHandler(this.AddDownloadJobMenuItem_Click);
|
||||
this.addJobsDropDownButton.Size = new System.Drawing.Size(107, 38);
|
||||
this.addJobsDropDownButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Add_job;
|
||||
//
|
||||
// addImportJobMenuItem
|
||||
//
|
||||
this.addImportJobMenuItem.Enabled = false;
|
||||
this.addImportJobMenuItem.Name = "addImportJobMenuItem";
|
||||
this.addImportJobMenuItem.Size = new System.Drawing.Size(351, 30);
|
||||
this.addImportJobMenuItem.Text = Resources.Add_import_job;
|
||||
this.addImportJobMenuItem.Size = new System.Drawing.Size(561, 40);
|
||||
this.addImportJobMenuItem.Text = "Add import job (Package API)";
|
||||
this.addImportJobMenuItem.Click += new System.EventHandler(this.AddImportJobMenuItem_Click);
|
||||
//
|
||||
// addExportJobMenuItem
|
||||
//
|
||||
this.addExportJobMenuItem.Enabled = false;
|
||||
this.addExportJobMenuItem.Name = "addExportJobMenuItem";
|
||||
this.addExportJobMenuItem.Size = new System.Drawing.Size(351, 30);
|
||||
this.addExportJobMenuItem.Text = Resources.Add_export_job;
|
||||
this.addExportJobMenuItem.Size = new System.Drawing.Size(561, 40);
|
||||
this.addExportJobMenuItem.Text = "Add export job (Package API)";
|
||||
this.addExportJobMenuItem.Click += new System.EventHandler(this.AddExportJobMenuItem_Click);
|
||||
//
|
||||
// addUploadJobMenuItem
|
||||
//
|
||||
this.addUploadJobMenuItem.Enabled = false;
|
||||
this.addUploadJobMenuItem.Name = "addUploadJobMenuItem";
|
||||
this.addUploadJobMenuItem.Size = new System.Drawing.Size(561, 40);
|
||||
this.addUploadJobMenuItem.Text = "Add upload job (Recurring integrations API)";
|
||||
this.addUploadJobMenuItem.Click += new System.EventHandler(this.AddUploadJobMenuItem_Click);
|
||||
//
|
||||
// addDownloadJobMenuItem
|
||||
//
|
||||
this.addDownloadJobMenuItem.Enabled = false;
|
||||
this.addDownloadJobMenuItem.Name = "addDownloadJobMenuItem";
|
||||
this.addDownloadJobMenuItem.Size = new System.Drawing.Size(561, 40);
|
||||
this.addDownloadJobMenuItem.Text = "Add download job (Recurring integrations API)";
|
||||
this.addDownloadJobMenuItem.Click += new System.EventHandler(this.AddDownloadJobMenuItem_Click);
|
||||
//
|
||||
// deleteJobButton
|
||||
//
|
||||
this.deleteJobButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.deleteJobButton.Enabled = false;
|
||||
this.deleteJobButton.Image = ((System.Drawing.Image)(resources.GetObject("deleteJobButton.Image")));
|
||||
this.deleteJobButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.deleteJobButton.Name = "deleteJobButton";
|
||||
this.deleteJobButton.Size = new System.Drawing.Size(97, 29);
|
||||
this.deleteJobButton.Size = new System.Drawing.Size(112, 38);
|
||||
this.deleteJobButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Delete_job;
|
||||
this.deleteJobButton.ToolTipText = Resources.Delete_job;
|
||||
this.deleteJobButton.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Delete_job;
|
||||
this.deleteJobButton.Click += new System.EventHandler(this.DeleteJobButton_Click);
|
||||
//
|
||||
// editJobButton
|
||||
//
|
||||
this.editJobButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.editJobButton.Enabled = false;
|
||||
this.editJobButton.Image = ((System.Drawing.Image)(resources.GetObject("editJobButton.Image")));
|
||||
this.editJobButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.editJobButton.Name = "editJobButton";
|
||||
this.editJobButton.Size = new System.Drawing.Size(77, 29);
|
||||
this.editJobButton.Size = new System.Drawing.Size(87, 38);
|
||||
this.editJobButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Edit_job;
|
||||
this.editJobButton.Click += new System.EventHandler(this.EditJobButton_Click);
|
||||
//
|
||||
|
@ -471,74 +471,70 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.resumeJobToolStripMenuItem,
|
||||
this.resumeAllJobsToolStripMenuItem});
|
||||
this.pauseResumeDropDownButton.Enabled = false;
|
||||
this.pauseResumeDropDownButton.Image = ((System.Drawing.Image)(resources.GetObject("pauseResumeDropDownButton.Image")));
|
||||
this.pauseResumeDropDownButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.pauseResumeDropDownButton.Name = "pauseResumeDropDownButton";
|
||||
this.pauseResumeDropDownButton.Size = new System.Drawing.Size(144, 29);
|
||||
this.pauseResumeDropDownButton.Text = Resources.Pause_Resume;
|
||||
this.pauseResumeDropDownButton.Size = new System.Drawing.Size(169, 38);
|
||||
this.pauseResumeDropDownButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Pause_Resume;
|
||||
//
|
||||
// pauseJobToolStripMenuItem
|
||||
//
|
||||
this.pauseJobToolStripMenuItem.Name = "pauseJobToolStripMenuItem";
|
||||
this.pauseJobToolStripMenuItem.Size = new System.Drawing.Size(219, 30);
|
||||
this.pauseJobToolStripMenuItem.Text = Resources.Pause_job;
|
||||
this.pauseJobToolStripMenuItem.Size = new System.Drawing.Size(275, 40);
|
||||
this.pauseJobToolStripMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Pause_job;
|
||||
this.pauseJobToolStripMenuItem.Click += new System.EventHandler(this.PauseJobToolStripMenuItem_Click);
|
||||
//
|
||||
// pauseAllJobsToolStripMenuItem
|
||||
//
|
||||
this.pauseAllJobsToolStripMenuItem.Name = "pauseAllJobsToolStripMenuItem";
|
||||
this.pauseAllJobsToolStripMenuItem.Size = new System.Drawing.Size(219, 30);
|
||||
this.pauseAllJobsToolStripMenuItem.Text = Resources.Pause_all_jobs;
|
||||
this.pauseAllJobsToolStripMenuItem.Size = new System.Drawing.Size(275, 40);
|
||||
this.pauseAllJobsToolStripMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Pause_all_jobs;
|
||||
this.pauseAllJobsToolStripMenuItem.Click += new System.EventHandler(this.PauseAllJobsToolStripMenuItem_Click);
|
||||
//
|
||||
// resumeJobToolStripMenuItem
|
||||
//
|
||||
this.resumeJobToolStripMenuItem.Name = "resumeJobToolStripMenuItem";
|
||||
this.resumeJobToolStripMenuItem.Size = new System.Drawing.Size(219, 30);
|
||||
this.resumeJobToolStripMenuItem.Text = Resources.Resume_job;
|
||||
this.resumeJobToolStripMenuItem.Size = new System.Drawing.Size(275, 40);
|
||||
this.resumeJobToolStripMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Resume_job;
|
||||
this.resumeJobToolStripMenuItem.Click += new System.EventHandler(this.ResumeJobToolStripMenuItem_Click);
|
||||
//
|
||||
// resumeAllJobsToolStripMenuItem
|
||||
//
|
||||
this.resumeAllJobsToolStripMenuItem.Name = "resumeAllJobsToolStripMenuItem";
|
||||
this.resumeAllJobsToolStripMenuItem.Size = new System.Drawing.Size(219, 30);
|
||||
this.resumeAllJobsToolStripMenuItem.Text = Resources.Resume_all_jobs;
|
||||
this.resumeAllJobsToolStripMenuItem.Size = new System.Drawing.Size(275, 40);
|
||||
this.resumeAllJobsToolStripMenuItem.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Resume_all_jobs;
|
||||
this.resumeAllJobsToolStripMenuItem.Click += new System.EventHandler(this.ResumeAllJobsToolStripMenuItem_Click);
|
||||
//
|
||||
// refreshButton
|
||||
//
|
||||
this.refreshButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.refreshButton.Enabled = false;
|
||||
this.refreshButton.Image = ((System.Drawing.Image)(resources.GetObject("refreshButton.Image")));
|
||||
this.refreshButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.refreshButton.Name = "refreshButton";
|
||||
this.refreshButton.Size = new System.Drawing.Size(111, 29);
|
||||
this.refreshButton.Text = Resources.Refresh_grid;
|
||||
this.refreshButton.Size = new System.Drawing.Size(167, 38);
|
||||
this.refreshButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Refresh_grid;
|
||||
this.refreshButton.Click += new System.EventHandler(this.RefreshButton_Click);
|
||||
//
|
||||
// toolStripButton1
|
||||
//
|
||||
this.toolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.toolStripButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton1.Image")));
|
||||
this.toolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.toolStripButton1.Name = "toolStripButton1";
|
||||
this.toolStripButton1.Size = new System.Drawing.Size(24, 24);
|
||||
this.toolStripButton1.Text = "";
|
||||
//
|
||||
// MainForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(11F, 24F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1132, 504);
|
||||
this.ClientSize = new System.Drawing.Size(1384, 605);
|
||||
this.Controls.Add(this.jobsDataGridView);
|
||||
this.Controls.Add(this.jobsToolStrip);
|
||||
this.Controls.Add(this.statusStrip);
|
||||
this.Controls.Add(this.mainMenuToolStrip);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.MinimumSize = new System.Drawing.Size(1010, 361);
|
||||
this.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.MinimumSize = new System.Drawing.Size(1229, 420);
|
||||
this.Name = "MainForm";
|
||||
this.Text = Resources.Recurring_Integrations_Scheduler;
|
||||
this.Text = "Recurring Integrations Scheduler";
|
||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Manager_FormClosing);
|
||||
this.mainMenuToolStrip.ResumeLayout(false);
|
||||
this.mainMenuToolStrip.PerformLayout();
|
||||
|
|
|
@ -117,6 +117,18 @@
|
|||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="mainMenuToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>272, 17</value>
|
||||
</metadata>
|
||||
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>439, 17</value>
|
||||
</metadata>
|
||||
<metadata name="jobsToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>687, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
|
|
|
@ -84,15 +84,15 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.foldersGroupBox = new System.Windows.Forms.GroupBox();
|
||||
this.applicationsGroupBox = new System.Windows.Forms.GroupBox();
|
||||
this.applicationsGrid = new System.Windows.Forms.DataGridView();
|
||||
this.applicationName = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.applicationType = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.applicationClientId = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.applicationSecret = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.applicationsToolStrip = new System.Windows.Forms.ToolStrip();
|
||||
this.applicationsAddButton = new System.Windows.Forms.ToolStripButton();
|
||||
this.applicationsDeleteButton = new System.Windows.Forms.ToolStripButton();
|
||||
this.applicationsEditButton = new System.Windows.Forms.ToolStripButton();
|
||||
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.applicationName = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.applicationType = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.applicationClientId = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.applicationSecret = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.instancesToolStrip.SuspendLayout();
|
||||
this.usersToolStrip.SuspendLayout();
|
||||
this.dataJobsToolStrip.SuspendLayout();
|
||||
|
@ -125,10 +125,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.instancesDeleteButton,
|
||||
this.instancesEditButton,
|
||||
this.instancesValidateButton});
|
||||
this.instancesToolStrip.Location = new System.Drawing.Point(6, 365);
|
||||
this.instancesToolStrip.Location = new System.Drawing.Point(7, 436);
|
||||
this.instancesToolStrip.Name = "instancesToolStrip";
|
||||
this.instancesToolStrip.Padding = new System.Windows.Forms.Padding(0);
|
||||
this.instancesToolStrip.Size = new System.Drawing.Size(638, 32);
|
||||
this.instancesToolStrip.Size = new System.Drawing.Size(780, 40);
|
||||
this.instancesToolStrip.TabIndex = 2;
|
||||
//
|
||||
// instancesAddButton
|
||||
|
@ -136,7 +136,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.instancesAddButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Add_16xMD;
|
||||
this.instancesAddButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.instancesAddButton.Name = "instancesAddButton";
|
||||
this.instancesAddButton.Size = new System.Drawing.Size(70, 29);
|
||||
this.instancesAddButton.Size = new System.Drawing.Size(75, 34);
|
||||
this.instancesAddButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Add;
|
||||
this.instancesAddButton.Click += new System.EventHandler(this.AxInstancesAddButton_Click);
|
||||
//
|
||||
|
@ -146,7 +146,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.instancesDeleteButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Remove_16xMD;
|
||||
this.instancesDeleteButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.instancesDeleteButton.Name = "instancesDeleteButton";
|
||||
this.instancesDeleteButton.Size = new System.Drawing.Size(86, 29);
|
||||
this.instancesDeleteButton.Size = new System.Drawing.Size(97, 34);
|
||||
this.instancesDeleteButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Delete;
|
||||
this.instancesDeleteButton.Click += new System.EventHandler(this.AxInstancesDeleteButton_Click);
|
||||
//
|
||||
|
@ -156,7 +156,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.instancesEditButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Edit_16xMD;
|
||||
this.instancesEditButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.instancesEditButton.Name = "instancesEditButton";
|
||||
this.instancesEditButton.Size = new System.Drawing.Size(66, 29);
|
||||
this.instancesEditButton.Size = new System.Drawing.Size(72, 34);
|
||||
this.instancesEditButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Edit;
|
||||
this.instancesEditButton.Click += new System.EventHandler(this.InstancesEditButton_Click);
|
||||
//
|
||||
|
@ -166,7 +166,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.instancesValidateButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.ValidateDocument_16x;
|
||||
this.instancesValidateButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.instancesValidateButton.Name = "instancesValidateButton";
|
||||
this.instancesValidateButton.Size = new System.Drawing.Size(98, 29);
|
||||
this.instancesValidateButton.Size = new System.Drawing.Size(110, 34);
|
||||
this.instancesValidateButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Validate;
|
||||
this.instancesValidateButton.Click += new System.EventHandler(this.InstancesValidateButton_Click);
|
||||
//
|
||||
|
@ -179,10 +179,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.usersAddButton,
|
||||
this.usersDeleteButton,
|
||||
this.usersEditButton});
|
||||
this.usersToolStrip.Location = new System.Drawing.Point(6, 365);
|
||||
this.usersToolStrip.Location = new System.Drawing.Point(7, 437);
|
||||
this.usersToolStrip.Name = "usersToolStrip";
|
||||
this.usersToolStrip.Padding = new System.Windows.Forms.Padding(0);
|
||||
this.usersToolStrip.Size = new System.Drawing.Size(310, 32);
|
||||
this.usersToolStrip.Size = new System.Drawing.Size(379, 40);
|
||||
this.usersToolStrip.TabIndex = 3;
|
||||
//
|
||||
// usersAddButton
|
||||
|
@ -190,7 +190,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.usersAddButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Add_16xMD;
|
||||
this.usersAddButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.usersAddButton.Name = "usersAddButton";
|
||||
this.usersAddButton.Size = new System.Drawing.Size(70, 29);
|
||||
this.usersAddButton.Size = new System.Drawing.Size(75, 34);
|
||||
this.usersAddButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Add;
|
||||
this.usersAddButton.Click += new System.EventHandler(this.UsersAddButton_Click);
|
||||
//
|
||||
|
@ -200,7 +200,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.usersDeleteButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Remove_16xMD;
|
||||
this.usersDeleteButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.usersDeleteButton.Name = "usersDeleteButton";
|
||||
this.usersDeleteButton.Size = new System.Drawing.Size(86, 29);
|
||||
this.usersDeleteButton.Size = new System.Drawing.Size(97, 34);
|
||||
this.usersDeleteButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Delete;
|
||||
this.usersDeleteButton.Click += new System.EventHandler(this.UsersDeleteButton_Click);
|
||||
//
|
||||
|
@ -210,7 +210,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.usersEditButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Edit_16xMD;
|
||||
this.usersEditButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.usersEditButton.Name = "usersEditButton";
|
||||
this.usersEditButton.Size = new System.Drawing.Size(66, 29);
|
||||
this.usersEditButton.Size = new System.Drawing.Size(72, 34);
|
||||
this.usersEditButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Edit;
|
||||
this.usersEditButton.Click += new System.EventHandler(this.UsersEditButton_Click);
|
||||
//
|
||||
|
@ -223,10 +223,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.dataJobsAddButton,
|
||||
this.dataJobsDeleteButton,
|
||||
this.dataJobsEditButton});
|
||||
this.dataJobsToolStrip.Location = new System.Drawing.Point(6, 365);
|
||||
this.dataJobsToolStrip.Location = new System.Drawing.Point(7, 436);
|
||||
this.dataJobsToolStrip.Name = "dataJobsToolStrip";
|
||||
this.dataJobsToolStrip.Padding = new System.Windows.Forms.Padding(0);
|
||||
this.dataJobsToolStrip.Size = new System.Drawing.Size(307, 32);
|
||||
this.dataJobsToolStrip.Size = new System.Drawing.Size(376, 40);
|
||||
this.dataJobsToolStrip.TabIndex = 3;
|
||||
//
|
||||
// dataJobsAddButton
|
||||
|
@ -234,7 +234,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.dataJobsAddButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Add_16xMD;
|
||||
this.dataJobsAddButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.dataJobsAddButton.Name = "dataJobsAddButton";
|
||||
this.dataJobsAddButton.Size = new System.Drawing.Size(70, 29);
|
||||
this.dataJobsAddButton.Size = new System.Drawing.Size(75, 34);
|
||||
this.dataJobsAddButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Add;
|
||||
this.dataJobsAddButton.Click += new System.EventHandler(this.DataJobsAddButton_Click);
|
||||
//
|
||||
|
@ -244,7 +244,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.dataJobsDeleteButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Remove_16xMD;
|
||||
this.dataJobsDeleteButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.dataJobsDeleteButton.Name = "dataJobsDeleteButton";
|
||||
this.dataJobsDeleteButton.Size = new System.Drawing.Size(86, 29);
|
||||
this.dataJobsDeleteButton.Size = new System.Drawing.Size(97, 34);
|
||||
this.dataJobsDeleteButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Delete;
|
||||
this.dataJobsDeleteButton.Click += new System.EventHandler(this.DataJobsDeleteButton_Click);
|
||||
//
|
||||
|
@ -254,7 +254,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.dataJobsEditButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Edit_16xMD;
|
||||
this.dataJobsEditButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.dataJobsEditButton.Name = "dataJobsEditButton";
|
||||
this.dataJobsEditButton.Size = new System.Drawing.Size(66, 29);
|
||||
this.dataJobsEditButton.Size = new System.Drawing.Size(72, 34);
|
||||
this.dataJobsEditButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Edit;
|
||||
this.dataJobsEditButton.Click += new System.EventHandler(this.DataJobsEditButton_Click);
|
||||
//
|
||||
|
@ -267,10 +267,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.jobGroupsAddButton,
|
||||
this.jobGroupsDeleteButton,
|
||||
this.jobGroupsEditButton});
|
||||
this.jobGroupsToolStrip.Location = new System.Drawing.Point(6, 365);
|
||||
this.jobGroupsToolStrip.Location = new System.Drawing.Point(7, 437);
|
||||
this.jobGroupsToolStrip.Name = "jobGroupsToolStrip";
|
||||
this.jobGroupsToolStrip.Padding = new System.Windows.Forms.Padding(0);
|
||||
this.jobGroupsToolStrip.Size = new System.Drawing.Size(307, 32);
|
||||
this.jobGroupsToolStrip.Size = new System.Drawing.Size(376, 40);
|
||||
this.jobGroupsToolStrip.TabIndex = 4;
|
||||
//
|
||||
// jobGroupsAddButton
|
||||
|
@ -278,7 +278,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.jobGroupsAddButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Add_16xMD;
|
||||
this.jobGroupsAddButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.jobGroupsAddButton.Name = "jobGroupsAddButton";
|
||||
this.jobGroupsAddButton.Size = new System.Drawing.Size(70, 29);
|
||||
this.jobGroupsAddButton.Size = new System.Drawing.Size(75, 34);
|
||||
this.jobGroupsAddButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Add;
|
||||
this.jobGroupsAddButton.Click += new System.EventHandler(this.JobGroupsAddButton_Click);
|
||||
//
|
||||
|
@ -288,7 +288,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.jobGroupsDeleteButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Remove_16xMD;
|
||||
this.jobGroupsDeleteButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.jobGroupsDeleteButton.Name = "jobGroupsDeleteButton";
|
||||
this.jobGroupsDeleteButton.Size = new System.Drawing.Size(86, 29);
|
||||
this.jobGroupsDeleteButton.Size = new System.Drawing.Size(97, 34);
|
||||
this.jobGroupsDeleteButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Delete;
|
||||
this.jobGroupsDeleteButton.Click += new System.EventHandler(this.JobGroupsDeleteButton_Click);
|
||||
//
|
||||
|
@ -298,7 +298,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.jobGroupsEditButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Edit_16xMD;
|
||||
this.jobGroupsEditButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.jobGroupsEditButton.Name = "jobGroupsEditButton";
|
||||
this.jobGroupsEditButton.Size = new System.Drawing.Size(66, 29);
|
||||
this.jobGroupsEditButton.Size = new System.Drawing.Size(72, 34);
|
||||
this.jobGroupsEditButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Edit;
|
||||
this.jobGroupsEditButton.Click += new System.EventHandler(this.JobGroupsEditButton_Click);
|
||||
//
|
||||
|
@ -308,14 +308,14 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.instancesGroupBox.Controls.Add(this.instancesGrid);
|
||||
this.instancesGroupBox.Controls.Add(this.instancesToolStrip);
|
||||
this.instancesGroupBox.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.instancesGroupBox.Location = new System.Drawing.Point(4, 5);
|
||||
this.instancesGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.instancesGroupBox.Location = new System.Drawing.Point(5, 6);
|
||||
this.instancesGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.instancesGroupBox.Name = "instancesGroupBox";
|
||||
this.instancesGroupBox.Padding = new System.Windows.Forms.Padding(6, 12, 6, 6);
|
||||
this.instancesGroupBox.Size = new System.Drawing.Size(650, 403);
|
||||
this.instancesGroupBox.Padding = new System.Windows.Forms.Padding(7, 14, 7, 7);
|
||||
this.instancesGroupBox.Size = new System.Drawing.Size(794, 483);
|
||||
this.instancesGroupBox.TabIndex = 1;
|
||||
this.instancesGroupBox.TabStop = false;
|
||||
this.instancesGroupBox.Text = Resources.Dynamics_365_for_Operations_instances;
|
||||
this.instancesGroupBox.Text = "Dynamics 365 for Finance and Operations instances";
|
||||
//
|
||||
// instancesGrid
|
||||
//
|
||||
|
@ -333,15 +333,15 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.instanceAadTenant,
|
||||
this.instanceAzureAuthEndpoint});
|
||||
this.instancesGrid.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.instancesGrid.Location = new System.Drawing.Point(6, 31);
|
||||
this.instancesGrid.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.instancesGrid.Location = new System.Drawing.Point(7, 36);
|
||||
this.instancesGrid.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.instancesGrid.MultiSelect = false;
|
||||
this.instancesGrid.Name = "instancesGrid";
|
||||
this.instancesGrid.ReadOnly = true;
|
||||
this.instancesGrid.RowHeadersVisible = false;
|
||||
this.instancesGrid.RowHeadersWidth = 4;
|
||||
this.instancesGrid.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
this.instancesGrid.Size = new System.Drawing.Size(638, 334);
|
||||
this.instancesGrid.Size = new System.Drawing.Size(780, 400);
|
||||
this.instancesGrid.TabIndex = 0;
|
||||
this.instancesGrid.CellContentDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.InstancesGrid_CellContentDoubleClick);
|
||||
this.instancesGrid.RowsRemoved += new System.Windows.Forms.DataGridViewRowsRemovedEventHandler(this.InstancesDataGridView_RowsRemoved);
|
||||
|
@ -352,7 +352,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.instanceName.DataPropertyName = "Name";
|
||||
this.instanceName.FillWeight = 40F;
|
||||
this.instanceName.HeaderText = Resources.NameLabel;
|
||||
this.instanceName.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.NameLabel;
|
||||
this.instanceName.MinimumWidth = 9;
|
||||
this.instanceName.Name = "instanceName";
|
||||
this.instanceName.ReadOnly = true;
|
||||
this.instanceName.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Friendly_name_used_only_in_Recurring_Integrations_App;
|
||||
|
@ -362,6 +363,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.instanceAosUri.DataPropertyName = "AosUri";
|
||||
this.instanceAosUri.FillWeight = 40F;
|
||||
this.instanceAosUri.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.AOS_URL;
|
||||
this.instanceAosUri.MinimumWidth = 9;
|
||||
this.instanceAosUri.Name = "instanceAosUri";
|
||||
this.instanceAosUri.ReadOnly = true;
|
||||
//
|
||||
|
@ -370,6 +372,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.instanceAadTenant.DataPropertyName = "AadTenant";
|
||||
this.instanceAadTenant.FillWeight = 20F;
|
||||
this.instanceAadTenant.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Tenant;
|
||||
this.instanceAadTenant.MinimumWidth = 9;
|
||||
this.instanceAadTenant.Name = "instanceAadTenant";
|
||||
this.instanceAadTenant.ReadOnly = true;
|
||||
this.instanceAadTenant.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Uri_or_Guid;
|
||||
|
@ -378,6 +381,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.instanceAzureAuthEndpoint.DataPropertyName = "AzureAuthEndpoint";
|
||||
this.instanceAzureAuthEndpoint.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Authentication_endpoint;
|
||||
this.instanceAzureAuthEndpoint.MinimumWidth = 9;
|
||||
this.instanceAzureAuthEndpoint.Name = "instanceAzureAuthEndpoint";
|
||||
this.instanceAzureAuthEndpoint.ReadOnly = true;
|
||||
this.instanceAzureAuthEndpoint.Visible = false;
|
||||
|
@ -387,14 +391,14 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.usersGroupBox.Controls.Add(this.usersDataGrid);
|
||||
this.usersGroupBox.Controls.Add(this.usersToolStrip);
|
||||
this.usersGroupBox.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.usersGroupBox.Location = new System.Drawing.Point(332, 418);
|
||||
this.usersGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.usersGroupBox.Location = new System.Drawing.Point(406, 501);
|
||||
this.usersGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.usersGroupBox.Name = "usersGroupBox";
|
||||
this.usersGroupBox.Padding = new System.Windows.Forms.Padding(6, 12, 6, 6);
|
||||
this.usersGroupBox.Size = new System.Drawing.Size(322, 403);
|
||||
this.usersGroupBox.Padding = new System.Windows.Forms.Padding(7, 14, 7, 7);
|
||||
this.usersGroupBox.Size = new System.Drawing.Size(393, 484);
|
||||
this.usersGroupBox.TabIndex = 0;
|
||||
this.usersGroupBox.TabStop = false;
|
||||
this.usersGroupBox.Text = Resources.User_credentials;
|
||||
this.usersGroupBox.Text = "User credentials";
|
||||
//
|
||||
// usersDataGrid
|
||||
//
|
||||
|
@ -410,15 +414,15 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.userLogin,
|
||||
this.userPassword});
|
||||
this.usersDataGrid.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.usersDataGrid.Location = new System.Drawing.Point(6, 31);
|
||||
this.usersDataGrid.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.usersDataGrid.Location = new System.Drawing.Point(7, 36);
|
||||
this.usersDataGrid.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.usersDataGrid.MultiSelect = false;
|
||||
this.usersDataGrid.Name = "usersDataGrid";
|
||||
this.usersDataGrid.ReadOnly = true;
|
||||
this.usersDataGrid.RowHeadersVisible = false;
|
||||
this.usersDataGrid.RowHeadersWidth = 4;
|
||||
this.usersDataGrid.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
this.usersDataGrid.Size = new System.Drawing.Size(310, 334);
|
||||
this.usersDataGrid.Size = new System.Drawing.Size(379, 401);
|
||||
this.usersDataGrid.TabIndex = 1;
|
||||
this.usersDataGrid.CellContentDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.UsersDataGrid_CellContentDoubleClick);
|
||||
this.usersDataGrid.RowsRemoved += new System.Windows.Forms.DataGridViewRowsRemovedEventHandler(this.UsersDataGridView_RowsRemoved);
|
||||
|
@ -428,6 +432,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.userLogin.DataPropertyName = "Login";
|
||||
this.userLogin.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.User_login_UPN;
|
||||
this.userLogin.MinimumWidth = 9;
|
||||
this.userLogin.Name = "userLogin";
|
||||
this.userLogin.ReadOnly = true;
|
||||
this.userLogin.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.User_login_like_admin_contoso_com;
|
||||
|
@ -436,6 +441,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.userPassword.DataPropertyName = "Password";
|
||||
this.userPassword.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Password;
|
||||
this.userPassword.MinimumWidth = 9;
|
||||
this.userPassword.Name = "userPassword";
|
||||
this.userPassword.ReadOnly = true;
|
||||
this.userPassword.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Password;
|
||||
|
@ -446,14 +452,14 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.dataJobsGroupBox.Controls.Add(this.dataJobsGrid);
|
||||
this.dataJobsGroupBox.Controls.Add(this.dataJobsToolStrip);
|
||||
this.dataJobsGroupBox.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.dataJobsGroupBox.Location = new System.Drawing.Point(662, 5);
|
||||
this.dataJobsGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.dataJobsGroupBox.Location = new System.Drawing.Point(809, 6);
|
||||
this.dataJobsGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.dataJobsGroupBox.Name = "dataJobsGroupBox";
|
||||
this.dataJobsGroupBox.Padding = new System.Windows.Forms.Padding(6, 12, 6, 6);
|
||||
this.dataJobsGroupBox.Size = new System.Drawing.Size(319, 403);
|
||||
this.dataJobsGroupBox.Padding = new System.Windows.Forms.Padding(7, 14, 7, 7);
|
||||
this.dataJobsGroupBox.Size = new System.Drawing.Size(390, 483);
|
||||
this.dataJobsGroupBox.TabIndex = 0;
|
||||
this.dataJobsGroupBox.TabStop = false;
|
||||
this.dataJobsGroupBox.Text = Resources.Data_jobs;
|
||||
this.dataJobsGroupBox.Text = "Data jobs";
|
||||
//
|
||||
// dataJobsGrid
|
||||
//
|
||||
|
@ -471,15 +477,15 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.dataJobActivityId,
|
||||
this.dataJobEntityName});
|
||||
this.dataJobsGrid.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.dataJobsGrid.Location = new System.Drawing.Point(6, 31);
|
||||
this.dataJobsGrid.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.dataJobsGrid.Location = new System.Drawing.Point(7, 36);
|
||||
this.dataJobsGrid.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.dataJobsGrid.MultiSelect = false;
|
||||
this.dataJobsGrid.Name = "dataJobsGrid";
|
||||
this.dataJobsGrid.ReadOnly = true;
|
||||
this.dataJobsGrid.RowHeadersVisible = false;
|
||||
this.dataJobsGrid.RowHeadersWidth = 4;
|
||||
this.dataJobsGrid.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
this.dataJobsGrid.Size = new System.Drawing.Size(307, 334);
|
||||
this.dataJobsGrid.Size = new System.Drawing.Size(376, 400);
|
||||
this.dataJobsGrid.TabIndex = 0;
|
||||
this.dataJobsGrid.CellContentDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataJobsGrid_CellContentDoubleClick);
|
||||
this.dataJobsGrid.RowsRemoved += new System.Windows.Forms.DataGridViewRowsRemovedEventHandler(this.DataJobsDataGridView_RowsRemoved);
|
||||
|
@ -488,7 +494,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
// dataJobName
|
||||
//
|
||||
this.dataJobName.DataPropertyName = "Name";
|
||||
this.dataJobName.HeaderText = Resources.NameLabel;
|
||||
this.dataJobName.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.NameLabel;
|
||||
this.dataJobName.MinimumWidth = 50;
|
||||
this.dataJobName.Name = "dataJobName";
|
||||
this.dataJobName.ReadOnly = true;
|
||||
|
@ -506,6 +512,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.dataJobActivityId.DataPropertyName = "ActivityId";
|
||||
this.dataJobActivityId.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Activity_Id;
|
||||
this.dataJobActivityId.MinimumWidth = 9;
|
||||
this.dataJobActivityId.Name = "dataJobActivityId";
|
||||
this.dataJobActivityId.ReadOnly = true;
|
||||
this.dataJobActivityId.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Activity_Id_Guid_of_this_data_job_configured_in_Dynamics;
|
||||
|
@ -515,6 +522,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.dataJobEntityName.DataPropertyName = "EntityName";
|
||||
this.dataJobEntityName.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Entity_name;
|
||||
this.dataJobEntityName.MinimumWidth = 9;
|
||||
this.dataJobEntityName.Name = "dataJobEntityName";
|
||||
this.dataJobEntityName.ReadOnly = true;
|
||||
this.dataJobEntityName.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Entity_name_for_this_data_job_configured_in_Dynamics;
|
||||
|
@ -524,32 +532,32 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.downloadJobsFolderGroupBox.Controls.Add(this.downloadErrorsFolderLabel);
|
||||
this.downloadJobsFolderGroupBox.Controls.Add(this.downloadErrorsFolder);
|
||||
this.downloadJobsFolderGroupBox.Location = new System.Drawing.Point(10, 325);
|
||||
this.downloadJobsFolderGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.downloadJobsFolderGroupBox.Location = new System.Drawing.Point(12, 390);
|
||||
this.downloadJobsFolderGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.downloadJobsFolderGroupBox.Name = "downloadJobsFolderGroupBox";
|
||||
this.downloadJobsFolderGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.downloadJobsFolderGroupBox.Size = new System.Drawing.Size(260, 72);
|
||||
this.downloadJobsFolderGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.downloadJobsFolderGroupBox.Size = new System.Drawing.Size(318, 86);
|
||||
this.downloadJobsFolderGroupBox.TabIndex = 2;
|
||||
this.downloadJobsFolderGroupBox.TabStop = false;
|
||||
this.downloadJobsFolderGroupBox.Text = Resources.Download_jobs_folders_names;
|
||||
this.downloadJobsFolderGroupBox.Text = "Download/export folders names";
|
||||
//
|
||||
// downloadErrorsFolderLabel
|
||||
//
|
||||
this.downloadErrorsFolderLabel.AutoSize = true;
|
||||
this.downloadErrorsFolderLabel.Location = new System.Drawing.Point(55, 32);
|
||||
this.downloadErrorsFolderLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.downloadErrorsFolderLabel.Location = new System.Drawing.Point(67, 38);
|
||||
this.downloadErrorsFolderLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.downloadErrorsFolderLabel.Name = "downloadErrorsFolderLabel";
|
||||
this.downloadErrorsFolderLabel.Size = new System.Drawing.Size(52, 20);
|
||||
this.downloadErrorsFolderLabel.Size = new System.Drawing.Size(64, 25);
|
||||
this.downloadErrorsFolderLabel.TabIndex = 7;
|
||||
this.downloadErrorsFolderLabel.Text = Resources.Errors;
|
||||
this.downloadErrorsFolderLabel.Text = "Errors";
|
||||
//
|
||||
// downloadErrorsFolder
|
||||
//
|
||||
this.downloadErrorsFolder.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::RecurringIntegrationsScheduler.Properties.Settings.Default, "DownloadErrorsFolder", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.downloadErrorsFolder.Location = new System.Drawing.Point(118, 29);
|
||||
this.downloadErrorsFolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.downloadErrorsFolder.Location = new System.Drawing.Point(144, 35);
|
||||
this.downloadErrorsFolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.downloadErrorsFolder.Name = "downloadErrorsFolder";
|
||||
this.downloadErrorsFolder.Size = new System.Drawing.Size(127, 26);
|
||||
this.downloadErrorsFolder.Size = new System.Drawing.Size(154, 29);
|
||||
this.downloadErrorsFolder.TabIndex = 9;
|
||||
this.downloadErrorsFolder.Text = global::RecurringIntegrationsScheduler.Properties.Settings.Default.DownloadErrorsFolder;
|
||||
//
|
||||
|
@ -559,52 +567,52 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.processingJobsFoldersGroupBox.Controls.Add(this.processingSuccessFolder);
|
||||
this.processingJobsFoldersGroupBox.Controls.Add(this.processingErrorsFolderLabel);
|
||||
this.processingJobsFoldersGroupBox.Controls.Add(this.processingErrorsFolder);
|
||||
this.processingJobsFoldersGroupBox.Location = new System.Drawing.Point(10, 199);
|
||||
this.processingJobsFoldersGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.processingJobsFoldersGroupBox.Location = new System.Drawing.Point(12, 239);
|
||||
this.processingJobsFoldersGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.processingJobsFoldersGroupBox.Name = "processingJobsFoldersGroupBox";
|
||||
this.processingJobsFoldersGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.processingJobsFoldersGroupBox.Size = new System.Drawing.Size(260, 116);
|
||||
this.processingJobsFoldersGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.processingJobsFoldersGroupBox.Size = new System.Drawing.Size(318, 139);
|
||||
this.processingJobsFoldersGroupBox.TabIndex = 1;
|
||||
this.processingJobsFoldersGroupBox.TabStop = false;
|
||||
this.processingJobsFoldersGroupBox.Text = Resources.Monitoring_jobs_folders_names;
|
||||
this.processingJobsFoldersGroupBox.Text = "Monitoring jobs folders names";
|
||||
//
|
||||
// processingSuccessFolderLabel
|
||||
//
|
||||
this.processingSuccessFolderLabel.AutoSize = true;
|
||||
this.processingSuccessFolderLabel.Location = new System.Drawing.Point(39, 39);
|
||||
this.processingSuccessFolderLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.processingSuccessFolderLabel.Location = new System.Drawing.Point(48, 47);
|
||||
this.processingSuccessFolderLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.processingSuccessFolderLabel.Name = "processingSuccessFolderLabel";
|
||||
this.processingSuccessFolderLabel.Size = new System.Drawing.Size(70, 20);
|
||||
this.processingSuccessFolderLabel.Size = new System.Drawing.Size(88, 25);
|
||||
this.processingSuccessFolderLabel.TabIndex = 9;
|
||||
this.processingSuccessFolderLabel.Text = Resources.Success;
|
||||
this.processingSuccessFolderLabel.Text = "Success";
|
||||
//
|
||||
// processingSuccessFolder
|
||||
//
|
||||
this.processingSuccessFolder.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::RecurringIntegrationsScheduler.Properties.Settings.Default, "ProcessingSuccessFolder", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.processingSuccessFolder.Location = new System.Drawing.Point(118, 35);
|
||||
this.processingSuccessFolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.processingSuccessFolder.Location = new System.Drawing.Point(144, 42);
|
||||
this.processingSuccessFolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.processingSuccessFolder.Name = "processingSuccessFolder";
|
||||
this.processingSuccessFolder.Size = new System.Drawing.Size(127, 26);
|
||||
this.processingSuccessFolder.Size = new System.Drawing.Size(154, 29);
|
||||
this.processingSuccessFolder.TabIndex = 12;
|
||||
this.processingSuccessFolder.Text = global::RecurringIntegrationsScheduler.Properties.Settings.Default.ProcessingSuccessFolder;
|
||||
//
|
||||
// processingErrorsFolderLabel
|
||||
//
|
||||
this.processingErrorsFolderLabel.AutoSize = true;
|
||||
this.processingErrorsFolderLabel.Location = new System.Drawing.Point(55, 76);
|
||||
this.processingErrorsFolderLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.processingErrorsFolderLabel.Location = new System.Drawing.Point(67, 91);
|
||||
this.processingErrorsFolderLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.processingErrorsFolderLabel.Name = "processingErrorsFolderLabel";
|
||||
this.processingErrorsFolderLabel.Size = new System.Drawing.Size(52, 20);
|
||||
this.processingErrorsFolderLabel.Size = new System.Drawing.Size(64, 25);
|
||||
this.processingErrorsFolderLabel.TabIndex = 13;
|
||||
this.processingErrorsFolderLabel.Text = Resources.Errors;
|
||||
this.processingErrorsFolderLabel.Text = "Errors";
|
||||
//
|
||||
// processingErrorsFolder
|
||||
//
|
||||
this.processingErrorsFolder.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::RecurringIntegrationsScheduler.Properties.Settings.Default, "ProcessingErrorsFolder", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.processingErrorsFolder.Location = new System.Drawing.Point(118, 72);
|
||||
this.processingErrorsFolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.processingErrorsFolder.Location = new System.Drawing.Point(144, 86);
|
||||
this.processingErrorsFolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.processingErrorsFolder.Name = "processingErrorsFolder";
|
||||
this.processingErrorsFolder.Size = new System.Drawing.Size(127, 26);
|
||||
this.processingErrorsFolder.Size = new System.Drawing.Size(154, 29);
|
||||
this.processingErrorsFolder.TabIndex = 14;
|
||||
this.processingErrorsFolder.Text = global::RecurringIntegrationsScheduler.Properties.Settings.Default.ProcessingErrorsFolder;
|
||||
//
|
||||
|
@ -616,72 +624,72 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.uploadJobsFoldersGroupBox.Controls.Add(this.uploadSuccessFolder);
|
||||
this.uploadJobsFoldersGroupBox.Controls.Add(this.uploadErrorsFolderLabel);
|
||||
this.uploadJobsFoldersGroupBox.Controls.Add(this.uploadErrorsFolder);
|
||||
this.uploadJobsFoldersGroupBox.Location = new System.Drawing.Point(10, 31);
|
||||
this.uploadJobsFoldersGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.uploadJobsFoldersGroupBox.Location = new System.Drawing.Point(12, 37);
|
||||
this.uploadJobsFoldersGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.uploadJobsFoldersGroupBox.Name = "uploadJobsFoldersGroupBox";
|
||||
this.uploadJobsFoldersGroupBox.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.uploadJobsFoldersGroupBox.Size = new System.Drawing.Size(260, 158);
|
||||
this.uploadJobsFoldersGroupBox.Padding = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.uploadJobsFoldersGroupBox.Size = new System.Drawing.Size(318, 190);
|
||||
this.uploadJobsFoldersGroupBox.TabIndex = 0;
|
||||
this.uploadJobsFoldersGroupBox.TabStop = false;
|
||||
this.uploadJobsFoldersGroupBox.Text = Resources.Upload_jobs_folders_names;
|
||||
this.uploadJobsFoldersGroupBox.Text = "Upload/import jobs folders names";
|
||||
//
|
||||
// uploadInputFolderLabel
|
||||
//
|
||||
this.uploadInputFolderLabel.AutoSize = true;
|
||||
this.uploadInputFolderLabel.Location = new System.Drawing.Point(19, 42);
|
||||
this.uploadInputFolderLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.uploadInputFolderLabel.Location = new System.Drawing.Point(23, 50);
|
||||
this.uploadInputFolderLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.uploadInputFolderLabel.Name = "uploadInputFolderLabel";
|
||||
this.uploadInputFolderLabel.Size = new System.Drawing.Size(90, 20);
|
||||
this.uploadInputFolderLabel.Size = new System.Drawing.Size(108, 25);
|
||||
this.uploadInputFolderLabel.TabIndex = 0;
|
||||
this.uploadInputFolderLabel.Text = Resources.Input_folder;
|
||||
this.uploadInputFolderLabel.Text = "Input folder";
|
||||
//
|
||||
// uploadInputFolder
|
||||
//
|
||||
this.uploadInputFolder.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::RecurringIntegrationsScheduler.Properties.Settings.Default, "UploadInputFolder", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.uploadInputFolder.Location = new System.Drawing.Point(118, 39);
|
||||
this.uploadInputFolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.uploadInputFolder.Location = new System.Drawing.Point(144, 47);
|
||||
this.uploadInputFolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.uploadInputFolder.Name = "uploadInputFolder";
|
||||
this.uploadInputFolder.Size = new System.Drawing.Size(127, 26);
|
||||
this.uploadInputFolder.Size = new System.Drawing.Size(154, 29);
|
||||
this.uploadInputFolder.TabIndex = 4;
|
||||
this.uploadInputFolder.Text = global::RecurringIntegrationsScheduler.Properties.Settings.Default.UploadInputFolder;
|
||||
//
|
||||
// uploadSuccessFolderLabel
|
||||
//
|
||||
this.uploadSuccessFolderLabel.AutoSize = true;
|
||||
this.uploadSuccessFolderLabel.Location = new System.Drawing.Point(30, 80);
|
||||
this.uploadSuccessFolderLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.uploadSuccessFolderLabel.Location = new System.Drawing.Point(37, 96);
|
||||
this.uploadSuccessFolderLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.uploadSuccessFolderLabel.Name = "uploadSuccessFolderLabel";
|
||||
this.uploadSuccessFolderLabel.Size = new System.Drawing.Size(70, 20);
|
||||
this.uploadSuccessFolderLabel.Size = new System.Drawing.Size(88, 25);
|
||||
this.uploadSuccessFolderLabel.TabIndex = 1;
|
||||
this.uploadSuccessFolderLabel.Text = Resources.Success;
|
||||
this.uploadSuccessFolderLabel.Text = "Success";
|
||||
//
|
||||
// uploadSuccessFolder
|
||||
//
|
||||
this.uploadSuccessFolder.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::RecurringIntegrationsScheduler.Properties.Settings.Default, "UploadSuccessFolder", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.uploadSuccessFolder.Location = new System.Drawing.Point(118, 76);
|
||||
this.uploadSuccessFolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.uploadSuccessFolder.Location = new System.Drawing.Point(144, 91);
|
||||
this.uploadSuccessFolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.uploadSuccessFolder.Name = "uploadSuccessFolder";
|
||||
this.uploadSuccessFolder.Size = new System.Drawing.Size(127, 26);
|
||||
this.uploadSuccessFolder.Size = new System.Drawing.Size(154, 29);
|
||||
this.uploadSuccessFolder.TabIndex = 5;
|
||||
this.uploadSuccessFolder.Text = global::RecurringIntegrationsScheduler.Properties.Settings.Default.UploadSuccessFolder;
|
||||
//
|
||||
// uploadErrorsFolderLabel
|
||||
//
|
||||
this.uploadErrorsFolderLabel.AutoSize = true;
|
||||
this.uploadErrorsFolderLabel.Location = new System.Drawing.Point(55, 118);
|
||||
this.uploadErrorsFolderLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.uploadErrorsFolderLabel.Location = new System.Drawing.Point(67, 142);
|
||||
this.uploadErrorsFolderLabel.Margin = new System.Windows.Forms.Padding(5, 0, 5, 0);
|
||||
this.uploadErrorsFolderLabel.Name = "uploadErrorsFolderLabel";
|
||||
this.uploadErrorsFolderLabel.Size = new System.Drawing.Size(52, 20);
|
||||
this.uploadErrorsFolderLabel.Size = new System.Drawing.Size(64, 25);
|
||||
this.uploadErrorsFolderLabel.TabIndex = 3;
|
||||
this.uploadErrorsFolderLabel.Text = Resources.Errors;
|
||||
this.uploadErrorsFolderLabel.Text = "Errors";
|
||||
//
|
||||
// uploadErrorsFolder
|
||||
//
|
||||
this.uploadErrorsFolder.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::RecurringIntegrationsScheduler.Properties.Settings.Default, "UploadErrorsFolder", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.uploadErrorsFolder.Location = new System.Drawing.Point(118, 114);
|
||||
this.uploadErrorsFolder.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.uploadErrorsFolder.Location = new System.Drawing.Point(144, 137);
|
||||
this.uploadErrorsFolder.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.uploadErrorsFolder.Name = "uploadErrorsFolder";
|
||||
this.uploadErrorsFolder.Size = new System.Drawing.Size(127, 26);
|
||||
this.uploadErrorsFolder.Size = new System.Drawing.Size(154, 29);
|
||||
this.uploadErrorsFolder.TabIndex = 7;
|
||||
this.uploadErrorsFolder.Text = global::RecurringIntegrationsScheduler.Properties.Settings.Default.UploadErrorsFolder;
|
||||
//
|
||||
|
@ -690,14 +698,14 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.jobGroupsGroupBox.Controls.Add(this.jobGroupsGrid);
|
||||
this.jobGroupsGroupBox.Controls.Add(this.jobGroupsToolStrip);
|
||||
this.jobGroupsGroupBox.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.jobGroupsGroupBox.Location = new System.Drawing.Point(662, 418);
|
||||
this.jobGroupsGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobGroupsGroupBox.Location = new System.Drawing.Point(809, 501);
|
||||
this.jobGroupsGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobGroupsGroupBox.Name = "jobGroupsGroupBox";
|
||||
this.jobGroupsGroupBox.Padding = new System.Windows.Forms.Padding(6, 12, 6, 6);
|
||||
this.jobGroupsGroupBox.Size = new System.Drawing.Size(319, 403);
|
||||
this.jobGroupsGroupBox.Padding = new System.Windows.Forms.Padding(7, 14, 7, 7);
|
||||
this.jobGroupsGroupBox.Size = new System.Drawing.Size(390, 484);
|
||||
this.jobGroupsGroupBox.TabIndex = 1;
|
||||
this.jobGroupsGroupBox.TabStop = false;
|
||||
this.jobGroupsGroupBox.Text = Resources.Job_groups;
|
||||
this.jobGroupsGroupBox.Text = "Job groups";
|
||||
//
|
||||
// jobGroupsGrid
|
||||
//
|
||||
|
@ -712,15 +720,15 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.jobGroupsGrid.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
|
||||
this.jobGroupName});
|
||||
this.jobGroupsGrid.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.jobGroupsGrid.Location = new System.Drawing.Point(6, 31);
|
||||
this.jobGroupsGrid.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.jobGroupsGrid.Location = new System.Drawing.Point(7, 36);
|
||||
this.jobGroupsGrid.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.jobGroupsGrid.MultiSelect = false;
|
||||
this.jobGroupsGrid.Name = "jobGroupsGrid";
|
||||
this.jobGroupsGrid.ReadOnly = true;
|
||||
this.jobGroupsGrid.RowHeadersVisible = false;
|
||||
this.jobGroupsGrid.RowHeadersWidth = 4;
|
||||
this.jobGroupsGrid.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
this.jobGroupsGrid.Size = new System.Drawing.Size(307, 334);
|
||||
this.jobGroupsGrid.Size = new System.Drawing.Size(376, 401);
|
||||
this.jobGroupsGrid.TabIndex = 1;
|
||||
this.jobGroupsGrid.CellContentDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.JobGroupsGrid_CellContentDoubleClick);
|
||||
this.jobGroupsGrid.RowsRemoved += new System.Windows.Forms.DataGridViewRowsRemovedEventHandler(this.JobGroupsDataGridView_RowsRemoved);
|
||||
|
@ -730,6 +738,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//
|
||||
this.jobGroupName.DataPropertyName = "Name";
|
||||
this.jobGroupName.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Group_name;
|
||||
this.jobGroupName.MinimumWidth = 9;
|
||||
this.jobGroupName.Name = "jobGroupName";
|
||||
this.jobGroupName.ReadOnly = true;
|
||||
//
|
||||
|
@ -738,29 +747,29 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.foldersGroupBox.Controls.Add(this.uploadJobsFoldersGroupBox);
|
||||
this.foldersGroupBox.Controls.Add(this.processingJobsFoldersGroupBox);
|
||||
this.foldersGroupBox.Controls.Add(this.downloadJobsFolderGroupBox);
|
||||
this.foldersGroupBox.Location = new System.Drawing.Point(988, 4);
|
||||
this.foldersGroupBox.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.foldersGroupBox.Location = new System.Drawing.Point(1208, 5);
|
||||
this.foldersGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.foldersGroupBox.Name = "foldersGroupBox";
|
||||
this.foldersGroupBox.Padding = new System.Windows.Forms.Padding(6, 12, 6, 6);
|
||||
this.foldersGroupBox.Padding = new System.Windows.Forms.Padding(7, 14, 7, 7);
|
||||
this.tableLayoutPanel1.SetRowSpan(this.foldersGroupBox, 2);
|
||||
this.foldersGroupBox.Size = new System.Drawing.Size(282, 410);
|
||||
this.foldersGroupBox.Size = new System.Drawing.Size(345, 492);
|
||||
this.foldersGroupBox.TabIndex = 2;
|
||||
this.foldersGroupBox.TabStop = false;
|
||||
this.foldersGroupBox.Text = Resources.Default_folder_names;
|
||||
this.foldersGroupBox.Text = "Default folder names";
|
||||
//
|
||||
// applicationsGroupBox
|
||||
//
|
||||
this.applicationsGroupBox.Controls.Add(this.applicationsGrid);
|
||||
this.applicationsGroupBox.Controls.Add(this.applicationsToolStrip);
|
||||
this.applicationsGroupBox.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.applicationsGroupBox.Location = new System.Drawing.Point(4, 418);
|
||||
this.applicationsGroupBox.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.applicationsGroupBox.Location = new System.Drawing.Point(5, 501);
|
||||
this.applicationsGroupBox.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.applicationsGroupBox.Name = "applicationsGroupBox";
|
||||
this.applicationsGroupBox.Padding = new System.Windows.Forms.Padding(6, 12, 6, 6);
|
||||
this.applicationsGroupBox.Size = new System.Drawing.Size(320, 403);
|
||||
this.applicationsGroupBox.Padding = new System.Windows.Forms.Padding(7, 14, 7, 7);
|
||||
this.applicationsGroupBox.Size = new System.Drawing.Size(391, 484);
|
||||
this.applicationsGroupBox.TabIndex = 8;
|
||||
this.applicationsGroupBox.TabStop = false;
|
||||
this.applicationsGroupBox.Text = Resources.Azure_AD_applications;
|
||||
this.applicationsGroupBox.Text = "Azure AD applications";
|
||||
//
|
||||
// applicationsGrid
|
||||
//
|
||||
|
@ -778,20 +787,56 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.applicationClientId,
|
||||
this.applicationSecret});
|
||||
this.applicationsGrid.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.applicationsGrid.Location = new System.Drawing.Point(6, 31);
|
||||
this.applicationsGrid.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.applicationsGrid.Location = new System.Drawing.Point(7, 36);
|
||||
this.applicationsGrid.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.applicationsGrid.MultiSelect = false;
|
||||
this.applicationsGrid.Name = "applicationsGrid";
|
||||
this.applicationsGrid.ReadOnly = true;
|
||||
this.applicationsGrid.RowHeadersVisible = false;
|
||||
this.applicationsGrid.RowHeadersWidth = 4;
|
||||
this.applicationsGrid.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
this.applicationsGrid.Size = new System.Drawing.Size(308, 334);
|
||||
this.applicationsGrid.Size = new System.Drawing.Size(377, 401);
|
||||
this.applicationsGrid.TabIndex = 1;
|
||||
this.applicationsGrid.CellContentDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.ApplicationsGrid_CellContentDoubleClick);
|
||||
this.applicationsGrid.RowsRemoved += new System.Windows.Forms.DataGridViewRowsRemovedEventHandler(this.ApplicationsGrid_RowsRemoved);
|
||||
this.applicationsGrid.RowStateChanged += new System.Windows.Forms.DataGridViewRowStateChangedEventHandler(this.ApplicationsGrid_RowStateChanged);
|
||||
//
|
||||
// applicationName
|
||||
//
|
||||
this.applicationName.DataPropertyName = "Name";
|
||||
this.applicationName.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.NameLabel;
|
||||
this.applicationName.MinimumWidth = 9;
|
||||
this.applicationName.Name = "applicationName";
|
||||
this.applicationName.ReadOnly = true;
|
||||
//
|
||||
// applicationType
|
||||
//
|
||||
this.applicationType.DataPropertyName = "AuthenticationType";
|
||||
this.applicationType.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Auth_type;
|
||||
this.applicationType.MinimumWidth = 9;
|
||||
this.applicationType.Name = "applicationType";
|
||||
this.applicationType.ReadOnly = true;
|
||||
//
|
||||
// applicationClientId
|
||||
//
|
||||
this.applicationClientId.DataPropertyName = "ClientId";
|
||||
this.applicationClientId.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Client_Id;
|
||||
this.applicationClientId.MinimumWidth = 9;
|
||||
this.applicationClientId.Name = "applicationClientId";
|
||||
this.applicationClientId.ReadOnly = true;
|
||||
this.applicationClientId.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Application_client_Id_GUID;
|
||||
this.applicationClientId.Visible = false;
|
||||
//
|
||||
// applicationSecret
|
||||
//
|
||||
this.applicationSecret.DataPropertyName = "Secret";
|
||||
this.applicationSecret.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Secret;
|
||||
this.applicationSecret.MinimumWidth = 9;
|
||||
this.applicationSecret.Name = "applicationSecret";
|
||||
this.applicationSecret.ReadOnly = true;
|
||||
this.applicationSecret.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Web_application_client_secret;
|
||||
this.applicationSecret.Visible = false;
|
||||
//
|
||||
// applicationsToolStrip
|
||||
//
|
||||
this.applicationsToolStrip.Dock = System.Windows.Forms.DockStyle.Bottom;
|
||||
|
@ -801,10 +846,10 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.applicationsAddButton,
|
||||
this.applicationsDeleteButton,
|
||||
this.applicationsEditButton});
|
||||
this.applicationsToolStrip.Location = new System.Drawing.Point(6, 365);
|
||||
this.applicationsToolStrip.Location = new System.Drawing.Point(7, 437);
|
||||
this.applicationsToolStrip.Name = "applicationsToolStrip";
|
||||
this.applicationsToolStrip.Padding = new System.Windows.Forms.Padding(0);
|
||||
this.applicationsToolStrip.Size = new System.Drawing.Size(308, 32);
|
||||
this.applicationsToolStrip.Size = new System.Drawing.Size(377, 40);
|
||||
this.applicationsToolStrip.TabIndex = 4;
|
||||
//
|
||||
// applicationsAddButton
|
||||
|
@ -812,7 +857,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.applicationsAddButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Add_16xMD;
|
||||
this.applicationsAddButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.applicationsAddButton.Name = "applicationsAddButton";
|
||||
this.applicationsAddButton.Size = new System.Drawing.Size(70, 29);
|
||||
this.applicationsAddButton.Size = new System.Drawing.Size(75, 34);
|
||||
this.applicationsAddButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Add;
|
||||
this.applicationsAddButton.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Add_Azure_application;
|
||||
this.applicationsAddButton.Click += new System.EventHandler(this.ApplicationsAddButton_Click);
|
||||
|
@ -823,7 +868,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.applicationsDeleteButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Remove_16xMD;
|
||||
this.applicationsDeleteButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.applicationsDeleteButton.Name = "applicationsDeleteButton";
|
||||
this.applicationsDeleteButton.Size = new System.Drawing.Size(86, 29);
|
||||
this.applicationsDeleteButton.Size = new System.Drawing.Size(97, 34);
|
||||
this.applicationsDeleteButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Delete;
|
||||
this.applicationsDeleteButton.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Delete_Azure_application;
|
||||
this.applicationsDeleteButton.Click += new System.EventHandler(this.ApplicationsDeleteButton_Click);
|
||||
|
@ -834,7 +879,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.applicationsEditButton.Image = global::RecurringIntegrationsScheduler.Properties.Resources.Edit_16xMD;
|
||||
this.applicationsEditButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.applicationsEditButton.Name = "applicationsEditButton";
|
||||
this.applicationsEditButton.Size = new System.Drawing.Size(66, 29);
|
||||
this.applicationsEditButton.Size = new System.Drawing.Size(72, 34);
|
||||
this.applicationsEditButton.Text = global::RecurringIntegrationsScheduler.Properties.Resources.Edit;
|
||||
this.applicationsEditButton.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Edit_Azure_application;
|
||||
this.applicationsEditButton.Click += new System.EventHandler(this.ApplicationsEditButton_Click);
|
||||
|
@ -854,61 +899,29 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
this.tableLayoutPanel1.Controls.Add(this.applicationsGroupBox, 0, 1);
|
||||
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
|
||||
this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
this.tableLayoutPanel1.RowCount = 2;
|
||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tableLayoutPanel1.Size = new System.Drawing.Size(1275, 826);
|
||||
this.tableLayoutPanel1.Size = new System.Drawing.Size(1558, 991);
|
||||
this.tableLayoutPanel1.TabIndex = 9;
|
||||
//
|
||||
// applicationName
|
||||
//
|
||||
this.applicationName.DataPropertyName = "Name";
|
||||
this.applicationName.HeaderText = Resources.NameLabel;
|
||||
this.applicationName.Name = "applicationName";
|
||||
this.applicationName.ReadOnly = true;
|
||||
//
|
||||
// applicationType
|
||||
//
|
||||
this.applicationType.DataPropertyName = "AuthenticationType";
|
||||
this.applicationType.HeaderText = Resources.Auth_type;
|
||||
this.applicationType.Name = "applicationType";
|
||||
this.applicationType.ReadOnly = true;
|
||||
//
|
||||
// applicationClientId
|
||||
//
|
||||
this.applicationClientId.DataPropertyName = "ClientId";
|
||||
this.applicationClientId.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Client_Id;
|
||||
this.applicationClientId.Name = "applicationClientId";
|
||||
this.applicationClientId.ReadOnly = true;
|
||||
this.applicationClientId.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Application_client_Id_GUID;
|
||||
this.applicationClientId.Visible = false;
|
||||
//
|
||||
// applicationSecret
|
||||
//
|
||||
this.applicationSecret.DataPropertyName = "Secret";
|
||||
this.applicationSecret.HeaderText = global::RecurringIntegrationsScheduler.Properties.Resources.Secret;
|
||||
this.applicationSecret.Name = "applicationSecret";
|
||||
this.applicationSecret.ReadOnly = true;
|
||||
this.applicationSecret.ToolTipText = global::RecurringIntegrationsScheduler.Properties.Resources.Web_application_client_secret;
|
||||
this.applicationSecret.Visible = false;
|
||||
//
|
||||
// Parameters
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(11F, 24F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1275, 826);
|
||||
this.ClientSize = new System.Drawing.Size(1558, 991);
|
||||
this.Controls.Add(this.tableLayoutPanel1);
|
||||
this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.Margin = new System.Windows.Forms.Padding(5, 6, 5, 6);
|
||||
this.MinimizeBox = false;
|
||||
this.MinimumSize = new System.Drawing.Size(1190, 736);
|
||||
this.MinimumSize = new System.Drawing.Size(1449, 870);
|
||||
this.Name = "Parameters";
|
||||
this.ShowIcon = false;
|
||||
this.ShowInTaskbar = false;
|
||||
this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Show;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Text = Resources.Parameters;
|
||||
this.Text = "Parameters";
|
||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Settings_FormClosing);
|
||||
this.Load += new System.EventHandler(this.Settings_Load);
|
||||
this.instancesToolStrip.ResumeLayout(false);
|
||||
|
|
|
@ -117,4 +117,19 @@
|
|||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="instancesToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="usersToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>257, 17</value>
|
||||
</metadata>
|
||||
<metadata name="dataJobsToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>459, 17</value>
|
||||
</metadata>
|
||||
<metadata name="jobGroupsToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>696, 17</value>
|
||||
</metadata>
|
||||
<metadata name="applicationsToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>949, 17</value>
|
||||
</metadata>
|
||||
</root>
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -116,6 +116,9 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
UploadJobDetail.JobDataMap[SettingsConstants.IsDataPackage].ToString());
|
||||
statusFileExtensionTextBox.Text =
|
||||
UploadJobDetail.JobDataMap[SettingsConstants.StatusFileExtension]?.ToString() ?? ".Status";
|
||||
|
||||
numericUpDownIntervalUploads.Value = Math.Round(Convert.ToDecimal(UploadJobDetail.JobDataMap[SettingsConstants.Interval]));
|
||||
|
||||
serviceAuthRadioButton.Checked =
|
||||
(UploadJobDetail.JobDataMap[SettingsConstants.UseServiceAuthentication] != null) &&
|
||||
Convert.ToBoolean(UploadJobDetail.JobDataMap[SettingsConstants.UseServiceAuthentication].ToString());
|
||||
|
@ -269,6 +272,7 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
ProcessingJobDetail.JobDataMap[SettingsConstants.ProcessingSuccessDir]?.ToString() ?? string.Empty;
|
||||
processingErrorsFolderTextBox.Text =
|
||||
ProcessingJobDetail.JobDataMap[SettingsConstants.ProcessingErrorsDir]?.ToString() ?? string.Empty;
|
||||
numericUpDownStatusCheckInterval.Value = Math.Round(Convert.ToDecimal(ProcessingJobDetail.JobDataMap[SettingsConstants.StatusCheckInterval]));
|
||||
|
||||
if (ProcessingTrigger.GetType() == typeof(SimpleTriggerImpl))
|
||||
{
|
||||
|
@ -583,7 +587,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
{SettingsConstants.RetryCount, retriesCountUpDown.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.RetryDelay, retriesDelayUpDown.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.PauseJobOnException, pauseOnExceptionsCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.IndefinitePause, pauseIndefinitelyCheckBox.Checked.ToString()}
|
||||
{SettingsConstants.IndefinitePause, pauseIndefinitelyCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.Interval, numericUpDownIntervalUploads.Value.ToString(CultureInfo.InvariantCulture)}
|
||||
};
|
||||
if (serviceAuthRadioButton.Checked)
|
||||
{
|
||||
|
@ -619,7 +624,8 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
{SettingsConstants.RetryCount, retriesCountUpDown.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.RetryDelay, retriesDelayUpDown.Value.ToString(CultureInfo.InvariantCulture)},
|
||||
{SettingsConstants.PauseJobOnException, pauseOnExceptionsCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.IndefinitePause, pauseIndefinitelyCheckBox.Checked.ToString()}
|
||||
{SettingsConstants.IndefinitePause, pauseIndefinitelyCheckBox.Checked.ToString()},
|
||||
{SettingsConstants.StatusCheckInterval, numericUpDownStatusCheckInterval.Value.ToString(CultureInfo.InvariantCulture)}
|
||||
};
|
||||
if (serviceAuthRadioButton.Checked)
|
||||
{
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using Polly;
|
||||
using RecurringIntegrationsScheduler.Common.Helpers;
|
||||
using RecurringIntegrationsScheduler.Properties;
|
||||
|
@ -133,49 +131,6 @@ namespace RecurringIntegrationsScheduler.Forms
|
|||
//TODO: Investigate better approach
|
||||
messagesTextBox.Text += Resources.Access_to_D365FO_instance_was_successful + Environment.NewLine;
|
||||
}
|
||||
|
||||
var checkPackageApi = Task.Run(async () =>
|
||||
{
|
||||
var result = await httpClientHelper.GetAzureWriteUrl();
|
||||
return result;
|
||||
});
|
||||
checkPackageApi.Wait();
|
||||
if (string.IsNullOrEmpty(checkPackageApi.Result))
|
||||
{
|
||||
messagesTextBox.Text += Resources.GetAzureWriteUrl_returned_empty_string_Check_previous_errors;
|
||||
}
|
||||
else
|
||||
{
|
||||
var blobInfo = (JObject)JsonConvert.DeserializeObject(checkPackageApi.Result);
|
||||
var blobId = blobInfo["BlobId"].ToString();
|
||||
|
||||
if (!string.IsNullOrEmpty(blobId))
|
||||
{
|
||||
messagesTextBox.Text += Resources.D365FO_instance_seems_to_support_package_API + Environment.NewLine;
|
||||
}
|
||||
else
|
||||
{
|
||||
messagesTextBox.Text += Resources.D365FO_instance_seems_to_not_support_package_API + Environment.NewLine;
|
||||
return; //we should not check further.
|
||||
}
|
||||
}
|
||||
|
||||
var checkKb4058074 = Task.Run(async () =>
|
||||
{
|
||||
var result = await httpClientHelper.GetMessageStatus(new Guid().ToString());
|
||||
return result;
|
||||
});
|
||||
checkKb4058074.Wait();
|
||||
if (string.IsNullOrEmpty(checkKb4058074.Result))
|
||||
{
|
||||
//TODO
|
||||
messagesTextBox.Text += Resources.Method_GetMessageStatus_returned_empty_string_KB4058074_is_not_installed + Environment.NewLine;
|
||||
}
|
||||
else
|
||||
{
|
||||
//TODO
|
||||
messagesTextBox.Text += Resources.Instance_seems_to_support_GetMessageStatus_method + Environment.NewLine;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
|
|
@ -12,7 +12,7 @@ namespace RecurringIntegrationsScheduler.Properties {
|
|||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.8.0.0")]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.9.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
|
|
@ -167,7 +167,10 @@ namespace RecurringIntegrationsScheduler
|
|||
if (previousFireTime.HasValue)
|
||||
row["PreviousFireTime"] =
|
||||
TimeZone.CurrentTimeZone.ToLocalTime(previousFireTime.Value.DateTime);
|
||||
row["JobStatus"] = GetScheduler().GetTriggerState(triggers.First().Key).Result.ToString();
|
||||
var status = GetScheduler().GetTriggerState(triggers.First().Key).Result.ToString();
|
||||
if (status == "Blocked")
|
||||
status = "Executing";
|
||||
row["JobStatus"] = status;
|
||||
}
|
||||
table.Rows.Add(row);
|
||||
}
|
||||
|
@ -247,44 +250,42 @@ namespace RecurringIntegrationsScheduler
|
|||
/// <param name="triggerDetails">The trigger details.</param>
|
||||
private static void WriteToFile(FileInfo file, List<IJobDetail> jobDetails, List<ITrigger> triggerDetails)
|
||||
{
|
||||
using (var writer = file.CreateText())
|
||||
{
|
||||
XNamespace ns = "http://quartznet.sourceforge.net/JobSchedulingData";
|
||||
var doc = new XDocument(new XDeclaration("1.0", "UTF-8", "yes")
|
||||
, new XElement(ns + "job-scheduling-data"
|
||||
, new XAttribute(XNamespace.Xmlns + "xsi", "http://www.w3.org/2001/XMLSchema-instance")
|
||||
, new XAttribute("version", "2.0")
|
||||
));
|
||||
doc.Root?.Add(new XElement(ns + "processing-directives"
|
||||
, new XElement(ns + "overwrite-existing-data", true))
|
||||
using var writer = file.CreateText();
|
||||
XNamespace ns = "http://quartznet.sourceforge.net/JobSchedulingData";
|
||||
var doc = new XDocument(new XDeclaration("1.0", "UTF-8", "yes")
|
||||
, new XElement(ns + "job-scheduling-data"
|
||||
, new XAttribute(XNamespace.Xmlns + "xsi", "http://www.w3.org/2001/XMLSchema-instance")
|
||||
, new XAttribute("version", "2.0")
|
||||
));
|
||||
doc.Root?.Add(new XElement(ns + "processing-directives"
|
||||
, new XElement(ns + "overwrite-existing-data", true))
|
||||
);
|
||||
var schedule = new XElement(ns + "schedule");
|
||||
foreach (var detail in jobDetails)
|
||||
schedule.Add(
|
||||
new XElement(ns + "job"
|
||||
, new XElement(ns + "name", detail.Key.Name)
|
||||
, new XElement(ns + "group", detail.Key.Group)
|
||||
, new XElement(ns + "description", detail.Description)
|
||||
,
|
||||
new XElement(ns + "job-type",
|
||||
detail.JobType.FullName + "," + detail.JobType.Assembly.FullName)
|
||||
, new XElement(ns + "durable", detail.Durable)
|
||||
, new XElement(ns + "recover", detail.RequestsRecovery)
|
||||
, GetJobDataMap(ns, detail.JobDataMap)
|
||||
)
|
||||
);
|
||||
var schedule = new XElement(ns + "schedule");
|
||||
foreach (var detail in jobDetails)
|
||||
schedule.Add(
|
||||
new XElement(ns + "job"
|
||||
, new XElement(ns + "name", detail.Key.Name)
|
||||
, new XElement(ns + "group", detail.Key.Group)
|
||||
, new XElement(ns + "description", detail.Description)
|
||||
,
|
||||
new XElement(ns + "job-type",
|
||||
detail.JobType.FullName + "," + detail.JobType.Assembly.FullName)
|
||||
, new XElement(ns + "durable", detail.Durable)
|
||||
, new XElement(ns + "recover", detail.RequestsRecovery)
|
||||
, GetJobDataMap(ns, detail.JobDataMap)
|
||||
)
|
||||
);
|
||||
foreach (var trigger in triggerDetails)
|
||||
{
|
||||
if (trigger is SimpleTriggerImpl simple)
|
||||
schedule.Add(GetSimpleTrigger(ns, simple));
|
||||
if (trigger is CronTriggerImpl cron)
|
||||
schedule.Add(GetCronTrigger(ns, cron));
|
||||
if (trigger is CalendarIntervalTriggerImpl calendar)
|
||||
schedule.Add(GetCalendarIntervalTrigger(ns, calendar));
|
||||
}
|
||||
doc.Root?.Add(schedule);
|
||||
doc.Save(writer);
|
||||
foreach (var trigger in triggerDetails)
|
||||
{
|
||||
if (trigger is SimpleTriggerImpl simple)
|
||||
schedule.Add(GetSimpleTrigger(ns, simple));
|
||||
if (trigger is CronTriggerImpl cron)
|
||||
schedule.Add(GetCronTrigger(ns, cron));
|
||||
if (trigger is CalendarIntervalTriggerImpl calendar)
|
||||
schedule.Add(GetCalendarIntervalTrigger(ns, calendar));
|
||||
}
|
||||
doc.Root?.Add(schedule);
|
||||
doc.Save(writer);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -382,24 +383,16 @@ namespace RecurringIntegrationsScheduler
|
|||
/// <exception cref="System.ArgumentOutOfRangeException"></exception>
|
||||
private static string GetSimpleTriggerMisfireInstructionText(int misfireInstruction)
|
||||
{
|
||||
switch (misfireInstruction)
|
||||
return misfireInstruction switch
|
||||
{
|
||||
case 0:
|
||||
return "SmartPolicy";
|
||||
case 1:
|
||||
return "FireNow";
|
||||
case 2:
|
||||
return "RescheduleNowWithExistingRepeatCount";
|
||||
case 3:
|
||||
return "RescheduleNowWithRemainingRepeatCount";
|
||||
case 4:
|
||||
return "RescheduleNextWithRemainingCount";
|
||||
case 5:
|
||||
return "RescheduleNextWithExistingCount";
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(
|
||||
$"{misfireInstruction} is not a supported misfire instruction for SimpleTrigger See Quartz.MisfireInstruction for more details.");
|
||||
}
|
||||
0 => "SmartPolicy",
|
||||
1 => "FireNow",
|
||||
2 => "RescheduleNowWithExistingRepeatCount",
|
||||
3 => "RescheduleNowWithRemainingRepeatCount",
|
||||
4 => "RescheduleNextWithRemainingCount",
|
||||
5 => "RescheduleNextWithExistingCount",
|
||||
_ => throw new ArgumentOutOfRangeException($"{misfireInstruction} is not a supported misfire instruction for SimpleTrigger See Quartz.MisfireInstruction for more details."),
|
||||
};
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -410,18 +403,13 @@ namespace RecurringIntegrationsScheduler
|
|||
/// <exception cref="System.ArgumentOutOfRangeException"></exception>
|
||||
private static string GetCronTriggerMisfireInstructionText(int misfireInstruction)
|
||||
{
|
||||
switch (misfireInstruction)
|
||||
return misfireInstruction switch
|
||||
{
|
||||
case 0:
|
||||
return "SmartPolicy";
|
||||
case 1:
|
||||
return "FireOnceNow";
|
||||
case 2:
|
||||
return "DoNothing";
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(
|
||||
$"{misfireInstruction} is not a supported misfire instruction for CronTrigger See Quartz.MisfireInstruction for more details.");
|
||||
}
|
||||
0 => "SmartPolicy",
|
||||
1 => "FireOnceNow",
|
||||
2 => "DoNothing",
|
||||
_ => throw new ArgumentOutOfRangeException($"{misfireInstruction} is not a supported misfire instruction for CronTrigger See Quartz.MisfireInstruction for more details."),
|
||||
};
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RecurringIntegrationsScheduler</RootNamespace>
|
||||
<AssemblyName>RecurringIntegrationsScheduler</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<TargetFrameworkProfile />
|
||||
|
@ -41,6 +41,7 @@
|
|||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<CodeAnalysisIgnoreGeneratedCode>false</CodeAnalysisIgnoreGeneratedCode>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
|
@ -51,6 +52,7 @@
|
|||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<LangVersion>8.0</LangVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ApplicationIcon>Assets\Recurring Integrations Scheduler.ico</ApplicationIcon>
|
||||
|
@ -63,31 +65,42 @@
|
|||
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.11.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Polly, Version=6.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.6.1.0\lib\netstandard2.0\Polly.dll</HintPath>
|
||||
<Reference Include="Polly, Version=7.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Polly.7.2.0\lib\net472\Polly.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PortableSettingsProvider, Version=0.1.1.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\PortableSettingsProvider.0.1.1\lib\net45\PortableSettingsProvider.dll</HintPath>
|
||||
<Reference Include="PortableSettingsProvider, Version=0.2.3.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\PortableSettingsProvider.0.2.3\lib\net45\PortableSettingsProvider.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.3.0.7\lib\net452\Quartz.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz.Plugins">
|
||||
<HintPath>..\Setup\Quartz.Plugins.dll</HintPath>
|
||||
<Reference Include="Quartz.Jobs, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.Jobs.3.0.7\lib\net452\Quartz.Jobs.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz.Plugins, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.Plugins.3.0.7\lib\net452\Quartz.Plugins.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Quartz.Serialization.Json, Version=3.0.7.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Quartz.Serialization.Json.3.0.7\lib\net452\Quartz.Serialization.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Configuration.Install" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Runtime.Remoting" />
|
||||
<Reference Include="System.ServiceProcess" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="Topshelf, Version=4.2.1.215, Culture=neutral, PublicKeyToken=b800c4cfcdeea87b, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Topshelf.4.2.1\lib\net452\Topshelf.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\Version.cs">
|
||||
|
@ -182,16 +195,7 @@
|
|||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Settings\AadApplication.cs" />
|
||||
<Compile Include="Settings\AadApplications.cs" />
|
||||
<Compile Include="Settings\JobGroup.cs" />
|
||||
<Compile Include="Settings\JobGroups.cs" />
|
||||
<Compile Include="Settings\User.cs" />
|
||||
<Compile Include="Settings\Instance.cs" />
|
||||
<Compile Include="Settings\Users.cs" />
|
||||
<Compile Include="Settings\DataJob.cs" />
|
||||
<Compile Include="Settings\Instances.cs" />
|
||||
<Compile Include="Settings\DataJobs.cs" />
|
||||
<Compile Include="Settings\Settings.cs" />
|
||||
<Compile Include="Forms\Parameters.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
|
@ -303,7 +307,7 @@
|
|||
<None Include="Assets\Folder open_32xMD_exp.png" />
|
||||
<None Include="Assets\Add_16xMD.png" />
|
||||
<None Include="Assets\Edit_16xMD.png" />
|
||||
<Content Include="Assets\RecurringIntegrationsScheduler.ico" />
|
||||
<None Include="Assets\RecurringIntegrationsScheduler.ico" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<BootstrapperPackage Include=".NETFramework,Version=v4.5">
|
||||
|
|
|
@ -1,55 +0,0 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class AadApplication
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The name.
|
||||
/// </value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the client identifier.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The client identifier.
|
||||
/// </value>
|
||||
public string ClientId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the secret.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The secret.
|
||||
/// </value>
|
||||
public string Secret { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the type.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The type.
|
||||
/// </value>
|
||||
public AuthenticationType AuthenticationType { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public enum AuthenticationType
|
||||
{
|
||||
User,
|
||||
Service
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <seealso cref="System.ComponentModel.BindingList{AadApplication}" />
|
||||
public class AadApplications : BindingList<AadApplication>
|
||||
{
|
||||
}
|
||||
}
|
|
@ -1,55 +0,0 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class DataJob
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The name.
|
||||
/// </value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the activity identifier.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The activity identifier.
|
||||
/// </value>
|
||||
public string ActivityId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the name of the entity.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The name of the entity.
|
||||
/// </value>
|
||||
public string EntityName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the type.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The type.
|
||||
/// </value>
|
||||
public DataJobType Type { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public enum DataJobType
|
||||
{
|
||||
Download,
|
||||
Upload
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <seealso cref="System.ComponentModel.BindingList{DataJob}" />
|
||||
public class DataJobs : BindingList<DataJob>
|
||||
{
|
||||
}
|
||||
}
|
|
@ -1,46 +0,0 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class Instance
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The name.
|
||||
/// </value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the aos URI.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The aos URI.
|
||||
/// </value>
|
||||
public string AosUri { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the azure authentication endpoint.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The azure authentication endpoint.
|
||||
/// </value>
|
||||
public string AzureAuthEndpoint { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the aad tenant.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The aad tenant.
|
||||
/// </value>
|
||||
public string AadTenant { get; set; }
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <seealso cref="System.ComponentModel.BindingList{Instance}" />
|
||||
public class Instances : BindingList<Instance>
|
||||
{
|
||||
}
|
||||
}
|
|
@ -1,22 +0,0 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class JobGroup
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The name.
|
||||
/// </value>
|
||||
public string Name { get; set; }
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <seealso cref="System.ComponentModel.BindingList{JobGroup}" />
|
||||
public class JobGroups : BindingList<JobGroup>
|
||||
{
|
||||
}
|
||||
}
|
|
@ -0,0 +1,218 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System;
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
[Serializable]
|
||||
public class AadApplication
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The name.
|
||||
/// </value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the client identifier.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The client identifier.
|
||||
/// </value>
|
||||
public string ClientId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the secret.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The secret.
|
||||
/// </value>
|
||||
public string Secret { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the type.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The type.
|
||||
/// </value>
|
||||
public AuthenticationType AuthenticationType { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public enum AuthenticationType
|
||||
{
|
||||
User,
|
||||
Service
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <seealso cref="System.ComponentModel.BindingList{AadApplication}" />
|
||||
public class AadApplications : BindingList<AadApplication>
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class DataJob
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The name.
|
||||
/// </value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the activity identifier.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The activity identifier.
|
||||
/// </value>
|
||||
public string ActivityId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the name of the entity.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The name of the entity.
|
||||
/// </value>
|
||||
public string EntityName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the type.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The type.
|
||||
/// </value>
|
||||
public DataJobType Type { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public enum DataJobType
|
||||
{
|
||||
Download,
|
||||
Upload
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <seealso cref="System.ComponentModel.BindingList{DataJob}" />
|
||||
public class DataJobs : BindingList<DataJob>
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class Instance
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The name.
|
||||
/// </value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the aos URI.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The aos URI.
|
||||
/// </value>
|
||||
public string AosUri { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the azure authentication endpoint.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The azure authentication endpoint.
|
||||
/// </value>
|
||||
public string AzureAuthEndpoint { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the aad tenant.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The aad tenant.
|
||||
/// </value>
|
||||
public string AadTenant { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <seealso cref="System.ComponentModel.BindingList{Instance}" />
|
||||
public class Instances : BindingList<Instance>
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class JobGroup
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The name.
|
||||
/// </value>
|
||||
public string Name { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <seealso cref="System.ComponentModel.BindingList{JobGroup}" />
|
||||
public class JobGroups : BindingList<JobGroup>
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class User
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the login.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The login.
|
||||
/// </value>
|
||||
public string Login { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the password.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The password.
|
||||
/// </value>
|
||||
public string Password { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <seealso cref="System.ComponentModel.BindingList{User}" />
|
||||
public class Users : BindingList<User>
|
||||
{
|
||||
}
|
||||
}
|
|
@ -1,30 +0,0 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class User
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the login.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The login.
|
||||
/// </value>
|
||||
public string Login { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the password.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// The password.
|
||||
/// </value>
|
||||
public string Password { get; set; }
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
/* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the MIT License. */
|
||||
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace RecurringIntegrationsScheduler.Settings
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <seealso cref="System.ComponentModel.BindingList{User}" />
|
||||
public class Users : BindingList<User>
|
||||
{
|
||||
}
|
||||
}
|
|
@ -1,8 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="log4net" version="2.0.8" targetFramework="net46" />
|
||||
<package id="Newtonsoft.Json" version="11.0.2" targetFramework="net46" />
|
||||
<package id="Polly" version="6.1.0" targetFramework="net461" />
|
||||
<package id="PortableSettingsProvider" version="0.1.1" targetFramework="net461" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net472" />
|
||||
<package id="Polly" version="7.2.0" targetFramework="net472" />
|
||||
<package id="PortableSettingsProvider" version="0.2.3" targetFramework="net472" />
|
||||
<package id="Quartz" version="3.0.7" targetFramework="net461" />
|
||||
<package id="Quartz.Jobs" version="3.0.7" targetFramework="net472" />
|
||||
<package id="Quartz.Plugins" version="3.0.7" targetFramework="net472" />
|
||||
<package id="Quartz.Serialization.Json" version="3.0.7" targetFramework="net472" />
|
||||
<package id="Topshelf" version="4.2.1" targetFramework="net472" />
|
||||
</packages>
|
|
@ -37,11 +37,11 @@ Name: Scheduler; Description: Recurring Integrations Scheduler Service; Types: f
|
|||
; Quartz
|
||||
Source: "..\Output\Release\Quartz.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\log4net.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: ".\Quartz.Plugins.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: ".\Quartz.Jobs.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: ".\Quartz.Serialization.Json.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\Quartz.Plugins.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\Quartz.Jobs.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\Quartz.Serialization.Json.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\Topshelf.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: Scheduler
|
||||
Source: ".\Quartz.Server.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: Scheduler
|
||||
Source: ".\Topshelf.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: Scheduler
|
||||
; Common
|
||||
Source: "..\Output\Release\RecurringIntegrationsScheduler.Common.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
; Jobs
|
||||
|
@ -52,112 +52,14 @@ Source: "..\Output\Release\RecurringIntegrationsScheduler.Job.Import.dll"; DestD
|
|||
Source: "..\Output\Release\RecurringIntegrationsScheduler.Job.Export.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\RecurringIntegrationsScheduler.Job.ExecutionMonitor.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
; References
|
||||
Source: "..\Output\Release\Microsoft.IdentityModel.Clients.ActiveDirectory.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\Microsoft.IdentityModel.Clients.ActiveDirectory.Platform.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\Microsoft.Identity.Clients.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\Newtonsoft.Json.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Linq.Dynamic.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\Polly.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\PortableSettingsProvider.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\Microsoft.Win32.Primitives.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\netstandard.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.AppContext.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Collections.Concurrent.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Collections.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Collections.NonGeneric.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Collections.Specialized.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.ComponentModel.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.ComponentModel.EventBasedAsync.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.ComponentModel.Primitives.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.ComponentModel.TypeConverter.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Console.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Data.Common.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Diagnostics.Contracts.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Diagnostics.Debug.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Diagnostics.FileVersionInfo.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Diagnostics.Process.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Diagnostics.StackTrace.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Diagnostics.TextWriterTraceListener.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Diagnostics.Tools.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Diagnostics.TraceSource.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Diagnostics.Tracing.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Drawing.Primitives.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Dynamic.Runtime.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Globalization.Calendars.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Globalization.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Globalization.Extensions.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.Compression.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.Compression.ZipFile.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.FileSystem.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.FileSystem.DriveInfo.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.FileSystem.Primitives.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.FileSystem.Watcher.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.IsolatedStorage.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.MemoryMappedFiles.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.Pipes.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.IO.UnmanagedMemoryStream.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Linq.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Linq.Expressions.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Linq.Parallel.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Linq.Queryable.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.Http.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.NameResolution.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.NetworkInformation.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.Ping.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.Primitives.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.Requests.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.Security.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.Sockets.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.WebHeaderCollection.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.WebSockets.Client.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Net.WebSockets.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.ObjectModel.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Reflection.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Reflection.Extensions.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Reflection.Primitives.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Resources.Reader.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Resources.ResourceManager.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Resources.Writer.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.CompilerServices.VisualC.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.Extensions.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.Handles.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.InteropServices.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.InteropServices.RuntimeInformation.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.Numerics.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.Serialization.Formatters.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.Serialization.Json.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.Serialization.Primitives.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Runtime.Serialization.Xml.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Security.Claims.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Security.Cryptography.Algorithms.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Security.Cryptography.Csp.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Security.Cryptography.Encoding.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Security.Cryptography.Primitives.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Security.Cryptography.X509Certificates.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Security.Principal.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Security.SecureString.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Text.Encoding.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Text.Encoding.Extensions.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Text.RegularExpressions.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Threading.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Threading.Overlapped.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Threading.Tasks.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Threading.Tasks.Parallel.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Threading.Thread.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Threading.ThreadPool.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Threading.Timer.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.ValueTuple.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Xml.ReaderWriter.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Xml.XDocument.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Xml.XmlDocument.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Xml.XmlSerializer.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Xml.XPath.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
Source: "..\Output\Release\System.Xml.XPath.XDocument.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: App Scheduler
|
||||
|
||||
; App
|
||||
Source: "..\Output\Release\RecurringIntegrationsScheduler.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: App
|
||||
Source: "..\Output\Release\RecurringIntegrationsScheduler.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: App
|
||||
Source: "..\Output\Release\RecurringIntegrationsScheduler.exe.config"; DestDir: "{app}"; Flags: ignoreversion; Components: App
|
||||
|
||||
; Configuration files
|
||||
|
|
|
@ -2,4 +2,4 @@
|
|||
Licensed under the MIT License. */
|
||||
|
||||
using System.Reflection;
|
||||
[assembly: AssemblyVersion("2.5.0.0")]
|
||||
[assembly: AssemblyVersion("2.9.0.0")]
|
Загрузка…
Ссылка в новой задаче