ACMESharp.Providers.AWS.AwsS3ChallengeHandlerProvider.GetHandler C# (CSharp) Method

GetHandler() public method

public GetHandler ( ACMESharp.ACME.Challenge c, object>.IReadOnlyDictionary initParams ) : IChallengeHandler
c ACMESharp.ACME.Challenge
initParams object>.IReadOnlyDictionary
return IChallengeHandler
        public IChallengeHandler GetHandler(Challenge c, IReadOnlyDictionary<string, object> initParams)
        {
            var h = new AwsS3ChallengeHandler();

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

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

            // Optional params
            if (initParams.ContainsKey(CONTENT_TYPE.Name))
                h.ContentType = (string)initParams[CONTENT_TYPE.Name];
            if (initParams.ContainsKey(CANNED_ACL.Name))
                h.CannedAcl = (string)initParams[CANNED_ACL.Name];

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

            return h;
        }