Пример #1
0
        public void downloadfile(CloudBlockBlob file, string fileFullPath, DateTime timestamp)
        {
            //string leaseId = Guid.NewGuid().ToString();
            //file.AcquireLease(TimeSpan.FromMilliseconds(16000), leaseId);
            Program.ClientForm.addtoConsole("Download started:" + fileFullPath);
            file.DownloadToFile(fileFullPath, FileMode.Create);
            Program.ClientForm.addtoConsole("Downloaded! File : " + fileFullPath);
            Program.ClientForm.ballon("Downloaded:" + fileFullPath);
            //file.ReleaseLease(AccessCondition.GenerateLeaseCondition(leaseId));
            File.SetLastWriteTime(fileFullPath, TimeZoneInfo.ConvertTimeFromUtc(timestamp, TimeZoneInfo.Local));

            // add file to file list
            Client.LocalFileSysAccess.FileListMaintain addToFileList = new Client.LocalFileSysAccess.FileListMaintain();
            addToFileList.addSingleFileToFileList(fileFullPath);
        }
Пример #2
0
        private void DownloadResults(string key, AzureBlobDataReference blobLocation)
        {
            if (_outputDestination != DestinationType.None)
            {
                var credentials = new StorageCredentials(blobLocation.SasBlobToken);
                var cloudBlob = new CloudBlockBlob(new Uri(new Uri(blobLocation.BaseLocation), blobLocation.RelativeLocation), credentials);

                if (_outputDestination == DestinationType.FileConnection)
                {
                    ConnectionManager connectionManager = _connections[_destination];
                    var connection = (object)null;

                    try
                    {
                        connection = connectionManager.AcquireConnection(null);

                        string filePath = connection.ToString();

                        cloudBlob.DownloadToFile(filePath, FileMode.Create);
                    }
                    finally
                    {
                        if (connection != null && connectionManager != null)
                            connectionManager.ReleaseConnection(null);
                    }
                }
                else if (_outputDestination == DestinationType.Variable)
                {
                    var variables = (Variables)null;
                    _variableDispenser.LockOneForWrite(_destination, ref variables);

                    try
                    {
                        var variable = variables[_destination];

                        if (variable != null)
                        {
                            variable.Value = cloudBlob.DownloadText();
                        }
                    }
                    finally
                    {
                        if (variables != null)
                            variables.Unlock();
                    }
                }

                _componentEvents.FireInformation(0, "ExecuteAzureMLBatch",
                    string.Format("The result '{0}' is available: BaseLocation: '{1}' RelativeLocation: '{2}' SasBlobToken: '{3}'",
                        key,
                        blobLocation.BaseLocation,
                        blobLocation.RelativeLocation,
                        blobLocation.SasBlobToken),
                    null, 0, ref fireAgain);
            }
        }