diff options
| author | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2020-10-23 03:13:09 +0300 |
|---|---|---|
| committer | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2020-10-23 03:13:09 +0300 |
| commit | 8d2b13aaa70bc6a8f521df4eab165caf078c33fa (patch) | |
| tree | 325567b00d55fa751da7492be067e7878b132e28 /Software/Visual_Studio/PPC | |
| parent | a79900d579ae9f624b35aa933784e4e0f0c65d03 (diff) | |
| download | Tango-8d2b13aaa70bc6a8f521df4eab165caf078c33fa.tar.gz Tango-8d2b13aaa70bc6a8f521df4eab165caf078c33fa.zip | |
DataStore Improvements.
Diffstat (limited to 'Software/Visual_Studio/PPC')
| -rw-r--r-- | Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore/DefaultDataStoreService.cs | 12 |
1 files changed, 7 insertions, 5 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 e5bec90f2..e6da8e8e7 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore/DefaultDataStoreService.cs +++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/DataStore/DefaultDataStoreService.cs @@ -58,7 +58,7 @@ namespace Tango.PPC.Common.DataStore [ExternalBridgeRequestHandlerMethod(typeof(RemoteDataStoreGetRequest), RequestHandlerLoggingMode.LogRequestName)] public async Task OnRemoteDataStoreGetRequest(RemoteDataStoreGetRequest request, String token, ExternalBridgeReceiver receiver) { - var value = GetManager().GetCollection(request.Collection).Get(request.Key); + var value = GetManager().GetCollection(request.Collection).Get(request.Key, request.DefaultValue); await receiver.SendGenericResponse(new RemoteDataStoreGetResponse() { Value = value @@ -68,7 +68,7 @@ namespace Tango.PPC.Common.DataStore [ExternalBridgeRequestHandlerMethod(typeof(RemoteDataStoreGetItemRequest), RequestHandlerLoggingMode.LogRequestName)] public async Task OnRemoteDataStoreGetItemRequest(RemoteDataStoreGetItemRequest request, String token, ExternalBridgeReceiver receiver) { - var item = GetManager().GetCollection(request.Collection).GetItem(request.Key); + var item = GetManager().GetCollection(request.Collection).GetItem(request.Key, request.DefaultValue); await receiver.SendGenericResponse(new RemoteDataStoreGetItemResponse() { Item = item @@ -127,7 +127,7 @@ namespace Tango.PPC.Common.DataStore { try { - GetManager().GetCollection(request.Collection).Put(request.Item.Key, GetPMRValue(request.Item)); + GetManager().GetCollection(request.Collection).Put(request.Key, GetPMRValue(request.Item)); await transporter.SendResponse(new PutDataStoreItemResponse(), token); } catch (Exception ex) @@ -151,9 +151,10 @@ namespace Tango.PPC.Common.DataStore { try { - var item = GetManager().GetCollection(request.Collection).GetItem(request.Key); + var item = GetManager().GetCollection(request.Collection).GetItem(request.Key, GetPMRValue(request.DefaultItem)); await transporter.SendResponse(new GetDataStoreItemResponse() { + Key = item.Key, Item = CreatePMRDataStoreItem(item), }, token); } @@ -194,7 +195,6 @@ namespace Tango.PPC.Common.DataStore private DataStoreItem CreatePMRDataStoreItem(IDataStoreItem item) { DataStoreItem pmr = new DataStoreItem(); - pmr.Key = item.Key; pmr.DataType = (PMR.DataStore.DataType)item.Type; switch (item.Type) @@ -224,6 +224,8 @@ namespace Tango.PPC.Common.DataStore private Object GetPMRValue(DataStoreItem item) { + if (item == null) return null; + switch (item.DataType) { case PMR.DataStore.DataType.Int32: |
