예제 #1
0
        public IChallengeHandler GetHandler(Challenge c, IReadOnlyDictionary <string, object> initParams)
        {
            var h = new AwsRoute53ChallengeHandler();

            if (initParams == null)
            {
                initParams = new Dictionary <string, object>();
            }

            // Required params
            if (!initParams.ContainsKey(HOSTED_ZONE_ID.Name))
            {
                throw new KeyNotFoundException($"missing required parameter [{HOSTED_ZONE_ID.Name}]");
            }
            h.HostedZoneId = (string)initParams[HOSTED_ZONE_ID.Name];

            // Optional params
            if (initParams.ContainsKey(RR_TYPE.Name))
            {
                h.ResourceRecordType = (string)initParams[RR_TYPE.Name];
            }
            if (initParams.ContainsKey(RR_TTL.Name))
            {
                h.ResourceRecordTtl = (int)initParams[RR_TTL.Name];
            }

            // Process the common params
            h.CommonParams.InitParams(initParams);

            return(h);
        }
        public IChallengeHandler GetHandler(Challenge c, IReadOnlyDictionary<string, object> initParams)
        {
            var h = new AwsRoute53ChallengeHandler();

            if (initParams == null)
                initParams = new Dictionary<string, object>();

            // Required params
            if (!initParams.ContainsKey(HOSTED_ZONE_ID.Name))
                throw new KeyNotFoundException($"missing required parameter [{HOSTED_ZONE_ID.Name}]");
            h.HostedZoneId = (string) initParams[HOSTED_ZONE_ID.Name];

            // Optional params
            if (initParams.ContainsKey(RR_TYPE.Name))
                h.ResourceRecordType = (string)initParams[RR_TYPE.Name];
            if (initParams.ContainsKey(RR_TTL.Name))
                h.ResourceRecordTtl = (int)initParams[RR_TTL.Name];

            // Process the common params
            h.CommonParams.InitParams(initParams);

            return h;
        }