// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 using System; namespace AmazonGameLift.Editor { internal sealed class BucketUrlFormatter { public const int MaxBucketNameLength = 63; /// <exception cref="ArgumentNullException">For all arguments.</exception> /// <exception cref="ArgumentException">For <paramref name="bucketName"/>, if it is longer /// than <see cref="MaxBucketNameLength"/>.</exception> public string Format(string bucketName, string region) { if (bucketName is null) { throw new ArgumentNullException(nameof(bucketName)); } if (region is null) { throw new ArgumentNullException(nameof(region)); } if (bucketName.Length > MaxBucketNameLength) { throw new ArgumentException(DevStrings.BucketNameTooLong, nameof(region)); } return string.Format(Urls.AwsS3BucketTemplate, bucketName, region); } } }