Пример #1
0
        public Config(IConfigData configData)
        {
            IoTHubConfig = new IoTHubConfig
            {
                ConnectionConfig = new ConnectionConfig
                {
                    HubName          = configData.GetString(HubNameKey),
                    HubEndpoint      = configData.GetString(HubEndpointKey),
                    AccessConnString = configData.GetString(AccessConnStringKey)
                },
                StreamingConfig = new StreamingConfig
                {
                    ConsumerGroup    = configData.GetString(ConsumerGroupKey),
                    ReceiveBatchSize = configData.GetInt(ReceiveBatchSizeKey),
                    ReceiveTimeout   = configData.GetTimeSpan(ReceiveTimeoutKey)
                },
                CheckpointingConfig = new CheckpointingConfig
                {
                    Frequency      = configData.GetTimeSpan(FrequencyKey),
                    CountThreshold = configData.GetInt(CountThresholdKey),
                    TimeThreshold  = configData.GetTimeSpan(TimeThresholdKey),
                    StorageConfig  = new CheckpointingStorageConfig
                    {
                        BackendType     = configData.GetString(BackendTypeKey),
                        Namespace       = configData.GetString(NamespaceKey),
                        AzureBlobConfig = new CheckpointingStorageBlobConfig
                        {
                            Protocol       = configData.GetString(ProtocolKey),
                            Account        = configData.GetString(AccountKey),
                            Key            = configData.GetString(KeyKey),
                            EndpointSuffix = configData.GetString(EndpointSuffixKey)
                        }
                    }
                }
            };

            ServicesConfig = new ServicesConfig
            {
                MonitoringRulesUrl           = configData.GetString(MonitoringRulesUrlKey),
                DeviceGroupsUrl              = configData.GetString(DeviceGroupsUrlKey),
                DevicesUrl                   = configData.GetString(DevicesUrlKey),
                MessagesStorageServiceConfig = new StorageServiceConfig
                {
                    StorageType          = configData.GetString(MessagesStorageTypeKey),
                    DocumentDbConnString = configData.GetString(MessagesDocDbConnStringKey),
                    DocumentDbDatabase   = configData.GetString(MessagesDocDbDatabaseKey),
                    DocumentDbCollection = configData.GetString(MessagesDocDbCollectionKey),
                    DocumentDbRUs        = configData.GetInt(MessagesDocDbRUsKey)
                },
                AlarmsStorageServiceConfig = new StorageServiceConfig
                {
                    StorageType          = configData.GetString(AlarmsStorageTypeKey),
                    DocumentDbConnString = configData.GetString(AlarmsDocDbConnStringKey),
                    DocumentDbDatabase   = configData.GetString(AlarmsDocDbDatabaseKey),
                    DocumentDbCollection = configData.GetString(AlarmsDocDbCollectionKey),
                    DocumentDbRUs        = configData.GetInt(AlarmsDocDbRUsKey)
                }
            };
        }