Skip to content

Commit

Permalink
minor fixes (#873)
Browse files Browse the repository at this point in the history
* minor fixes

Signed-off-by: Lillie Dae <[email protected]>


---------

Signed-off-by: Lillie Dae <[email protected]>
  • Loading branch information
lillie-dae authored Sep 8, 2023
1 parent 195cccd commit bf94fe8
Show file tree
Hide file tree
Showing 37 changed files with 201 additions and 187 deletions.
4 changes: 2 additions & 2 deletions src/Common/Miscellaneous/ApiControllerBase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ public class ApiControllerBase : ControllerBase
/// Initializes a new instance of the <see cref="ApiControllerBase"/> class.
/// </summary>
/// <param name="options">Workflow manager options.</param>
public ApiControllerBase(IOptions<WorkflowManagerOptions> Options)
public ApiControllerBase(IOptions<WorkflowManagerOptions> options)
{
this.Options = Options ?? throw new ArgumentNullException(nameof(Options));
Options = options ?? throw new ArgumentNullException(nameof(options));
}

/// <summary>
Expand Down
76 changes: 40 additions & 36 deletions src/TaskManager/Plug-ins/Argo/ArgoClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -34,23 +34,27 @@ public async Task<Workflow> Argo_CreateWorkflowAsync(string argoNamespace, Workf
var urlBuilder = new StringBuilder();
urlBuilder.Append(CultureInfo.InvariantCulture, $"{FormattedBaseUrl}/api/v1/workflows/{argoNamespace}");

var Method = "POST";
var method = "POST";
var content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(body));
return await SendRequest<Workflow>(content, urlBuilder, Method, cancellationToken).ConfigureAwait(false);
return await SendRequest<Workflow>(content, urlBuilder, method, cancellationToken).ConfigureAwait(false);

}

public async Task<Workflow?> Argo_GetWorkflowAsync(string argoNamespace, string name, string? getOptions_resourceVersion, string? fields, CancellationToken cancellationToken)
public async Task<Workflow?> Argo_GetWorkflowAsync(string argoNamespace,
string name,
string? getOptionsResourceVersion,
string? fields,
CancellationToken cancellationToken)
{
Guard.Against.NullOrWhiteSpace(argoNamespace, nameof(argoNamespace));
Guard.Against.Null(name, nameof(name));

var urlBuilder = new StringBuilder();
urlBuilder.Append(CultureInfo.InvariantCulture, $"{FormattedBaseUrl}/api/v1/workflows/{argoNamespace}/{name}?");

if (getOptions_resourceVersion != null)
if (getOptionsResourceVersion != null)
{
urlBuilder.Append(Uri.EscapeDataString("getOptions.resourceVersion") + "=").Append(Uri.EscapeDataString(ConvertToString(getOptions_resourceVersion, CultureInfo.InvariantCulture))).Append('&');
urlBuilder.Append(Uri.EscapeDataString("getOptions.resourceVersion") + "=").Append(Uri.EscapeDataString(ConvertToString(getOptionsResourceVersion, CultureInfo.InvariantCulture))).Append('&');
}
if (fields != null)
{
Expand All @@ -71,9 +75,9 @@ public async Task<Workflow> Argo_StopWorkflowAsync(string argoNamespace, string
var urlBuilder = new StringBuilder();
urlBuilder.Append(CultureInfo.InvariantCulture, $"{FormattedBaseUrl}/api/v1/workflows/{argoNamespace}/{name}/stop");

var Method = "PUT";
const string method = "PUT";
var content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(body));
return await SendRequest<Workflow>(content, urlBuilder, Method, new CancellationToken()).ConfigureAwait(false);
return await SendRequest<Workflow>(content, urlBuilder, method, new CancellationToken()).ConfigureAwait(false);

}

Expand All @@ -86,22 +90,22 @@ public async Task<Workflow> Argo_TerminateWorkflowAsync(string argoNamespace, st
var urlBuilder = new StringBuilder();
urlBuilder.Append(CultureInfo.InvariantCulture, $"{FormattedBaseUrl}/api/v1/workflows/{argoNamespace}/{name}/terminate");

var Method = "PUT";
const string method = "PUT";
var content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(body));
return await SendRequest<Workflow>(content, urlBuilder, Method, new CancellationToken()).ConfigureAwait(false);
return await SendRequest<Workflow>(content, urlBuilder, method, new CancellationToken()).ConfigureAwait(false);
}

public async Task<WorkflowTemplate?> Argo_GetWorkflowTemplateAsync(string argoNamespace, string name, string? getOptions_resourceVersion)
public async Task<WorkflowTemplate?> Argo_GetWorkflowTemplateAsync(string argoNamespace, string name, string? getOptionsResourceVersion)
{
Guard.Against.NullOrWhiteSpace(argoNamespace, nameof(argoNamespace));
Guard.Against.Null(name, nameof(name));

var urlBuilder = new StringBuilder();
urlBuilder.Append(CultureInfo.InvariantCulture, $"{FormattedBaseUrl}/api/v1/workflow-templates/{argoNamespace}/{name}?");

if (getOptions_resourceVersion != null)
if (getOptionsResourceVersion != null)
{
urlBuilder.Append(Uri.EscapeDataString("getOptions.resourceVersion") + "=").Append(Uri.EscapeDataString(ConvertToString(getOptions_resourceVersion, CultureInfo.InvariantCulture))).Append('&');
urlBuilder.Append(Uri.EscapeDataString("getOptions.resourceVersion") + "=").Append(Uri.EscapeDataString(ConvertToString(getOptionsResourceVersion, CultureInfo.InvariantCulture))).Append('&');
}
urlBuilder.Length--;

Expand All @@ -116,7 +120,7 @@ public async Task<Workflow> Argo_TerminateWorkflowAsync(string argoNamespace, st
return await GetRequest<Version>(urlBuilder).ConfigureAwait(false);
}

public async Task<string?> Argo_Get_WorkflowLogsAsync(string argoNamespace, string name, string? podName, string logOptions_container)
public async Task<string?> Argo_Get_WorkflowLogsAsync(string argoNamespace, string name, string? podName, string logOptionsContainer)
{
Guard.Against.NullOrWhiteSpace(argoNamespace, nameof(argoNamespace));
Guard.Against.Null(name, nameof(name));
Expand All @@ -128,9 +132,9 @@ public async Task<Workflow> Argo_TerminateWorkflowAsync(string argoNamespace, st
{
urlBuilder.Append(Uri.EscapeDataString("podName") + "=").Append(Uri.EscapeDataString(ConvertToString(podName, CultureInfo.InvariantCulture))).Append('&');
}
if (logOptions_container != null)
if (logOptionsContainer != null)
{
urlBuilder.Append(Uri.EscapeDataString("logOptions.container") + "=").Append(Uri.EscapeDataString(ConvertToString(logOptions_container, CultureInfo.InvariantCulture))).Append('&');
urlBuilder.Append(Uri.EscapeDataString("logOptions.container") + "=").Append(Uri.EscapeDataString(ConvertToString(logOptionsContainer, CultureInfo.InvariantCulture))).Append('&');
}

urlBuilder.Length--;
Expand All @@ -152,8 +156,8 @@ public virtual async Task<WorkflowTemplate> Argo_CreateWorkflowTemplateAsync(str
var stringBody = Newtonsoft.Json.JsonConvert.SerializeObject(body);
var content = new StringContent(stringBody);

var _logger = NLog.LogManager.GetCurrentClassLogger();
_logger.Debug($"Sending content to Argo :{stringBody}");
var logger = NLog.LogManager.GetCurrentClassLogger();
logger.Debug($"Sending content to Argo :{stringBody.Replace(Environment.NewLine, "")}");
return await SendRequest<WorkflowTemplate>(content, urlBuilder, method, cancellationToken).ConfigureAwait(false);
}

Expand Down Expand Up @@ -250,22 +254,22 @@ protected async Task<T> SendRequest<T>(StringContent stringContent, StringBuilde

try
{
var headers = Enumerable.ToDictionary(response.Headers, h_ => h_.Key, h_ => h_.Value);
var headers = Enumerable.ToDictionary(response.Headers, h => h.Key, h => h.Value);
if (response.Content != null && response.Content.Headers != null)
{
foreach (var item_ in response.Content.Headers)
headers[item_.Key] = item_.Value;
foreach (var item in response.Content.Headers)
headers[item.Key] = item.Value;
}

var status = (int)response.StatusCode;
if (status == 200)
{
var objectResponse_ = await ReadObjectResponseAsync<T>(response, headers).ConfigureAwait(false);
if (objectResponse_.Object == null)
var objectResponse = await ReadObjectResponseAsync<T>(response, headers).ConfigureAwait(false);
if (objectResponse.Object == null)
{
throw new ApiException("Response was null which was not expected.", status, objectResponse_.Text, headers, null);
throw new ApiException("Response was null which was not expected.", status, objectResponse.Text, headers, null);
}
return objectResponse_.Object;
return objectResponse.Object;
}
else
{
Expand Down Expand Up @@ -296,34 +300,34 @@ protected async Task<T> SendRequest<T>(StringContent stringContent, StringBuilde
var response = await HttpClient.SendAsync(request, HttpCompletionOption.ResponseHeadersRead).ConfigureAwait(false);
try
{
var headers_ = Enumerable.ToDictionary(response.Headers, h_ => h_.Key, h_ => h_.Value);
var headers = Enumerable.ToDictionary(response.Headers, h => h.Key, h => h.Value);
if (response.Content != null && response.Content.Headers != null)
{
foreach (var item_ in response.Content.Headers)
headers_[item_.Key] = item_.Value;
foreach (var item in response.Content.Headers)
headers[item.Key] = item.Value;
}

var status = (int)response.StatusCode;
if (status == 200)
{
ObjectResponseResult<T?> objectResponse_;
ObjectResponseResult<T?> objectResponse;

objectResponse_ = await ReadObjectResponseAsync<T>(response, headers_, isLogs).ConfigureAwait(false);
objectResponse = await ReadObjectResponseAsync<T>(response, headers, isLogs).ConfigureAwait(false);

if (objectResponse_.Object == null)
if (objectResponse.Object == null)
{
throw new ApiException("Response was null which was not expected.", status, objectResponse_.Text, headers_, null);
throw new ApiException("Response was null which was not expected.", status, objectResponse.Text, headers, null);
}
return objectResponse_.Object;
return objectResponse.Object;
}
else
{
var objectResponse_ = await ReadObjectResponseAsync<Error>(response, headers_, false).ConfigureAwait(false);
if (objectResponse_.Object == null)
var objectResponse = await ReadObjectResponseAsync<Error>(response, headers, false).ConfigureAwait(false);
if (objectResponse.Object == null)
{
throw new ApiException("Response was null which was not expected.", status, objectResponse_.Text, headers_, null);
throw new ApiException("Response was null which was not expected.", status, objectResponse.Text, headers, null);
}
throw new ApiException<Error>("An unexpected error response.", status, objectResponse_.Text, headers_, objectResponse_.Object, null);
throw new ApiException<Error>("An unexpected error response.", status, objectResponse.Text, headers, objectResponse.Object, null);
}
}
finally
Expand Down
1 change: 1 addition & 0 deletions src/TaskManager/Plug-ins/Argo/ArgoPlugin.cs
Original file line number Diff line number Diff line change
Expand Up @@ -818,6 +818,7 @@ private async Task CopyTemplateSteps(ICollection<ParallelSteps> steps, WorkflowT
}
}

// ReSharper disable once InconsistentNaming
private async Task<string> GenerateK8sSecretFrom(Messaging.Common.Storage storage, CancellationToken cancellationToken)
{
Guard.Against.Null(storage, nameof(storage));
Expand Down
4 changes: 2 additions & 2 deletions src/TaskManager/Plug-ins/Argo/ArgoProvider.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,9 @@ public IArgoClient CreateClient(string baseUrl, string? apiToken, bool allowInse

_logger.CreatingArgoClient(baseUrl);

var ClientName = allowInsecure is true ? "Argo-Insecure" : "Argo";
var clientName = allowInsecure ? "Argo-Insecure" : "Argo";

var httpClient = _httpClientFactory.CreateClient(ClientName);
var httpClient = _httpClientFactory.CreateClient(clientName);

Guard.Against.Null(httpClient, nameof(httpClient));

Expand Down
6 changes: 3 additions & 3 deletions src/TaskManager/Plug-ins/Argo/IArgoClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,17 @@ public interface IArgoClient
{
Task<Workflow> Argo_CreateWorkflowAsync(string argoNamespace, WorkflowCreateRequest body, CancellationToken cancellationToken);

Task<Workflow?> Argo_GetWorkflowAsync(string argoNamespace, string name, string? getOptions_resourceVersion, string? fields, CancellationToken cancellationToken);
Task<Workflow?> Argo_GetWorkflowAsync(string argoNamespace, string name, string? getOptionsResourceVersion, string? fields, CancellationToken cancellationToken);

Task<WorkflowTemplate?> Argo_GetWorkflowTemplateAsync(string argoNamespace, string name, string? getOptions_resourceVersion);
Task<WorkflowTemplate?> Argo_GetWorkflowTemplateAsync(string argoNamespace, string name, string? getOptionsResourceVersion);

Task<Workflow> Argo_StopWorkflowAsync(string argoNamespace, string name, WorkflowStopRequest body);

Task<Workflow> Argo_TerminateWorkflowAsync(string argoNamespace, string name, WorkflowTerminateRequest body);

Task<Version?> Argo_GetVersionAsync();

Task<string?> Argo_Get_WorkflowLogsAsync(string argoNamespace, string name, string? podName, string logOptions_container);
Task<string?> Argo_Get_WorkflowLogsAsync(string argoNamespace, string name, string? podName, string logOptionsContainer);

Task<WorkflowTemplate> Argo_CreateWorkflowTemplateAsync(string argoNamespace, WorkflowTemplateCreateRequest body, CancellationToken cancellationToken);

Expand Down
4 changes: 2 additions & 2 deletions src/WorkflowManager/Common/Services/PayloadService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,8 @@ public PayloadService(
_dicomService = dicomService ?? throw new ArgumentNullException(nameof(dicomService));
_logger = logger ?? throw new ArgumentNullException(nameof(logger));

var _serviceScopeFactory = serviceScopeFactory ?? throw new ArgumentNullException(nameof(serviceScopeFactory));
var scope = _serviceScopeFactory.CreateScope();
var scopeFactory = serviceScopeFactory ?? throw new ArgumentNullException(nameof(serviceScopeFactory));
var scope = scopeFactory.CreateScope();

_storageService = scope.ServiceProvider.GetService<IStorageService>() ?? throw new ArgumentNullException(nameof(IStorageService));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@
using Monai.Deploy.WorkflowManager.Common.Miscellaneous.Interfaces;
using Monai.Deploy.WorkflowManager.Common.ConditionsResolver.Constants;
using Monai.Deploy.WorkflowManager.Common.ConditionsResolver.Extensions;
using Monai.Deploy.WorkflowManager.Common.ConditionsResolver.Resolver;
using Monai.Deploy.WorkflowManager.Common.Contracts.Models;
using Monai.Deploy.WorkflowManager.Common.Logging;
using Monai.Deploy.WorkflowManager.Common.Storage.Services;
using Monai.Deploy.WorkflowManager.ConditionsResolver.Resovler;

namespace Monai.Deploy.WorkflowManager.Common.ConditionsResolver.Parser
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@
using System.Globalization;
using System.Text.RegularExpressions;

namespace Monai.Deploy.WorkflowManager.Common.ConditionsResolver.Resolver
// ReSharper disable InconsistentNaming

namespace Monai.Deploy.WorkflowManager.ConditionsResolver.Resovler
{
public sealed class Conditional
{
Expand Down Expand Up @@ -314,7 +316,7 @@ private bool ContainsEvaluate()
return arr.Any(p => CleanString(p).Equals(compare));
}

private static string CleanString(string p) => p.Trim().Trim('\"').Trim('\'').Trim('“').Trim('”');
private static string CleanString(string p) => p.Trim().Trim('\"').Trim('\'').Trim('').Trim('');

private static bool EqualsNullOrDefined(string str) =>
str.Trim().Equals(NULL, StringComparison.InvariantCultureIgnoreCase)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
using Ardalis.GuardClauses;
using Monai.Deploy.WorkflowManager.Common.ConditionsResolver.Extensions;

namespace Monai.Deploy.WorkflowManager.Common.ConditionsResolver.Resolver
namespace Monai.Deploy.WorkflowManager.ConditionsResolver.Resovler
{
public class ConditionalGroup
{
Expand Down
2 changes: 1 addition & 1 deletion src/WorkflowManager/ConditionsResolver/Resovler/Keyword.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
* limitations under the License.
*/

namespace Monai.Deploy.WorkflowManager.Common.ConditionsResolver.Resolver
namespace Monai.Deploy.WorkflowManager.ConditionsResolver.Resovler
{
/// <summary>
/// Group Keywords or Operators
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,11 @@ public interface ITaskExecutionStatsRepository
/// <summary>
/// Creates a task dispatch event in the database.
/// </summary>
/// <param name="TaskExecutionInfo"></param>
/// <param name="taskExecutionInfo"></param>
/// <param name="workflowId">workflow id.</param>
/// <param name="correlationId">task id.</param>
/// <returns></returns>
Task CreateAsync(TaskExecution TaskExecutionInfo, string workflowId, string correlationId);
Task CreateAsync(TaskExecution taskExecutionInfo, string workflowId, string correlationId);

/// <summary>
/// Updates status of a task dispatch event in the database.
Expand All @@ -57,12 +57,12 @@ public interface ITaskExecutionStatsRepository
/// </summary>
/// <param name="startTime">start of the range.</param>
/// <param name="endTime">end of the range.</param>
/// <param name="PageSize"></param>
/// <param name="PageNumber"></param>
/// <param name="pageSize"></param>
/// <param name="pageNumber"></param>
/// <param name="workflowId">optional workflow id.</param>
/// <param name="taskId">optional task id.</param>
/// <returns>a collections of stats</returns>
Task<IEnumerable<ExecutionStats>> GetStatsAsync(DateTime startTime, DateTime endTime, int PageSize = 10, int PageNumber = 1, string workflowId = "", string taskId = "");
Task<IEnumerable<ExecutionStats>> GetStatsAsync(DateTime startTime, DateTime endTime, int pageSize = 10, int pageNumber = 1, string workflowId = "", string taskId = "");

/// <summary>
/// Return the count of the entries with this status, or all if no status given.
Expand Down
Loading

0 comments on commit bf94fe8

Please sign in to comment.