Class: AWSCDK::QBusiness::CfnPluginProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
q_business/cfn_plugin_props.rb

Overview

Properties for defining a CfnPlugin.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(auth_configuration:, display_name:, type:, application_id: nil, custom_plugin_configuration: nil, server_url: nil, state: nil, tags: nil) ⇒ CfnPluginProps

Returns a new instance of CfnPluginProps.

Parameters:

  • auth_configuration (AWSCDK::IResolvable, AWSCDK::QBusiness::CfnPlugin::PluginAuthConfigurationProperty)

    Authentication configuration information for an Amazon Q Business plugin.

  • display_name (String)

    The name of the plugin.

  • type (String)

    The type of the plugin.

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

    The identifier of the application that will contain the plugin.

  • custom_plugin_configuration (AWSCDK::IResolvable, AWSCDK::QBusiness::CfnPlugin::CustomPluginConfigurationProperty, nil) (defaults to: nil)

    Configuration information required to create a custom plugin.

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

    The plugin server URL used for configuration.

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

    The current status of the plugin.

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

    A list of key-value pairs that identify or categorize the data source connector.



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'q_business/cfn_plugin_props.rb', line 17

def initialize(auth_configuration:, display_name:, type:, application_id: nil, custom_plugin_configuration: nil, server_url: nil, state: nil, tags: nil)
  @auth_configuration = auth_configuration.is_a?(Hash) ? ::AWSCDK::QBusiness::CfnPlugin::PluginAuthConfigurationProperty.new(**auth_configuration.transform_keys(&:to_sym)) : auth_configuration
  Jsii::Type.check_type(@auth_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19xYnVzaW5lc3MuQ2ZuUGx1Z2luLlBsdWdpbkF1dGhDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "authConfiguration")
  @display_name = display_name
  Jsii::Type.check_type(@display_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "displayName")
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type")
  @application_id = application_id
  Jsii::Type.check_type(@application_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "applicationId") unless @application_id.nil?
  @custom_plugin_configuration = custom_plugin_configuration.is_a?(Hash) ? ::AWSCDK::QBusiness::CfnPlugin::CustomPluginConfigurationProperty.new(**custom_plugin_configuration.transform_keys(&:to_sym)) : custom_plugin_configuration
  Jsii::Type.check_type(@custom_plugin_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19xYnVzaW5lc3MuQ2ZuUGx1Z2luLkN1c3RvbVBsdWdpbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "customPluginConfiguration") unless @custom_plugin_configuration.nil?
  @server_url = server_url
  Jsii::Type.check_type(@server_url, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "serverUrl") unless @server_url.nil?
  @state = state
  Jsii::Type.check_type(@state, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "state") unless @state.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

#application_idString? (readonly)

The identifier of the application that will contain the plugin.



55
56
57
# File 'q_business/cfn_plugin_props.rb', line 55

def application_id
  @application_id
end

#auth_configurationAWSCDK::IResolvable, AWSCDK::QBusiness::CfnPlugin::PluginAuthConfigurationProperty (readonly)

Authentication configuration information for an Amazon Q Business plugin.



40
41
42
# File 'q_business/cfn_plugin_props.rb', line 40

def auth_configuration
  @auth_configuration
end

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

Configuration information required to create a custom plugin.



60
61
62
# File 'q_business/cfn_plugin_props.rb', line 60

def custom_plugin_configuration
  @custom_plugin_configuration
end

#display_nameString (readonly)

The name of the plugin.



45
46
47
# File 'q_business/cfn_plugin_props.rb', line 45

def display_name
  @display_name
end

#server_urlString? (readonly)

The plugin server URL used for configuration.



65
66
67
# File 'q_business/cfn_plugin_props.rb', line 65

def server_url
  @server_url
end

#stateString? (readonly)

The current status of the plugin.



70
71
72
# File 'q_business/cfn_plugin_props.rb', line 70

def state
  @state
end

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

A list of key-value pairs that identify or categorize the data source connector.

You can also use tags to help control access to the data source connector. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + -



77
78
79
# File 'q_business/cfn_plugin_props.rb', line 77

def tags
  @tags
end

#typeString (readonly)

The type of the plugin.



50
51
52
# File 'q_business/cfn_plugin_props.rb', line 50

def type
  @type
end

Class Method Details

.jsii_propertiesObject



79
80
81
82
83
84
85
86
87
88
89
90
# File 'q_business/cfn_plugin_props.rb', line 79

def self.jsii_properties
  {
    :auth_configuration => "authConfiguration",
    :display_name => "displayName",
    :type => "type",
    :application_id => "applicationId",
    :custom_plugin_configuration => "customPluginConfiguration",
    :server_url => "serverUrl",
    :state => "state",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



92
93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'q_business/cfn_plugin_props.rb', line 92

def to_jsii
  result = {}
  result.merge!({
    "authConfiguration" => @auth_configuration,
    "displayName" => @display_name,
    "type" => @type,
    "applicationId" => @application_id,
    "customPluginConfiguration" => @custom_plugin_configuration,
    "serverUrl" => @server_url,
    "state" => @state,
    "tags" => @tags,
  })
  result.compact
end