/// <summary> /// Initializes a new instance of the <see cref="UserQuotaAndUsage" /> class. /// </summary> /// <param name="quotaPolicy">User quota policy applied to this user..</param> /// <param name="sid">If interested in a user via smb_client, include SID. Otherwise, If valid unix-id to SID mappings are available (i.e., when mixed mode is enabled) the server will perform the necessary id mapping and return the correct usage irrespective of whether the unix id / SID is provided. The string is of following format - S-1-IdentifierAuthority-SubAuthority1-SubAuthority2-...-SubAuthorityn..</param> /// <param name="unixUid">If interested in a user via unix-identifier, include UnixUid. Otherwise, If valid unix-id to SID mappings are available (i.e., when mixed mode is enabled) the server will perform the necessary id mapping and return the correct usage irrespective of whether the unix id / SID is provided..</param> /// <param name="usageBytes">Current logical usage of user id in the input view..</param> public UserQuotaAndUsage(QuotaPolicy quotaPolicy = default(QuotaPolicy), string sid = default(string), int?unixUid = default(int?), long?usageBytes = default(long?)) { this.QuotaPolicy = quotaPolicy; this.Sid = sid; this.UnixUid = unixUid; this.UsageBytes = usageBytes; }
/// <summary> /// Initializes a new instance of the <see cref="QuotaAndUsageInView" /> class. /// </summary> /// <param name="quota">User quota policy applied to this user..</param> /// <param name="usageBytes">Usage in bytes of this user in this view..</param> /// <param name="viewId">The usage and quota policy information of this user for this view..</param> /// <param name="viewName">View name..</param> public QuotaAndUsageInView(QuotaPolicy quota = default(QuotaPolicy), long?usageBytes = default(long?), long?viewId = default(long?), string viewName = default(string)) { this.Quota = quota; this.UsageBytes = usageBytes; this.ViewId = viewId; this.ViewName = viewName; }
/// <summary> /// Initializes a new instance of the <see cref="UserQuotaSummaryForView" /> class. /// </summary> /// <param name="defaultUserQuotaPolicy">Default quota policy applied to all the users in the view who doesn't have a policy override..</param> /// <param name="numUsersAboveAlertThreshold">Number of users who has exceeded their specified alert limit..</param> /// <param name="numUsersAboveHardLimit">Number of users who has exceeded their specified quota hard limit..</param> /// <param name="totalNumUsers">Total number of users who has either a user quota policy override specified or has non-zero logical usage..</param> public UserQuotaSummaryForView(QuotaPolicy defaultUserQuotaPolicy = default(QuotaPolicy), long?numUsersAboveAlertThreshold = default(long?), long?numUsersAboveHardLimit = default(long?), long?totalNumUsers = default(long?)) { this.DefaultUserQuotaPolicy = defaultUserQuotaPolicy; this.NumUsersAboveAlertThreshold = numUsersAboveAlertThreshold; this.NumUsersAboveHardLimit = numUsersAboveHardLimit; this.TotalNumUsers = totalNumUsers; }
/// <summary> /// Initializes a new instance of the <see cref="UpdateUserQuotaSettingsForView" /> class. /// </summary> /// <param name="defaultUserQuotaPolicy">The default user quota policy for this view..</param> /// <param name="enableUserQuota">If set, it enables/disables the user quota overrides for a view. Otherwise, it leaves it at it's previous state..</param> /// <param name="inheritDefaultPolicyFromViewbox">If set to true, the default_policy in view metadata will be cleared and the default policy from viewbox will take effect for all users in the view..</param> /// <param name="viewName">View name of input view..</param> public UpdateUserQuotaSettingsForView(QuotaPolicy defaultUserQuotaPolicy = default(QuotaPolicy), bool?enableUserQuota = default(bool?), bool?inheritDefaultPolicyFromViewbox = default(bool?), string viewName = default(string)) { this.DefaultUserQuotaPolicy = defaultUserQuotaPolicy; this.EnableUserQuota = enableUserQuota; this.InheritDefaultPolicyFromViewbox = inheritDefaultPolicyFromViewbox; this.ViewName = viewName; }
/// <summary> /// Initializes a new instance of the <see cref="UpdateViewParam" /> class. /// </summary> /// <param name="accessSids">Specifies the list of security identifiers (SIDs) for the restricted Principals who have access to this View..</param> /// <param name="description">Specifies an optional text description about the View..</param> /// <param name="enableFilerAuditLogging">Specifies if Filer Audit Logging is enabled for this view..</param> /// <param name="enableMixedModePermissions">If set, mixed mode (NFS and SMB) access is enabled for this view..</param> /// <param name="enableSmbAccessBasedEnumeration">Specifies if access-based enumeration should be enabled. If 'true', only files and folders that the user has permissions to access are visible on the SMB share for that user..</param> /// <param name="enableSmbViewDiscovery">If set, it enables discovery of view for SMB..</param> /// <param name="fileExtensionFilter">Optional filtering criteria that should be satisfied by all the files created in this view. It does not affect existing files..</param> /// <param name="logicalQuota">logicalQuota.</param> /// <param name="protocolAccess">Specifies the supported Protocols for the View..</param> /// <param name="qos">Specifies the Quality of Service (QoS) Policy for the View..</param> /// <param name="smbPermissionsInfo">Specifies the SMB permissions for the View..</param> /// <param name="storagePolicyOverride">Specifies if inline deduplication and compression settings inherited from the Storage Domain (View Box) should be disabled for this View..</param> /// <param name="subnetWhitelist">Specifies a list of Subnets with IP addresses that have permissions to access the View. (Overrides the Subnets specified at the global Cohesity Cluster level.).</param> public UpdateViewParam(List <string> accessSids = default(List <string>), string description = default(string), bool?enableFilerAuditLogging = default(bool?), bool?enableMixedModePermissions = default(bool?), bool?enableSmbAccessBasedEnumeration = default(bool?), bool?enableSmbViewDiscovery = default(bool?), FileExtensionFilter fileExtensionFilter = default(FileExtensionFilter), QuotaPolicy logicalQuota = default(QuotaPolicy), ProtocolAccessEnum?protocolAccess = default(ProtocolAccessEnum?), QoS qos = default(QoS), SmbPermissionsInfo smbPermissionsInfo = default(SmbPermissionsInfo), StoragePolicyOverride storagePolicyOverride = default(StoragePolicyOverride), List <Subnet> subnetWhitelist = default(List <Subnet>)) { this.AccessSids = accessSids; this.Description = description; this.EnableFilerAuditLogging = enableFilerAuditLogging; this.EnableMixedModePermissions = enableMixedModePermissions; this.EnableSmbAccessBasedEnumeration = enableSmbAccessBasedEnumeration; this.EnableSmbViewDiscovery = enableSmbViewDiscovery; this.FileExtensionFilter = fileExtensionFilter; this.LogicalQuota = logicalQuota; this.ProtocolAccess = protocolAccess; this.Qos = qos; this.SmbPermissionsInfo = smbPermissionsInfo; this.StoragePolicyOverride = storagePolicyOverride; this.SubnetWhitelist = subnetWhitelist; }
/// <summary> /// Initializes a new instance of the <see cref="View" /> class. /// </summary> /// <param name="accessSids">Specifies the list of security identifiers (SIDs) for the restricted Principals who have access to this View..</param> /// <param name="aliases">Aliases created for the view. A view alias allows a directory path inside a view to be mounted using the alias name..</param> /// <param name="allSmbMountPaths">Specifies the possible paths that can be used to mount this View as a SMB share. If Active Directory has multiple account names; each machine account has its own path..</param> /// <param name="basicMountPath">Specifies the NFS mount path of the View (without the hostname information). This path is used to support NFS mounting of the paths specified in the nfsExportPathList on Windows systems..</param> /// <param name="caseInsensitiveNamesEnabled">Specifies whether to support case insensitive file/folder names. This parameter can only be set during create and cannot be changed..</param> /// <param name="createTimeMsecs">Specifies the time that the View was created in milliseconds..</param> /// <param name="dataLockExpiryUsecs">DataLock (Write Once Read Many) lock expiry epoch time in microseconds. If a view is marked as a DataLock view, only a Data Security Officer (a user having Data Security Privilege) can delete the view until the lock expiry time..</param> /// <param name="description">Specifies an optional text description about the View..</param> /// <param name="enableFilerAuditLogging">Specifies if Filer Audit Logging is enabled for this view..</param> /// <param name="enableMixedModePermissions">If set, mixed mode (NFS and SMB) access is enabled for this view..</param> /// <param name="enableSmbAccessBasedEnumeration">Specifies if access-based enumeration should be enabled. If 'true', only files and folders that the user has permissions to access are visible on the SMB share for that user..</param> /// <param name="enableSmbViewDiscovery">If set, it enables discovery of view for SMB..</param> /// <param name="fileExtensionFilter">Optional filtering criteria that should be satisfied by all the files created in this view. It does not affect existing files..</param> /// <param name="logicalQuota">logicalQuota.</param> /// <param name="logicalUsageBytes">LogicalUsageBytes is the logical usage in bytes for the view..</param> /// <param name="name">Specifies the name of the View..</param> /// <param name="nfsMountPath">Specifies the path for mounting this View as an NFS share..</param> /// <param name="protocolAccess">Specifies the supported Protocols for the View..</param> /// <param name="qos">Specifies the Quality of Service (QoS) Policy for the View..</param> /// <param name="smbMountPath">Specifies the main path for mounting this View as an SMB share..</param> /// <param name="smbPermissionsInfo">Specifies the SMB permissions for the View..</param> /// <param name="storagePolicyOverride">Specifies if inline deduplication and compression settings inherited from the Storage Domain (View Box) should be disabled for this View..</param> /// <param name="subnetWhitelist">Specifies a list of Subnets with IP addresses that have permissions to access the View. (Overrides the Subnets specified at the global Cohesity Cluster level.).</param> /// <param name="viewBoxId">Specifies the id of the Storage Domain (View Box) where the View is stored..</param> /// <param name="viewBoxName">Specifies the name of the Storage Domain (View Box) where the View is stored..</param> /// <param name="viewId">Specifies an id of the View assigned by the Cohesity Cluster..</param> /// <param name="viewProtection">Specifies information about the Protection Jobs protecting this View..</param> public View(List <string> accessSids = default(List <string>), List <ViewAliasInfo> aliases = default(List <ViewAliasInfo>), List <string> allSmbMountPaths = default(List <string>), string basicMountPath = default(string), bool?caseInsensitiveNamesEnabled = default(bool?), long?createTimeMsecs = default(long?), long?dataLockExpiryUsecs = default(long?), string description = default(string), bool?enableFilerAuditLogging = default(bool?), bool?enableMixedModePermissions = default(bool?), bool?enableSmbAccessBasedEnumeration = default(bool?), bool?enableSmbViewDiscovery = default(bool?), FileExtensionFilter fileExtensionFilter = default(FileExtensionFilter), QuotaPolicy logicalQuota = default(QuotaPolicy), long?logicalUsageBytes = default(long?), string name = default(string), string nfsMountPath = default(string), ProtocolAccessEnum?protocolAccess = default(ProtocolAccessEnum?), QoS qos = default(QoS), string smbMountPath = default(string), SmbPermissionsInfo smbPermissionsInfo = default(SmbPermissionsInfo), StoragePolicyOverride storagePolicyOverride = default(StoragePolicyOverride), List <Subnet> subnetWhitelist = default(List <Subnet>), long?viewBoxId = default(long?), string viewBoxName = default(string), long?viewId = default(long?), ViewProtection viewProtection = default(ViewProtection)) { this.AccessSids = accessSids; this.Aliases = aliases; this.AllSmbMountPaths = allSmbMountPaths; this.BasicMountPath = basicMountPath; this.CaseInsensitiveNamesEnabled = caseInsensitiveNamesEnabled; this.CreateTimeMsecs = createTimeMsecs; this.DataLockExpiryUsecs = dataLockExpiryUsecs; this.Description = description; this.EnableFilerAuditLogging = enableFilerAuditLogging; this.EnableMixedModePermissions = enableMixedModePermissions; this.EnableSmbAccessBasedEnumeration = enableSmbAccessBasedEnumeration; this.EnableSmbViewDiscovery = enableSmbViewDiscovery; this.FileExtensionFilter = fileExtensionFilter; this.LogicalQuota = logicalQuota; this.LogicalUsageBytes = logicalUsageBytes; this.Name = name; this.NfsMountPath = nfsMountPath; this.ProtocolAccess = protocolAccess; this.Qos = qos; this.SmbMountPath = smbMountPath; this.SmbPermissionsInfo = smbPermissionsInfo; this.StoragePolicyOverride = storagePolicyOverride; this.SubnetWhitelist = subnetWhitelist; this.ViewBoxId = viewBoxId; this.ViewBoxName = viewBoxName; this.ViewId = viewId; this.ViewProtection = viewProtection; }
/// <summary> /// Initializes a new instance of the <see cref="UserQuota" /> class. /// </summary> /// <param name="quotaPolicy">User quota policy applied to this user..</param> /// <param name="sid">If interested in a user via smb_client, include SID. Otherwise, If valid unix-id to SID mappings are available (i.e., when mixed mode is enabled) the server will perform the necessary id mapping and return the correct usage irrespective of whether the unix id / SID is provided. The string is of following format - S-1-IdentifierAuthority-SubAuthority1-SubAuthority2-...-SubAuthorityn..</param> /// <param name="unixUid">If interested in a user via unix-identifier, include UnixUid. Otherwise, If valid unix-id to SID mappings are available (i.e., when mixed mode is enabled) the server will perform the necessary id mapping and return the correct usage irrespective of whether the unix id / SID is provided..</param> public UserQuota(QuotaPolicy quotaPolicy = default(QuotaPolicy), string sid = default(string), int?unixUid = default(int?)) { this.QuotaPolicy = quotaPolicy; this.Sid = sid; this.UnixUid = unixUid; }
/// <summary> /// Initializes a new instance of the <see cref="UserQuotaSettings" /> class. /// </summary> /// <param name="defaultUserQuotaPolicy">The default user quota policy for this view..</param> /// <param name="enableUserQuota">If set, it enables/disables the user quota overrides for a view. Otherwise, it leaves it at it's previous state..</param> public UserQuotaSettings(QuotaPolicy defaultUserQuotaPolicy = default(QuotaPolicy), bool?enableUserQuota = default(bool?)) { this.DefaultUserQuotaPolicy = defaultUserQuotaPolicy; this.EnableUserQuota = enableUserQuota; }
/// <summary> /// Initializes a new instance of the <see cref="CreateViewRequest" /> class. /// </summary> /// <param name="accessSids">Specifies the list of security identifiers (SIDs) for the restricted Principals who have access to this View..</param> /// <param name="caseInsensitiveNamesEnabled">Specifies whether to support case insensitive file/folder names. This parameter can only be set during create and cannot be changed..</param> /// <param name="description">Specifies an optional text description about the View..</param> /// <param name="enableFilerAuditLogging">Specifies if Filer Audit Logging is enabled for this view..</param> /// <param name="enableMixedModePermissions">If set, mixed mode (NFS and SMB) access is enabled for this view..</param> /// <param name="enableSmbAccessBasedEnumeration">Specifies if access-based enumeration should be enabled. If 'true', only files and folders that the user has permissions to access are visible on the SMB share for that user..</param> /// <param name="enableSmbViewDiscovery">If set, it enables discovery of view for SMB..</param> /// <param name="fileExtensionFilter">Optional filtering criteria that should be satisfied by all the files created in this view. It does not affect existing files..</param> /// <param name="logicalQuota">logicalQuota.</param> /// <param name="name">Specifies the name of the new View to create. (required).</param> /// <param name="protocolAccess">Specifies the supported Protocols for the View..</param> /// <param name="qos">Specifies the Quality of Service (QoS) Policy for the View..</param> /// <param name="smbPermissionsInfo">Specifies the SMB permissions for the View..</param> /// <param name="storagePolicyOverride">Specifies if inline deduplication and compression settings inherited from the Storage Domain (View Box) should be disabled for this View..</param> /// <param name="subnetWhitelist">Specifies a list of Subnets with IP addresses that have permissions to access the View. (Overrides the Subnets specified at the global Cohesity Cluster level.).</param> /// <param name="viewBoxId">Specifies the id of the Storage Domain (View Box) where the View will be created. (required).</param> public CreateViewRequest(List <string> accessSids = default(List <string>), bool?caseInsensitiveNamesEnabled = default(bool?), string description = default(string), bool?enableFilerAuditLogging = default(bool?), bool?enableMixedModePermissions = default(bool?), bool?enableSmbAccessBasedEnumeration = default(bool?), bool?enableSmbViewDiscovery = default(bool?), FileExtensionFilter fileExtensionFilter = default(FileExtensionFilter), QuotaPolicy logicalQuota = default(QuotaPolicy), string name = default(string), ProtocolAccessEnum?protocolAccess = default(ProtocolAccessEnum?), QoS qos = default(QoS), SmbPermissionsInfo smbPermissionsInfo = default(SmbPermissionsInfo), StoragePolicyOverride storagePolicyOverride = default(StoragePolicyOverride), List <Subnet> subnetWhitelist = default(List <Subnet>), long?viewBoxId = default(long?)) { // to ensure "name" is required (not null) if (name == null) { throw new InvalidDataException("name is a required property for CreateViewRequest and cannot be null"); } else { this.Name = name; } // to ensure "viewBoxId" is required (not null) if (viewBoxId == null) { throw new InvalidDataException("viewBoxId is a required property for CreateViewRequest and cannot be null"); } else { this.ViewBoxId = viewBoxId; } this.AccessSids = accessSids; this.CaseInsensitiveNamesEnabled = caseInsensitiveNamesEnabled; this.Description = description; this.EnableFilerAuditLogging = enableFilerAuditLogging; this.EnableMixedModePermissions = enableMixedModePermissions; this.EnableSmbAccessBasedEnumeration = enableSmbAccessBasedEnumeration; this.EnableSmbViewDiscovery = enableSmbViewDiscovery; this.FileExtensionFilter = fileExtensionFilter; this.LogicalQuota = logicalQuota; this.ProtocolAccess = protocolAccess; this.Qos = qos; this.SmbPermissionsInfo = smbPermissionsInfo; this.StoragePolicyOverride = storagePolicyOverride; this.SubnetWhitelist = subnetWhitelist; }