/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the workmail-2017-10-01.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.WorkMail.Model { /// /// A rule that controls access to mobile devices for an WorkMail group. /// public partial class MobileDeviceAccessRule { private DateTime? _dateCreated; private DateTime? _dateModified; private string _description; private List _deviceModels = new List(); private List _deviceOperatingSystems = new List(); private List _deviceTypes = new List(); private List _deviceUserAgents = new List(); private MobileDeviceAccessRuleEffect _effect; private string _mobileDeviceAccessRuleId; private string _name; private List _notDeviceModels = new List(); private List _notDeviceOperatingSystems = new List(); private List _notDeviceTypes = new List(); private List _notDeviceUserAgents = new List(); /// /// Gets and sets the property DateCreated. /// /// The date and time at which an access rule was created. /// /// public DateTime DateCreated { get { return this._dateCreated.GetValueOrDefault(); } set { this._dateCreated = value; } } // Check to see if DateCreated property is set internal bool IsSetDateCreated() { return this._dateCreated.HasValue; } /// /// Gets and sets the property DateModified. /// /// The date and time at which an access rule was modified. /// /// public DateTime DateModified { get { return this._dateModified.GetValueOrDefault(); } set { this._dateModified = value; } } // Check to see if DateModified property is set internal bool IsSetDateModified() { return this._dateModified.HasValue; } /// /// Gets and sets the property Description. /// /// The description of a mobile access rule. /// /// [AWSProperty(Min=1, Max=256)] public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property DeviceModels. /// /// Device models that a rule will match. /// /// [AWSProperty(Min=1, Max=10)] public List DeviceModels { get { return this._deviceModels; } set { this._deviceModels = value; } } // Check to see if DeviceModels property is set internal bool IsSetDeviceModels() { return this._deviceModels != null && this._deviceModels.Count > 0; } /// /// Gets and sets the property DeviceOperatingSystems. /// /// Device operating systems that a rule will match. /// /// [AWSProperty(Min=1, Max=10)] public List DeviceOperatingSystems { get { return this._deviceOperatingSystems; } set { this._deviceOperatingSystems = value; } } // Check to see if DeviceOperatingSystems property is set internal bool IsSetDeviceOperatingSystems() { return this._deviceOperatingSystems != null && this._deviceOperatingSystems.Count > 0; } /// /// Gets and sets the property DeviceTypes. /// /// Device types that a rule will match. /// /// [AWSProperty(Min=1, Max=10)] public List DeviceTypes { get { return this._deviceTypes; } set { this._deviceTypes = value; } } // Check to see if DeviceTypes property is set internal bool IsSetDeviceTypes() { return this._deviceTypes != null && this._deviceTypes.Count > 0; } /// /// Gets and sets the property DeviceUserAgents. /// /// Device user agents that a rule will match. /// /// [AWSProperty(Min=1, Max=10)] public List DeviceUserAgents { get { return this._deviceUserAgents; } set { this._deviceUserAgents = value; } } // Check to see if DeviceUserAgents property is set internal bool IsSetDeviceUserAgents() { return this._deviceUserAgents != null && this._deviceUserAgents.Count > 0; } /// /// Gets and sets the property Effect. /// /// The effect of the rule when it matches. Allowed values are ALLOW or DENY. /// /// public MobileDeviceAccessRuleEffect Effect { get { return this._effect; } set { this._effect = value; } } // Check to see if Effect property is set internal bool IsSetEffect() { return this._effect != null; } /// /// Gets and sets the property MobileDeviceAccessRuleId. /// /// The ID assigned to a mobile access rule. /// /// [AWSProperty(Min=1, Max=64)] public string MobileDeviceAccessRuleId { get { return this._mobileDeviceAccessRuleId; } set { this._mobileDeviceAccessRuleId = value; } } // Check to see if MobileDeviceAccessRuleId property is set internal bool IsSetMobileDeviceAccessRuleId() { return this._mobileDeviceAccessRuleId != null; } /// /// Gets and sets the property Name. /// /// The name of a mobile access rule. /// /// [AWSProperty(Min=1, Max=64)] public string Name { get { return this._name; } set { this._name = value; } } // Check to see if Name property is set internal bool IsSetName() { return this._name != null; } /// /// Gets and sets the property NotDeviceModels. /// /// Device models that a rule will not match. All other device models will match. /// /// [AWSProperty(Min=1, Max=10)] public List NotDeviceModels { get { return this._notDeviceModels; } set { this._notDeviceModels = value; } } // Check to see if NotDeviceModels property is set internal bool IsSetNotDeviceModels() { return this._notDeviceModels != null && this._notDeviceModels.Count > 0; } /// /// Gets and sets the property NotDeviceOperatingSystems. /// /// Device operating systems that a rule will not match. All other device types /// will match. /// /// [AWSProperty(Min=1, Max=10)] public List NotDeviceOperatingSystems { get { return this._notDeviceOperatingSystems; } set { this._notDeviceOperatingSystems = value; } } // Check to see if NotDeviceOperatingSystems property is set internal bool IsSetNotDeviceOperatingSystems() { return this._notDeviceOperatingSystems != null && this._notDeviceOperatingSystems.Count > 0; } /// /// Gets and sets the property NotDeviceTypes. /// /// Device types that a rule will not match. All other device types will match. /// /// [AWSProperty(Min=1, Max=10)] public List NotDeviceTypes { get { return this._notDeviceTypes; } set { this._notDeviceTypes = value; } } // Check to see if NotDeviceTypes property is set internal bool IsSetNotDeviceTypes() { return this._notDeviceTypes != null && this._notDeviceTypes.Count > 0; } /// /// Gets and sets the property NotDeviceUserAgents. /// /// Device user agents that a rule will not match. All other device user agents /// will match. /// /// [AWSProperty(Min=1, Max=10)] public List NotDeviceUserAgents { get { return this._notDeviceUserAgents; } set { this._notDeviceUserAgents = value; } } // Check to see if NotDeviceUserAgents property is set internal bool IsSetNotDeviceUserAgents() { return this._notDeviceUserAgents != null && this._notDeviceUserAgents.Count > 0; } } }