Esempio n. 1
0
        public TableDistributionRepository(DistributionConfiguration configuration)
        {
            var storageAccount = CloudStorageAccount.Parse(configuration.StorageConnectionString);
            var tableClient    = storageAccount.CreateCloudTableClient();

            _table = tableClient.GetTableReference(configuration.StorageTableName);
        }
Esempio n. 2
0
        public StorageQueueDistributionQueue(DistributionConfiguration configuration)
        {
            var storageAccount = CloudStorageAccount.Parse(configuration.StorageConnectionString);
            var queueClient    = storageAccount.CreateCloudQueueClient();

            _queue = queueClient.GetQueueReference(QueueNames.DistributionQueueName);
        }
Esempio n. 3
0
        public static double CalculateMaxValue(this DistributionConfiguration config, PenaltyType penaltyType, int sampleSize)
        {
            switch (config.Type)
            {
            case DistributionConfiguration.DistributionType.Normal:
                break;

            case DistributionConfiguration.DistributionType.LogNormal:
                double deviationNumber = penaltyType == PenaltyType.Flag ? 3.0 : 4.0;
                double marginOfError   = 1.644 / (config.StandardDeviation / Math.Sqrt(sampleSize));
                double maxValue        = (config.StandardDeviation * deviationNumber) + marginOfError;
                return(maxValue);
            }

            return(double.MaxValue);
        }