コード例 #1
0
        private static void ProcessUploadDataOptions(UploadDataOptions options)
        {
            var connection = new BlobStorageConnectionDetails(options.BlobStoragePolicyName,
                                                              options.BlobStoragePolicyKey, options.BlobStorageContainer, options.BlobStorageRootFolder,
                                                              options.BlobStorageArchiveFolder);
            var blobManager = new BlobStorageManager(connection);

            blobManager.CreateFile(options.Filename);
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: karalamalar/CloudDataCamp
        private static void Main(string[] args)
        {
            var config = new BlobStorageConnectionDetails("mynewstorageaccnt",
                "R3FFPLqamAfvzpHjx3mJDpC5EHRxzKtTpCiOKgyIjYAd+L59QWHlLRnYlZXcha7pHJ7O/01G5MrpvDcydmfaHw==",
                "mycontainer", "my/root/folder/", "my/archive/folder/");
            var eventHubConfig = new EventHubConnectionDetails("myneweventhub-ns", "myneweventhub",
                "RootManageSharedAccessKey", "52vBalJmNMvgITAvpffQ+6NGFTsyoMNUWlFekLJSxNw=");

             var deviceDetails = new DeviceSendingDetails()
            {
                FailureConditions = new[]
                {
                    new FailedDeviceSettings(3, 0.2F, SensorTypes.Energy),
                    new FailedDeviceSettings(8, 0.3F, SensorTypes.Energy),
                    new FailedDeviceSettings(16, 0.05F, SensorTypes.Energy),
                    new FailedDeviceSettings(19, 0.07F, SensorTypes.Energy),
                    new FailedDeviceSettings(22, 0.25F, SensorTypes.Energy),
                    new FailedDeviceSettings(2, 0.2F, SensorTypes.Light),
                    new FailedDeviceSettings(4, 0.2F, SensorTypes.Light),
                    new FailedDeviceSettings(7, 0.3F, SensorTypes.Light),
                    new FailedDeviceSettings(18, 0.05F, SensorTypes.Light),
                    new FailedDeviceSettings(5, 0.1F, SensorTypes.Humidity),
                    new FailedDeviceSettings(6, 0.2F, SensorTypes.Humidity),
                    new FailedDeviceSettings(8, 0.3F, SensorTypes.Humidity),
                    new FailedDeviceSettings(19, 0.05F, SensorTypes.Humidity),
                    new FailedDeviceSettings(20, 0.07F, SensorTypes.Humidity),
                    new FailedDeviceSettings(3, 0.1F, SensorTypes.Temperature),
                    new FailedDeviceSettings(6, 0.2F, SensorTypes.Temperature),
                    new FailedDeviceSettings(9, 0.3F, SensorTypes.Temperature),
                    new FailedDeviceSettings(12, 0.05F, SensorTypes.Temperature),
                    new FailedDeviceSettings(15, 0.07F, SensorTypes.Temperature),
                    new FailedDeviceSettings(18, 0.15F, SensorTypes.Temperature),
                    new FailedDeviceSettings(21, 0.25F, SensorTypes.Temperature),    
                },
                NumberOfRooms = 10,
                IterationSeconds = 30,
                NumberOfDevices = 50,
                NumberOfDeviceTypes = 4,
                TemperatureMax = 28.9F,
                TemperatureMin = 19.6F,
                HumidityMin = 40.0F,
                HumidityMax = 80.0F,
                EnergyMin = 2000.0F,
                EnergyMax = 4900.0F,
                LightMin = 10.0F,
                LightMax = 1800.0F,
                MillisecondDelay = 1000,
                RedirectToLocalFile = true,
                RedirectFileName = "c:\\\\tmp\\messages.txt"
            };
            var manager = new BlobStorageManager(config);
            var lines = manager.GetLines("messages.txt");

            var sender = new MessageSender(eventHubConfig, deviceDetails);
            sender.SendMessages(lines);
        }
コード例 #3
0
        public BlobStorageManager(BlobStorageConnectionDetails config)
        {
            _config = config;
            var connectionString = String.Format("DefaultEndpointsProtocol=https;AccountName={0};AccountKey={1}", _config.SasPolicyName, _config.SasPolicyKey);
            var storageAccount = CloudStorageAccount.Parse(connectionString);
            var blobClient = storageAccount.CreateCloudBlobClient();
            var containerRef = blobClient.GetContainerReference(config.Container);
            if (!containerRef.Exists())
                throw new FileNotFoundException("Could not retrieve blob storage container {0}", config.Container);

            Console.WriteLine("Connected to Blob Storage account.");
            _container = containerRef;
        }
コード例 #4
0
        public BlobStorageManager(BlobStorageConnectionDetails config)
        {
            _config = config;
            var connectionString = String.Format("DefaultEndpointsProtocol=https;AccountName={0};AccountKey={1}", _config.SasPolicyName, _config.SasPolicyKey);
            var storageAccount   = CloudStorageAccount.Parse(connectionString);
            var blobClient       = storageAccount.CreateCloudBlobClient();
            var containerRef     = blobClient.GetContainerReference(config.Container);

            if (!containerRef.Exists())
            {
                throw new FileNotFoundException("Could not retrieve blob storage container {0}", config.Container);
            }

            Console.WriteLine("Connected to Blob Storage account.");
            _container = containerRef;
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: karalamalar/CloudDataCamp
        private static void ProcessReplayOptions(ReplayOptions options)
        {
            var connection = new BlobStorageConnectionDetails(options.BlobStoragePolicyName,
                    options.BlobStoragePolicyKey, options.BlobStorageContainer, options.BlobStorageRootFolder,
                    options.BlobStorageArchiveFolder);
            var blobManager = new BlobStorageManager(connection);
            var lines = blobManager.GetLines(options.Filename);

            var deviceDetails = GetDeviceDetails();
            deviceDetails.RedirectToLocalFile = true;
            deviceDetails.RedirectFileName = options.Filename;
            

            var eventHubConfig = new EventHubConnectionDetails(options.EventHubNamespace, options.EventHubName, options.EventHubSasPolicy, options.EventHubSasKey);

            var sender = new MessageSender(eventHubConfig, deviceDetails);
            sender.SendMessages(lines);
        }
コード例 #6
0
        private static void ProcessGenerateLocalUploadOptions(GenerateLocalUploadOptions options)
        {
            var deviceDetails = GetDeviceDetails();

            deviceDetails.RedirectToLocalFile = true;
            deviceDetails.RedirectFileName    = options.Filename;
            deviceDetails.RedirectType        = options.Type;

            var generator = new MessageGenerator(deviceDetails, null);

            generator.GenerateMessages();

            var connection = new BlobStorageConnectionDetails(options.BlobStoragePolicyName,
                                                              options.BlobStoragePolicyKey, options.BlobStorageContainer, options.BlobStorageRootFolder,
                                                              options.BlobStorageArchiveFolder);
            var blobManager = new BlobStorageManager(connection);

            blobManager.CreateFile(options.Filename);
        }
コード例 #7
0
        private static void ProcessReplayOptions(ReplayOptions options)
        {
            var connection = new BlobStorageConnectionDetails(options.BlobStoragePolicyName,
                                                              options.BlobStoragePolicyKey, options.BlobStorageContainer, options.BlobStorageRootFolder,
                                                              options.BlobStorageArchiveFolder);
            var blobManager = new BlobStorageManager(connection);
            var lines       = blobManager.GetLines(options.Filename);

            var deviceDetails = GetDeviceDetails();

            deviceDetails.RedirectToLocalFile = true;
            deviceDetails.RedirectFileName    = options.Filename;


            var eventHubConfig = new EventHubConnectionDetails(options.EventHubNamespace, options.EventHubName, options.EventHubSasPolicy, options.EventHubSasKey);

            var sender = new MessageSender(eventHubConfig, deviceDetails);

            sender.SendMessages(lines);
        }
コード例 #8
0
ファイル: Program.cs プロジェクト: karalamalar/CloudDataCamp
        private static void ProcessGenerateLocalUploadOptions(GenerateLocalUploadOptions options)
        {
            var deviceDetails = GetDeviceDetails();
            deviceDetails.RedirectToLocalFile = true;
            deviceDetails.RedirectFileName = options.Filename;
            deviceDetails.RedirectType = options.Type;

            var generator = new MessageGenerator(deviceDetails, null);
            generator.GenerateMessages();

            var connection = new BlobStorageConnectionDetails(options.BlobStoragePolicyName,
                    options.BlobStoragePolicyKey, options.BlobStorageContainer, options.BlobStorageRootFolder,
                    options.BlobStorageArchiveFolder);
            var blobManager = new BlobStorageManager(connection);
            blobManager.CreateFile(options.Filename);
        }
コード例 #9
0
ファイル: Program.cs プロジェクト: karalamalar/CloudDataCamp
 private static void ProcessUploadDataOptions(UploadDataOptions options)
 {
     var connection = new BlobStorageConnectionDetails(options.BlobStoragePolicyName,
         options.BlobStoragePolicyKey, options.BlobStorageContainer, options.BlobStorageRootFolder,
         options.BlobStorageArchiveFolder);
     var blobManager = new BlobStorageManager(connection);
     blobManager.CreateFile(options.Filename);
 }