Ejemplo n.º 1
0
 static Microsoft.WindowsAzure.Storage.Table.CloudTable GetAzureTable()
 {
     Microsoft.WindowsAzure.Storage.CloudStorageAccount storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageAccount"));
     //create cloud table client
     Microsoft.WindowsAzure.Storage.Table.CloudTableClient tableClient = storageAccount.CreateCloudTableClient();
     //get cloud table
     Microsoft.WindowsAzure.Storage.Table.CloudTable table = tableClient.GetTableReference("customers");
     //cleanup
     table.DeleteIfExists();
     table.CreateIfNotExists();
     return(table);
 }
        public async Task SaveRawTweetAsync(Tweet tweet)
        {
            try
            {
                var account = CloudStorageAccount.Parse(getKey("StorageConnectionString"));
                Microsoft.WindowsAzure.Storage.Table.CloudTableClient c = new Microsoft.WindowsAzure.Storage.Table.CloudTableClient(account.TableStorageUri, account.Credentials);
                var table   = c.GetTableReference("tweets");
                var created = await table.CreateIfNotExistsAsync();

                var op     = Microsoft.WindowsAzure.Storage.Table.TableOperation.Insert(new TweetEntity(tweet));
                var result = await table.ExecuteAsync(op);
            }
            catch (Exception ex)
            {
                throw new Exception($"SaveRawTweet: {ex.Source} {ex.Message} {ex.InnerException?.Message}");
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Sets the connection to Azure
        /// Creates the table if it does not exist
        /// </summary>
        public BaseDataServiceContext()
        {
            storageCredentials = new Microsoft.WindowsAzure.Storage.Auth.StorageCredentials(
                Sample.Azure.Common.Setting.SettingService.CloudStorageAccountName,
                Sample.Azure.Common.Setting.SettingService.CloudStorageKey);

            storageAccount = new Microsoft.WindowsAzure.Storage.CloudStorageAccount(storageCredentials,
                                                                                    new Uri(Sample.Azure.Common.Setting.SettingService.CloudStorageBlobEndPoint),
                                                                                    new Uri(Sample.Azure.Common.Setting.SettingService.CloudStorageQueueEndPoint),
                                                                                    new Uri(Sample.Azure.Common.Setting.SettingService.CloudStorageTableEndPoint),
                                                                                    new Uri(Sample.Azure.Common.Setting.SettingService.CloudStorageFileEndPoint));

            tableClient = storageAccount.CreateCloudTableClient();

            cloudTable = tableClient.GetTableReference(this.TableName);

            if (!tableCreatedList.Contains(this.TableName))
            {
                cloudTable.CreateIfNotExists();
                tableCreatedList.Add(this.TableName);
            }
        }
Ejemplo n.º 4
0
        private static string SetMetadataAndCleanup(Message message)
        {
            // instance clients
            var storageClientAccount = Microsoft.WindowsAzure.CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["AzureJobsData"].ConnectionString);
            var blobClient           = new Microsoft.WindowsAzure.StorageClient.CloudBlobClient(storageClientAccount.BlobEndpoint, storageClientAccount.Credentials);
            var storageAccount       = Microsoft.WindowsAzure.Storage.CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["AzureJobsData"].ConnectionString);
            var tableClient          = new Microsoft.WindowsAzure.Storage.Table.CloudTableClient(storageAccount.TableEndpoint, storageAccount.Credentials);

            // get output blob uri
            var blobUri = blobClient.GetContainerReference("memes").GetBlockBlobReference(message.BlobName).Uri.AbsoluteUri;

            // save metadata
            var table = tableClient.GetTableReference("MemeMetadata");

            table.CreateIfNotExists();
            var requestOptions = new Microsoft.WindowsAzure.Storage.Table.TableRequestOptions()
            {
                RetryPolicy = new Microsoft.WindowsAzure.Storage.RetryPolicies.LinearRetry(TimeSpan.FromMilliseconds(500), 5)
            };

            table.Execute(Microsoft.WindowsAzure.Storage.Table.TableOperation.Insert(new MemeMetadata(message.BlobName, blobUri, message.OverlayText, message.UserName)), requestOptions);

            try
            {
                // delete source
                var container = blobClient.GetContainerReference("uploads");
                var blob      = container.GetBlockBlobReference(message.BlobName);
                blob.Delete();
            }
            catch (Exception ex)
            {
                Console.WriteLine("WARNING! deleting blob: " + ex.Message);
            }

            return(blobUri);
        }
        private static string SetMetadataAndCleanup(Message message)
        {
            // instance clients
            var storageClientAccount = Microsoft.WindowsAzure.CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["AzureJobsData"].ConnectionString);
            var blobClient = new Microsoft.WindowsAzure.StorageClient.CloudBlobClient(storageClientAccount.BlobEndpoint, storageClientAccount.Credentials);
            var storageAccount = Microsoft.WindowsAzure.Storage.CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["AzureJobsData"].ConnectionString);
            var tableClient = new Microsoft.WindowsAzure.Storage.Table.CloudTableClient(storageAccount.TableEndpoint, storageAccount.Credentials);

            // get output blob uri
            var blobUri = blobClient.GetContainerReference("memes").GetBlockBlobReference(message.BlobName).Uri.AbsoluteUri;

            // save metadata
            var table = tableClient.GetTableReference("MemeMetadata");
            table.CreateIfNotExists();
            var requestOptions = new Microsoft.WindowsAzure.Storage.Table.TableRequestOptions()
            {
                RetryPolicy = new Microsoft.WindowsAzure.Storage.RetryPolicies.LinearRetry(TimeSpan.FromMilliseconds(500), 5)
            };
            table.Execute(Microsoft.WindowsAzure.Storage.Table.TableOperation.Insert(new MemeMetadata(message.BlobName, blobUri, message.OverlayText, message.UserName)), requestOptions);

            try
            {
                // delete source
                var container = blobClient.GetContainerReference("uploads");
                var blob = container.GetBlockBlobReference(message.BlobName);
                blob.Delete();
            }
            catch (Exception ex)
            {
                Console.WriteLine("WARNING! deleting blob: " + ex.Message);
            }

            return blobUri;
        }
Ejemplo n.º 6
0
 public GuestBookDataContext(Microsoft.WindowsAzure.Storage.Table.CloudTableClient client)
     : base(client)
 {
 }
Ejemplo n.º 7
0
        public static Microsoft.WindowsAzure.Storage.Table.TableResult GetRandomTableResult()
        {
            //try
            //{
            Microsoft.WindowsAzure.Storage.Table.TableResult retreiveResult = null;
            XmlDocument document = new XmlDocument();

            document.Load(@"C:\Users\Administrator\source\repos\ConsoleApp5\ConsoleApp5\bin\Debug\Test.xml");
            var appSettings = System.Configuration.ConfigurationManager.AppSettings;

            if (appSettings.Count == 0)
            {
                Console.WriteLine("The appsettings is empty\nEnter a valid ConnectionString in AppConfig file");
                Console.WriteLine("Press a key to exit..");
                Console.ReadLine();
            }
            else
            {
                foreach (var key in appSettings.AllKeys)
                {
                    Microsoft.WindowsAzure.Storage.CloudStorageAccount    storageAccount = Microsoft.WindowsAzure.Storage.CloudStorageAccount.Parse(System.Configuration.ConfigurationManager.AppSettings[key]);
                    Microsoft.WindowsAzure.Storage.Table.CloudTableClient tableClient    = storageAccount.CreateCloudTableClient();
                    Microsoft.WindowsAzure.Storage.Table.CloudTable       table          = tableClient.GetTableReference("CustomerInformation");
                    //table.CreateIfNotExists();

                    /*foreach (Json_File file in json_Files)
                     * {
                     *  Microsoft.WindowsAzure.Storage.Table.TableOperation insertOperation = Microsoft.WindowsAzure.Storage.Table.TableOperation.Insert(file);
                     *  table.Execute(insertOperation);
                     * }
                     */
                    if (table.Exists())
                    {
                        Console.WriteLine("The table exists..");
                        //Microsoft.WindowsAzure.Storage.Table.EntityProperty.CreateEntityPropertyFromObject
                        Dictionary <int, string> Partition_Keys = new Dictionary <int, string>();
                        int num = 1;
                        Microsoft.WindowsAzure.Storage.Table.TableContinuationToken token = null;
                        var entities = new List <Json_File>();
                        do
                        {
                            var queryResult = table.ExecuteQuerySegmented(new Microsoft.WindowsAzure.Storage.Table.TableQuery <Json_File>(), token);
                            entities.AddRange(queryResult.Results);
                            token = queryResult.ContinuationToken;
                        } while (token != null);
                        foreach (var file in entities)
                        {
                            Partition_Keys.Add(num, file.PartitionKey);
                            num++;
                        }
                        int    size               = Partition_Keys.Count;
                        Random random             = new Random();
                        int    random_number      = random.Next(1, size + 1);
                        string RandomPartitionKey = Partition_Keys[random_number];

                        Microsoft.WindowsAzure.Storage.Table.TableContinuationToken continuationToken = null;
                        var Entities = new List <Json_File>();
                        do
                        {
                            var rangeQueryResult = table
                                                   .ExecuteQuerySegmented(new Microsoft.WindowsAzure.Storage.Table.TableQuery <Json_File>()
                                                                          .Where(Microsoft.WindowsAzure.Storage.Table.TableQuery
                                                                                 .GenerateFilterCondition("PartitionKey",
                                                                                                          Microsoft.WindowsAzure.Storage.Table.QueryComparisons.Equal, RandomPartitionKey)),
                                                                          continuationToken);
                            Entities.AddRange(rangeQueryResult.Results);
                            continuationToken = rangeQueryResult.ContinuationToken;
                        } while (continuationToken != null);

                        Dictionary <int, string> Row_Keys = new Dictionary <int, string>();
                        int number = 1;
                        foreach (var file in Entities)
                        {
                            Row_Keys.Add(number, file.RowKey);
                            number++;
                        }
                        int sub_size = Row_Keys.Count;

                        Random rand        = new Random();
                        int    rand_number = rand.Next(1, sub_size + 1);

                        string RandomRowKey = Row_Keys[rand_number];

                        Microsoft.WindowsAzure.Storage.Table.TableOperation retreiveOperation = Microsoft.WindowsAzure.Storage.Table.TableOperation.Retrieve <Json_File>(RandomPartitionKey, RandomRowKey);

                        retreiveResult = table.Execute(retreiveOperation);
                    }
                    else
                    {
                        Console.WriteLine("Table doesn't exists\nPress a key to exit....");
                        Console.ReadLine();
                    }
                }
            }
            return(retreiveResult);

            /*catch (Exception ex)
             * {
             * Console.WriteLine(ex.Message);
             * Console.WriteLine(ex.StackTrace);
             * Console.WriteLine(ex.InnerException);
             * Console.WriteLine(ex.Source);
             * Console.WriteLine("Press a key to exit...");
             * Console.ReadLine();
             * }
             */
        }
Ejemplo n.º 8
0
        static TimController()
        {
            Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.Changed += RoleEnvironment_Changed;

            Trace.TraceInformation("[TRACE] Entering TimController::TimController() static initializer...");

            string strDatabaseConnectionString =
                Microsoft.WindowsAzure.CloudConfigurationManager.GetSetting("InfloDatabaseConnectionString");

            if (strDatabaseConnectionString == null)
            {
                Trace.TraceError("Unable to retrieve database connection string");
            }
            else if (strDatabaseConnectionString.Length <= 0)
            {
                Trace.TraceError("Database connection string empty");
            }
            else  //connect to the database
            {
                srInfloDbContext = new InfloDbContext(strDatabaseConnectionString);
            }

            string strStorageAccountConnectionString =
                Microsoft.WindowsAzure.CloudConfigurationManager.GetSetting("StorageAccountConnectionString");

            if (strStorageAccountConnectionString == null)
            {
                Trace.TraceError("Unable to retrieve storage account connection string");
            }
            else if (strStorageAccountConnectionString.Length <= 0)
            {
                Trace.TraceError("Storage account connection string empty");
            }
            else  //connect to the cloud storage account
            {
                Trace.TraceInformation("[INFO] Retrieved StorageAccountConnectionString for TimController\n{0}",
                                       strStorageAccountConnectionString);

                try
                {
                    srStorageAccount = Microsoft.WindowsAzure.Storage.CloudStorageAccount.Parse(strStorageAccountConnectionString);
                }
                catch (Exception e)
                {
                    Trace.TraceError("Exception occurred when parsing storage account connection string\n{0}\n{1}",
                                     strStorageAccountConnectionString, e.Message);
                }

                if (srStorageAccount != null)
                {
                    srCloudTableClient = srStorageAccount.CreateCloudTableClient();
                    srTimV2VTable      = srCloudTableClient.GetTableReference(srTimV2VTableName);

                    try
                    {
                        srTimV2VTable.CreateIfNotExists();
                    }
                    catch (Exception e)
                    {
                        Trace.TraceError("Exception occurred when creating table for V2V TIMs\n{0}",
                                         e.Message);

                        srTimV2VTable = null;
                    }
                }
            }

            AlertSearchRadius  = GetAlertSearchDistance();
            QWarnAheadDistance = GetQWarnAheadDistance();

            srInfloDbContext.Configuration_Roadway.Load();
            srInfloDbContext.Configuration_RoadwayLinks.Load();
            srInfloDbContext.Configuration_RoadwayMileMarkers.Load();
            srInfloDbContext.TMEOutput_QWARNMessage_CV.Load();
            srInfloDbContext.TMEOutput_SPDHARMMessage_CV.Load();

            Trace.TraceInformation("[TRACE] Exiting TimController::TimController() static initializer...");
            return;
        }