From d530d39d7ed9b05e3e233adc62dceba2fd17e1fe Mon Sep 17 00:00:00 2001 From: Roy Ben Shabat Date: Sun, 25 Oct 2020 16:58:42 +0200 Subject: Improved extension methods support on procedures. Drastically reduces procedure designer loading time. DataStore proto support fully working and tested. --- .../PPC/Tango.PPC.Common/DataStore/DefaultDataStoreService.cs | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore') diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore/DefaultDataStoreService.cs b/Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore/DefaultDataStoreService.cs index bf0eadae1..ddc0f6cdb 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore/DefaultDataStoreService.cs +++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore/DefaultDataStoreService.cs @@ -16,6 +16,7 @@ using Tango.PPC.Common.Connection; using Tango.PPC.Common.ExternalBridge; using Tango.Transport; using Tango.Core.ExtensionMethods; +using Newtonsoft.Json.Linq; namespace Tango.PPC.Common.DataStore { @@ -59,6 +60,11 @@ namespace Tango.PPC.Common.DataStore [ExternalBridgeRequestHandlerMethod(typeof(RemoteDataStoreGetRequest), RequestHandlerLoggingMode.LogRequestName)] public async Task OnRemoteDataStoreGetRequest(RemoteDataStoreGetRequest request, String token, ExternalBridgeReceiver receiver) { + if (request.DefaultValue is JObject obj) + { + request.DefaultValue = DataStoreProtoObject.FromJObject(obj); + } + var item = GetManager().GetCollection(request.Collection).GetItem(request.Key, request.DefaultValue); await receiver.SendGenericResponse(new RemoteDataStoreGetResponse() { @@ -70,6 +76,11 @@ namespace Tango.PPC.Common.DataStore [ExternalBridgeRequestHandlerMethod(typeof(RemoteDataStoreGetItemRequest), RequestHandlerLoggingMode.LogRequestName)] public async Task OnRemoteDataStoreGetItemRequest(RemoteDataStoreGetItemRequest request, String token, ExternalBridgeReceiver receiver) { + if (request.DefaultValue is JObject obj) + { + request.DefaultValue = DataStoreProtoObject.FromJObject(obj); + } + var item = GetManager().GetCollection(request.Collection).GetItem(request.Key, request.DefaultValue); await receiver.SendGenericResponse(new RemoteDataStoreGetItemResponse() { -- cgit v1.3.1