UNPKG

cloud-report

Version:

Collects and analyzes cloud resources

31 lines (30 loc) 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const utils_1 = require("../../../utils"); const aws_1 = require("../../../utils/aws"); const base_1 = require("../../base"); const streaming_distributions_1 = require("./streaming_distributions"); class StreamingDistributionConfigsCollector extends base_1.BaseCollector { collect() { return this.listAllStreamingDistributionConfigs(); } async listAllStreamingDistributionConfigs() { try { const cloudfront = this.getClient("CloudFront", "us-east-1"); const streaming_distributions_collector = new streaming_distributions_1.StreamingDistributionsCollector(); streaming_distributions_collector.setSession(this.getSession()); const streaming_distribution_data = await utils_1.CollectorUtil.cachedCollect(streaming_distributions_collector); const streaming_distribution_configs = {}; for (const streaming_distribution of streaming_distribution_data.streaming_distributions) { const cloudfrontStreamingDistributionsData = await cloudfront.getStreamingDistributionConfig({ Id: streaming_distribution.Id }).promise(); streaming_distribution_configs[streaming_distribution.Id] = cloudfrontStreamingDistributionsData.StreamingDistributionConfig; await utils_1.CommonUtil.wait(200); } return { streaming_distribution_configs }; } catch (error) { aws_1.AWSErrorHandler.handle(error); } } } exports.StreamingDistributionConfigsCollector = StreamingDistributionConfigsCollector;