generated/api/Models/AmazonS3Bucket.cs
// Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.10.2, generator: @autorest/powershell@4.0.708) // Changes may cause incorrect behavior and will be lost if the code is regenerated. namespace Commvault.Powershell.Models { using static Commvault.Powershell.Runtime.Extensions; /// <summary>Amazon S3</summary> public partial class AmazonS3Bucket : Commvault.Powershell.Models.IAmazonS3Bucket, Commvault.Powershell.Models.IAmazonS3BucketInternal, Commvault.Powershell.Runtime.IValidates { /// <summary> /// Backing field for Inherited model <see cref= "Commvault.Powershell.Models.ICloudStorageProxy" /> /// </summary> private Commvault.Powershell.Models.ICloudStorageProxy __cloudStorageProxy = new Commvault.Powershell.Models.CloudStorageProxy(); /// <summary>Backing field for <see cref="ArnRole" /> property.</summary> private string _arnRole; /// <summary>Needed for AWS STS assume role and AWS STS assume role with IAM role policy</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public string ArnRole { get => this._arnRole; set => this._arnRole = value; } /// <summary>Backing field for <see cref="Authentication" /> property.</summary> private string _authentication; /// <summary>Authentication type for the cloud storage server</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public string Authentication { get => this._authentication; set => this._authentication = value; } /// <summary>Backing field for <see cref="Bucket" /> property.</summary> private string _bucket; /// <summary>Name of bucket</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public string Bucket { get => this._bucket; set => this._bucket = value; } /// <summary>Backing field for <see cref="CloudType" /> property.</summary> private string _cloudType= @"Amazon S3"; /// <summary>Name of cloud vendor</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public string CloudType { get => this._cloudType; } /// <summary>Internal Acessors for CloudType</summary> string Commvault.Powershell.Models.IAmazonS3BucketInternal.CloudType { get => this._cloudType; set { {_cloudType = value;} } } /// <summary>Internal Acessors for Credentials</summary> Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IAmazonS3BucketInternal.Credentials { get => (this._credentials = this._credentials ?? new Commvault.Powershell.Models.IdName()); set { {_credentials = value;} } } /// <summary>Internal Acessors for MediaAgent</summary> Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IAmazonS3BucketInternal.MediaAgent { get => (this._mediaAgent = this._mediaAgent ?? new Commvault.Powershell.Models.IdName()); set { {_mediaAgent = value;} } } /// <summary>Backing field for <see cref="Credentials" /> property.</summary> private Commvault.Powershell.Models.IIdName _credentials; [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] internal Commvault.Powershell.Models.IIdName Credentials { get => (this._credentials = this._credentials ?? new Commvault.Powershell.Models.IdName()); set => this._credentials = value; } [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public long? CredentialsId { get => ((Commvault.Powershell.Models.IIdNameInternal)Credentials).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)Credentials).Id = value ?? default(long); } [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string CredentialsName { get => ((Commvault.Powershell.Models.IIdNameInternal)Credentials).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)Credentials).Name = value ?? null; } /// <summary>Backing field for <see cref="MediaAgent" /> property.</summary> private Commvault.Powershell.Models.IIdName _mediaAgent; [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] internal Commvault.Powershell.Models.IIdName MediaAgent { get => (this._mediaAgent = this._mediaAgent ?? new Commvault.Powershell.Models.IdName()); set => this._mediaAgent = value; } [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public long? MediaAgentId { get => ((Commvault.Powershell.Models.IIdNameInternal)MediaAgent).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)MediaAgent).Id = value ?? default(long); } [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string MediaAgentName { get => ((Commvault.Powershell.Models.IIdNameInternal)MediaAgent).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)MediaAgent).Name = value ?? null; } /// <summary>Password for proxy configuration (Should be in Base64 format)</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inherited)] public System.Security.SecureString Password { get => ((Commvault.Powershell.Models.ICloudStorageProxyInternal)__cloudStorageProxy).Password; set => ((Commvault.Powershell.Models.ICloudStorageProxyInternal)__cloudStorageProxy).Password = value ?? null; } /// <summary>Port for proxy configuration</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inherited)] public long? Port { get => ((Commvault.Powershell.Models.ICloudStorageProxyInternal)__cloudStorageProxy).Port; set => ((Commvault.Powershell.Models.ICloudStorageProxyInternal)__cloudStorageProxy).Port = value ?? default(long); } /// <summary> /// If the MediaAgent accesses the mount path using a proxy then proxy server address needs to be provided. If you want to /// remove proxy information, pass empty string in proxyAddress. /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inherited)] public string ProxyAddress { get => ((Commvault.Powershell.Models.ICloudStorageProxyInternal)__cloudStorageProxy).ProxyAddress; set => ((Commvault.Powershell.Models.ICloudStorageProxyInternal)__cloudStorageProxy).ProxyAddress = value ?? null; } /// <summary>Backing field for <see cref="ServiceHost" /> property.</summary> private string _serviceHost; /// <summary> /// IP address or fully qualified domain name or URL for the cloud library based on cloud vendor /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public string ServiceHost { get => this._serviceHost; set => this._serviceHost = value; } /// <summary>Backing field for <see cref="StorageClass" /> property.</summary> private string _storageClass; /// <summary>Appropriate storage class for your account</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public string StorageClass { get => this._storageClass; set => this._storageClass = value; } /// <summary>Username for proxy configuration</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inherited)] public string Username { get => ((Commvault.Powershell.Models.ICloudStorageProxyInternal)__cloudStorageProxy).Username; set => ((Commvault.Powershell.Models.ICloudStorageProxyInternal)__cloudStorageProxy).Username = value ?? null; } /// <summary>Creates an new <see cref="AmazonS3Bucket" /> instance.</summary> public AmazonS3Bucket() { } /// <summary>Validates that this object meets the validation criteria.</summary> /// <param name="eventListener">an <see cref="Commvault.Powershell.Runtime.IEventListener" /> instance that will receive validation /// events.</param> /// <returns> /// A <see cref = "global::System.Threading.Tasks.Task" /> that will be complete when validation is completed. /// </returns> public async global::System.Threading.Tasks.Task Validate(Commvault.Powershell.Runtime.IEventListener eventListener) { await eventListener.AssertNotNull(nameof(__cloudStorageProxy), __cloudStorageProxy); await eventListener.AssertObjectIsValid(nameof(__cloudStorageProxy), __cloudStorageProxy); } } /// Amazon S3 public partial interface IAmazonS3Bucket : Commvault.Powershell.Runtime.IJsonSerializable, Commvault.Powershell.Models.ICloudStorageProxy { /// <summary>Needed for AWS STS assume role and AWS STS assume role with IAM role policy</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"Needed for AWS STS assume role and AWS STS assume role with IAM role policy", SerializedName = @"arnRole", PossibleTypes = new [] { typeof(string) })] string ArnRole { get; set; } /// <summary>Authentication type for the cloud storage server</summary> [Commvault.Powershell.Runtime.Info( Required = true, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"Authentication type for the cloud storage server", SerializedName = @"authentication", PossibleTypes = new [] { typeof(string) })] string Authentication { get; set; } /// <summary>Name of bucket</summary> [Commvault.Powershell.Runtime.Info( Required = true, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"Name of bucket", SerializedName = @"bucket", PossibleTypes = new [] { typeof(string) })] string Bucket { get; set; } /// <summary>Name of cloud vendor</summary> [Commvault.Powershell.Runtime.Info( Required = true, ReadOnly = true, Read = true, Create = true, Update = true, Description = @"Name of cloud vendor", SerializedName = @"cloudType", PossibleTypes = new [] { typeof(string) })] string CloudType { get; } [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"", SerializedName = @"id", PossibleTypes = new [] { typeof(long) })] long? CredentialsId { get; set; } [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"", SerializedName = @"name", PossibleTypes = new [] { typeof(string) })] string CredentialsName { get; set; } [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"", SerializedName = @"id", PossibleTypes = new [] { typeof(long) })] long? MediaAgentId { get; set; } [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"", SerializedName = @"name", PossibleTypes = new [] { typeof(string) })] string MediaAgentName { get; set; } /// <summary> /// IP address or fully qualified domain name or URL for the cloud library based on cloud vendor /// </summary> [Commvault.Powershell.Runtime.Info( Required = true, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"IP address or fully qualified domain name or URL for the cloud library based on cloud vendor", SerializedName = @"serviceHost", PossibleTypes = new [] { typeof(string) })] string ServiceHost { get; set; } /// <summary>Appropriate storage class for your account</summary> [Commvault.Powershell.Runtime.Info( Required = true, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"Appropriate storage class for your account", SerializedName = @"storageClass", PossibleTypes = new [] { typeof(string) })] string StorageClass { get; set; } } /// Amazon S3 internal partial interface IAmazonS3BucketInternal : Commvault.Powershell.Models.ICloudStorageProxyInternal { /// <summary>Needed for AWS STS assume role and AWS STS assume role with IAM role policy</summary> string ArnRole { get; set; } /// <summary>Authentication type for the cloud storage server</summary> string Authentication { get; set; } /// <summary>Name of bucket</summary> string Bucket { get; set; } /// <summary>Name of cloud vendor</summary> string CloudType { get; set; } Commvault.Powershell.Models.IIdName Credentials { get; set; } long? CredentialsId { get; set; } string CredentialsName { get; set; } Commvault.Powershell.Models.IIdName MediaAgent { get; set; } long? MediaAgentId { get; set; } string MediaAgentName { get; set; } /// <summary> /// IP address or fully qualified domain name or URL for the cloud library based on cloud vendor /// </summary> string ServiceHost { get; set; } /// <summary>Appropriate storage class for your account</summary> string StorageClass { get; set; } } } |