Class: AWSCDK::Datasync::CfnLocationNFSProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
datasync/cfn_location_nfs_props.rb

Overview

Properties for defining a CfnLocationNFS.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(on_prem_config:, mount_options: nil, server_hostname: nil, subdirectory: nil, tags: nil) ⇒ CfnLocationNFSProps

Returns a new instance of CfnLocationNFSProps.

Parameters:

  • on_prem_config (AWSCDK::IResolvable, AWSCDK::Datasync::CfnLocationNFS::OnPremConfigProperty)

    Specifies the Amazon Resource Name (ARN) of the DataSync agent that can connect to your NFS file server.

  • mount_options (AWSCDK::IResolvable, AWSCDK::Datasync::CfnLocationNFS::MountOptionsProperty, nil) (defaults to: nil)

    Specifies the options that DataSync can use to mount your NFS file server.

  • server_hostname (String, nil) (defaults to: nil)

    Specifies the DNS name or IP address (IPv4 or IPv6) of the NFS file server that your DataSync agent connects to.

  • subdirectory (String, nil) (defaults to: nil)

    Specifies the export path in your NFS file server that you want DataSync to mount.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    Specifies labels that help you categorize, filter, and search for your AWS resources.



14
15
16
17
18
19
20
21
22
23
24
25
# File 'datasync/cfn_location_nfs_props.rb', line 14

def initialize(on_prem_config:, mount_options: nil, server_hostname: nil, subdirectory: nil, tags: nil)
  @on_prem_config = on_prem_config.is_a?(Hash) ? ::AWSCDK::Datasync::CfnLocationNFS::OnPremConfigProperty.new(**on_prem_config.transform_keys(&:to_sym)) : on_prem_config
  Jsii::Type.check_type(@on_prem_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhc3luYy5DZm5Mb2NhdGlvbk5GUy5PblByZW1Db25maWdQcm9wZXJ0eSJ9XX19")), "onPremConfig")
  @mount_options = mount_options.is_a?(Hash) ? ::AWSCDK::Datasync::CfnLocationNFS::MountOptionsProperty.new(**mount_options.transform_keys(&:to_sym)) : mount_options
  Jsii::Type.check_type(@mount_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhc3luYy5DZm5Mb2NhdGlvbk5GUy5Nb3VudE9wdGlvbnNQcm9wZXJ0eSJ9XX19")), "mountOptions") unless @mount_options.nil?
  @server_hostname = server_hostname
  Jsii::Type.check_type(@server_hostname, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "serverHostname") unless @server_hostname.nil?
  @subdirectory = subdirectory
  Jsii::Type.check_type(@subdirectory, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "subdirectory") unless @subdirectory.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#mount_optionsAWSCDK::IResolvable, ... (readonly)

Specifies the options that DataSync can use to mount your NFS file server.



38
39
40
# File 'datasync/cfn_location_nfs_props.rb', line 38

def mount_options
  @mount_options
end

#on_prem_configAWSCDK::IResolvable, AWSCDK::Datasync::CfnLocationNFS::OnPremConfigProperty (readonly)

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can connect to your NFS file server.

You can specify more than one agent. For more information, see Using multiple DataSync agents .



33
34
35
# File 'datasync/cfn_location_nfs_props.rb', line 33

def on_prem_config
  @on_prem_config
end

#server_hostnameString? (readonly)

Specifies the DNS name or IP address (IPv4 or IPv6) of the NFS file server that your DataSync agent connects to.



43
44
45
# File 'datasync/cfn_location_nfs_props.rb', line 43

def server_hostname
  @server_hostname
end

#subdirectoryString? (readonly)

Specifies the export path in your NFS file server that you want DataSync to mount.

This path (or a subdirectory of the path) is where DataSync transfers data to or from. For information on configuring an export for DataSync, see Accessing NFS file servers .



50
51
52
# File 'datasync/cfn_location_nfs_props.rb', line 50

def subdirectory
  @subdirectory
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

Specifies labels that help you categorize, filter, and search for your AWS resources.

We recommend creating at least a name tag for your location.



57
58
59
# File 'datasync/cfn_location_nfs_props.rb', line 57

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



59
60
61
62
63
64
65
66
67
# File 'datasync/cfn_location_nfs_props.rb', line 59

def self.jsii_properties
  {
    :on_prem_config => "onPremConfig",
    :mount_options => "mountOptions",
    :server_hostname => "serverHostname",
    :subdirectory => "subdirectory",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



69
70
71
72
73
74
75
76
77
78
79
# File 'datasync/cfn_location_nfs_props.rb', line 69

def to_jsii
  result = {}
  result.merge!({
    "onPremConfig" => @on_prem_config,
    "mountOptions" => @mount_options,
    "serverHostname" => @server_hostname,
    "subdirectory" => @subdirectory,
    "tags" => @tags,
  })
  result.compact
end