private async Task GetCertificateDetailsAsync(string jsonParam)
        {
            GetCertificateDetailsParams parameters = JsonConvert.DeserializeObject <GetCertificateDetailsParams>(jsonParam);

            var request = new Message.GetCertificateDetailsRequest();

            request.path = parameters.path;
            request.hash = parameters.hash;

            Message.GetCertificateDetailsResponse response = await _systemConfiguratorProxy.SendCommandAsync(request) as Message.GetCertificateDetailsResponse;

            string jsonString = JsonConvert.SerializeObject(response);

            Debug.WriteLine("response = " + jsonString);

            var info = new Message.AzureFileTransferInfo()
            {
                ConnectionString = parameters.connectionString,
                ContainerName    = parameters.containerName,
                BlobName         = parameters.blobName,
                Upload           = true,
                LocalPath        = ""
            };

            var appLocalDataFile = await ApplicationData.Current.TemporaryFolder.CreateFileAsync(parameters.blobName, CreationCollisionOption.ReplaceExisting);

            using (StreamWriter writer = new StreamWriter(await appLocalDataFile.OpenStreamForWriteAsync()))
            {
                await writer.WriteAsync(jsonString);
            }
            await IoTDMClient.AzureBlobFileTransfer.UploadFile(info, appLocalDataFile);

            await appLocalDataFile.DeleteAsync();
        }
 internal async Task TransferFileAsync(Message.AzureFileTransferInfo transferInfo)
 {
     // use C++ service to copy file to/from App LocalData
     var request = new Message.AzureFileTransferRequest(transferInfo);
     var result  = await this._systemConfiguratorProxy.SendCommandAsync(request);
 }