introduce API-VERSION header
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
using Castle.Core.Logging;
|
||||
using Pilz.Data;
|
||||
using Pilz.Extensions.Collections;
|
||||
using Pilz.Extensions.Reflection;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Net;
|
||||
@@ -34,33 +33,21 @@ public class ApiServer : IApiServer
|
||||
public event DataManagerEventHandler? OnResetDataManager;
|
||||
|
||||
protected record PrivateParameterInfo(string Name, int Index);
|
||||
|
||||
protected record PrivateMessageHandler(string Url, bool UseRegEx, Delegate Handler, PrivateParameterInfo[] Parameters, ApiMessageHandlerAttribute Attribute);
|
||||
|
||||
protected record PrivateApiResult(ApiResult Original, object? ResultContent);
|
||||
|
||||
public string ApiUrl { get; }
|
||||
|
||||
public uint ApiVersion { get; set; } = 1;
|
||||
public virtual bool EnableAuth { get; set; }
|
||||
|
||||
public IApiMessageSerializer Serializer { get; set; } = new DefaultApiMessageSerializer();
|
||||
|
||||
public ILogger Log { get; set; } = NullLogger.Instance;
|
||||
|
||||
public bool DebugMode { get; set; }
|
||||
|
||||
public bool AllowMultipleRequests { get; set; }
|
||||
|
||||
public int StopDelay { get; set; } = 5000;
|
||||
|
||||
public bool AutoRestartOnError { get; set; } = true;
|
||||
|
||||
public int MaxAutoRestartsPerMinute { get; set; } = 10;
|
||||
|
||||
public int MaxConcurentConnections { get; set; } = 5;
|
||||
|
||||
public IDataManager Manager => GetManager();
|
||||
|
||||
public bool ThreadedDataManager { get; set; }
|
||||
|
||||
public ApiServer(string apiUrl) : this(apiUrl, null)
|
||||
@@ -450,6 +437,10 @@ public class ApiServer : IApiServer
|
||||
return;
|
||||
}
|
||||
|
||||
// Set response header
|
||||
Log.Debug("Set response headers");
|
||||
context.Response.AppendHeader("API-VERSION", ApiVersion.ToString());
|
||||
|
||||
// Set response parameters
|
||||
Log.Debug("Set response parameters");
|
||||
context.Response.StatusCode = (int)result.Original.StatusCode;
|
||||
|
||||
Reference in New Issue
Block a user