aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore
diff options
context:
space:
mode:
authorRoy Ben Shabat <Roy.mail.net@gmail.com>2020-10-25 16:58:42 +0200
committerRoy Ben Shabat <Roy.mail.net@gmail.com>2020-10-25 16:58:42 +0200
commitd530d39d7ed9b05e3e233adc62dceba2fd17e1fe (patch)
tree2e042288fdeedd12e3ca0ee331743ebc115eb4b2 /Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore
parentadaddad79352c156303e9178a6f172a18af50cd2 (diff)
downloadTango-d530d39d7ed9b05e3e233adc62dceba2fd17e1fe.tar.gz
Tango-d530d39d7ed9b05e3e233adc62dceba2fd17e1fe.zip
Improved extension methods support on procedures.
Drastically reduces procedure designer loading time. DataStore proto support fully working and tested.
Diffstat (limited to 'Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore')
-rw-r--r--Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore/DefaultDataStoreService.cs11
1 files changed, 11 insertions, 0 deletions
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()
{