mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-04-12 12:06:58 +00:00
refactor: moved and renamed GetJoinHelper class to EssentialsWebApiHelpers, added func for loaded assemblies
This commit is contained in:
parent
0793a09095
commit
55a5cc53c9
7 changed files with 29 additions and 35 deletions
|
|
@ -199,7 +199,7 @@
|
||||||
<Compile Include="Crestron IO\StatusSign\StatusSignController.cs" />
|
<Compile Include="Crestron IO\StatusSign\StatusSignController.cs" />
|
||||||
<Compile Include="Web\RequestHandlers\AppDebugRequestHandler.cs" />
|
<Compile Include="Web\RequestHandlers\AppDebugRequestHandler.cs" />
|
||||||
<Compile Include="Web\RequestHandlers\GetFeedbacksForDeviceRequestHandler.cs" />
|
<Compile Include="Web\RequestHandlers\GetFeedbacksForDeviceRequestHandler.cs" />
|
||||||
<Compile Include="Web\RequestHandlers\GetJoinMapHelpers.cs" />
|
<Compile Include="Web\EssentialsWebApiHelpers.cs" />
|
||||||
<Compile Include="Web\RequestHandlers\GetTypesByFilterRequestHandler.cs" />
|
<Compile Include="Web\RequestHandlers\GetTypesByFilterRequestHandler.cs" />
|
||||||
<Compile Include="Web\RequestHandlers\GetJoinMapForDeviceKeyRequestHandler.cs" />
|
<Compile Include="Web\RequestHandlers\GetJoinMapForDeviceKeyRequestHandler.cs" />
|
||||||
<Compile Include="Web\RequestHandlers\DefaultRequestHandler.cs" />
|
<Compile Include="Web\RequestHandlers\DefaultRequestHandler.cs" />
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,19 @@
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Core.Web.RequestHandlers
|
namespace PepperDash.Essentials.Core.Web
|
||||||
{
|
{
|
||||||
public class GetJoinMapHelpers
|
public class EssentialsWebApiHelpers
|
||||||
{
|
{
|
||||||
|
public static object MapToAssemblyObject(LoadedAssembly assembly)
|
||||||
|
{
|
||||||
|
return new
|
||||||
|
{
|
||||||
|
Name = assembly.Name,
|
||||||
|
Version = assembly.Version
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
public static object MapJoinToObject(string key, JoinMapBaseAdvanced join)
|
public static object MapJoinToObject(string key, JoinMapBaseAdvanced join)
|
||||||
{
|
{
|
||||||
var kp = new KeyValuePair<string, JoinMapBaseAdvanced>(key, join);
|
var kp = new KeyValuePair<string, JoinMapBaseAdvanced>(key, join);
|
||||||
|
|
@ -9,11 +9,6 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
|
||||||
{
|
{
|
||||||
public class AppDebugRequestHandler : WebApiBaseRequestHandler
|
public class AppDebugRequestHandler : WebApiBaseRequestHandler
|
||||||
{
|
{
|
||||||
private const string Key = "AppDebugRequestHandler";
|
|
||||||
private const uint Trace = 0;
|
|
||||||
private const uint Info = 1;
|
|
||||||
private const uint Verbose = 2;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Handles CONNECT method requests
|
/// Handles CONNECT method requests
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -42,10 +37,9 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
|
||||||
/// <param name="context"></param>
|
/// <param name="context"></param>
|
||||||
protected override void HandleGet(HttpCwsContext context)
|
protected override void HandleGet(HttpCwsContext context)
|
||||||
{
|
{
|
||||||
var o = new AppDebug();
|
var appDebug = new AppDebug {Level = Debug.Level};
|
||||||
o.Level = Debug.Level;
|
|
||||||
|
|
||||||
var body = JsonConvert.SerializeObject(o, Formatting.Indented);
|
var body = JsonConvert.SerializeObject(appDebug, Formatting.Indented);
|
||||||
|
|
||||||
context.Response.StatusCode = 200;
|
context.Response.StatusCode = 200;
|
||||||
context.Response.StatusDescription = "OK";
|
context.Response.StatusDescription = "OK";
|
||||||
|
|
@ -97,16 +91,14 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
|
||||||
var bytes = new Byte[context.Request.ContentLength];
|
var bytes = new Byte[context.Request.ContentLength];
|
||||||
context.Request.InputStream.Read(bytes, 0, context.Request.ContentLength);
|
context.Request.InputStream.Read(bytes, 0, context.Request.ContentLength);
|
||||||
var data = Encoding.UTF8.GetString(bytes, 0, bytes.Length);
|
var data = Encoding.UTF8.GetString(bytes, 0, bytes.Length);
|
||||||
//Debug.Console(Info, "[{0}] Request data:\n{1}", Key.ToLower(), data);
|
|
||||||
|
|
||||||
var o = new AppDebug();
|
var appDebug = new AppDebug();
|
||||||
var requestBody = JsonConvert.DeserializeAnonymousType(data, o);
|
var requestBody = JsonConvert.DeserializeAnonymousType(data, appDebug);
|
||||||
|
|
||||||
Debug.SetDebugLevel(requestBody.Level);
|
Debug.SetDebugLevel(requestBody.Level);
|
||||||
|
|
||||||
o.Level = Debug.Level;
|
appDebug.Level = Debug.Level;
|
||||||
|
var responseBody = JsonConvert.SerializeObject(appDebug, Formatting.Indented);
|
||||||
var responseBody = JsonConvert.SerializeObject(o, Formatting.Indented);
|
|
||||||
|
|
||||||
context.Response.StatusCode = 200;
|
context.Response.StatusCode = 200;
|
||||||
context.Response.StatusDescription = "OK";
|
context.Response.StatusDescription = "OK";
|
||||||
|
|
|
||||||
|
|
@ -5,11 +5,6 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
|
||||||
{
|
{
|
||||||
public class DefaultRequestHandler : WebApiBaseRequestHandler
|
public class DefaultRequestHandler : WebApiBaseRequestHandler
|
||||||
{
|
{
|
||||||
private const string Key = "DefaultRequestHandler";
|
|
||||||
private const uint Trace = 0;
|
|
||||||
private const uint Info = 1;
|
|
||||||
private const uint Verbose = 2;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Handles CONNECT method requests
|
/// Handles CONNECT method requests
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -79,7 +79,7 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var joinMap = bridge.JoinMaps.Select(j => GetJoinMapHelpers.MapJoinToObject(j)).ToList();
|
var joinMap = bridge.JoinMaps.Select(j => EssentialsWebApiHelpers.MapJoinToObject(j)).ToList();
|
||||||
if (joinMap == null)
|
if (joinMap == null)
|
||||||
{
|
{
|
||||||
context.Response.StatusCode = 400;
|
context.Response.StatusCode = 400;
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,7 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var joinMap = GetJoinMapHelpers.MapJoinToObject(deviceObj.ToString(), deviceJoinMap);
|
var joinMap = EssentialsWebApiHelpers.MapJoinToObject(deviceObj.ToString(), deviceJoinMap);
|
||||||
var js = JsonConvert.SerializeObject(joinMap, Formatting.Indented, new JsonSerializerSettings
|
var js = JsonConvert.SerializeObject(joinMap, Formatting.Indented, new JsonSerializerSettings
|
||||||
{
|
{
|
||||||
ReferenceLoopHandling = ReferenceLoopHandling.Ignore,
|
ReferenceLoopHandling = ReferenceLoopHandling.Ignore,
|
||||||
|
|
|
||||||
|
|
@ -7,11 +7,6 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
|
||||||
{
|
{
|
||||||
public class ReportVersionsRequestHandler : WebApiBaseRequestHandler
|
public class ReportVersionsRequestHandler : WebApiBaseRequestHandler
|
||||||
{
|
{
|
||||||
private const string Key = "ReportVersionsRequestHandler";
|
|
||||||
private const uint Trace = 0;
|
|
||||||
private const uint Info = 1;
|
|
||||||
private const uint Verbose = 2;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Handles CONNECT method requests
|
/// Handles CONNECT method requests
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -40,11 +35,15 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
|
||||||
/// <param name="context"></param>
|
/// <param name="context"></param>
|
||||||
protected override void HandleGet(HttpCwsContext context)
|
protected override void HandleGet(HttpCwsContext context)
|
||||||
{
|
{
|
||||||
var assemblies = PluginLoader.LoadedAssemblies.Select(assembly => new
|
var loadAssemblies = PluginLoader.LoadedAssemblies;
|
||||||
|
if (loadAssemblies == null)
|
||||||
{
|
{
|
||||||
Name = assembly.Name,
|
context.Response.StatusCode = 404;
|
||||||
Version = assembly.Version
|
context.Response.StatusDescription = "Not Found";
|
||||||
}).Cast<object>().ToList();
|
context.Response.End();
|
||||||
|
}
|
||||||
|
|
||||||
|
var assemblies = loadAssemblies.Select(a => EssentialsWebApiHelpers.MapToAssemblyObject(a)).ToList();
|
||||||
|
|
||||||
var js = JsonConvert.SerializeObject(assemblies, Formatting.Indented, new JsonSerializerSettings
|
var js = JsonConvert.SerializeObject(assemblies, Formatting.Indented, new JsonSerializerSettings
|
||||||
{
|
{
|
||||||
|
|
@ -54,8 +53,7 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
|
||||||
DefaultValueHandling = DefaultValueHandling.Ignore,
|
DefaultValueHandling = DefaultValueHandling.Ignore,
|
||||||
TypeNameHandling = TypeNameHandling.None
|
TypeNameHandling = TypeNameHandling.None
|
||||||
});
|
});
|
||||||
//Debug.Console(Verbose, "[{0}] HandleGet: \x0d\x0a{1}", Key.ToLower(), js);
|
|
||||||
|
|
||||||
context.Response.StatusCode = 200;
|
context.Response.StatusCode = 200;
|
||||||
context.Response.StatusDescription = "OK";
|
context.Response.StatusDescription = "OK";
|
||||||
context.Response.ContentType = "application/json";
|
context.Response.ContentType = "application/json";
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue