/* * 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 datasync-2018-11-09.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.DataSync.Model { /// /// Container for the parameters to the CreateLocationNfs operation. /// Creates an endpoint for an Network File System (NFS) file server that DataSync can /// use for a data transfer. /// public partial class CreateLocationNfsRequest : AmazonDataSyncRequest { private NfsMountOptions _mountOptions; private OnPremConfig _onPremConfig; private string _serverHostname; private string _subdirectory; private List _tags = new List(); /// /// Gets and sets the property MountOptions. /// /// Specifies the mount options that DataSync can use to mount your NFS share. /// /// public NfsMountOptions MountOptions { get { return this._mountOptions; } set { this._mountOptions = value; } } // Check to see if MountOptions property is set internal bool IsSetMountOptions() { return this._mountOptions != null; } /// /// Gets and sets the property OnPremConfig. /// /// Specifies the Amazon Resource Names (ARNs) of agents that DataSync uses to connect /// to your NFS file server. /// /// /// /// If you are copying data to or from your Snowcone device, see NFS /// Server on Snowcone for more information. /// /// [AWSProperty(Required=true)] public OnPremConfig OnPremConfig { get { return this._onPremConfig; } set { this._onPremConfig = value; } } // Check to see if OnPremConfig property is set internal bool IsSetOnPremConfig() { return this._onPremConfig != null; } /// /// Gets and sets the property ServerHostname. /// /// Specifies the IP address or domain name of your NFS file server. An agent that is /// installed on-premises uses this hostname to mount the NFS server in a network. /// /// /// /// If you are copying data to or from your Snowcone device, see NFS /// Server on Snowcone for more information. /// /// /// /// You must specify be an IP version 4 address or Domain Name System (DNS)-compliant /// name. /// /// /// [AWSProperty(Required=true, Max=255)] public string ServerHostname { get { return this._serverHostname; } set { this._serverHostname = value; } } // Check to see if ServerHostname property is set internal bool IsSetServerHostname() { return this._serverHostname != null; } /// /// Gets and sets the property Subdirectory. /// /// Specifies the subdirectory in the NFS file server that DataSync transfers to or from. /// The NFS path should be a path that's exported by the NFS server, or a subdirectory /// of that path. The path should be such that it can be mounted by other NFS clients /// in your network. /// /// /// /// To see all the paths exported by your NFS server, run "showmount -e nfs-server-name" /// from an NFS client that has access to your server. You can specify any directory that /// appears in the results, and any subdirectory of that directory. Ensure that the NFS /// export is accessible without Kerberos authentication. /// /// /// /// To transfer all the data in the folder you specified, DataSync needs to have permissions /// to read all the data. To ensure this, either configure the NFS export with no_root_squash, /// or ensure that the permissions for all of the files that you want DataSync allow read /// access for all users. Doing either enables the agent to read the files. For the agent /// to access directories, you must additionally enable all execute access. /// /// /// /// If you are copying data to or from your Snowcone device, see NFS /// Server on Snowcone for more information. /// /// [AWSProperty(Required=true, Max=4096)] public string Subdirectory { get { return this._subdirectory; } set { this._subdirectory = value; } } // Check to see if Subdirectory property is set internal bool IsSetSubdirectory() { return this._subdirectory != null; } /// /// Gets and sets the property Tags. /// /// Specifies labels that help you categorize, filter, and search for your Amazon Web /// Services resources. We recommend creating at least a name tag for your location. /// /// [AWSProperty(Min=0, Max=50)] public List Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } } }