Class: AWSCDK::OpenSearchServerless::CfnIndex::MethodProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
open_search_serverless/cfn_index.rb

Overview

Configuration for k-NN search method.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, engine: nil, parameters: nil, space_type: nil) ⇒ MethodProperty

Returns a new instance of MethodProperty.

Parameters:

  • name (String)

    The algorithm name for k-NN search.

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

    The k-NN search engine to use.

  • parameters (AWSCDK::IResolvable, AWSCDK::OpenSearchServerless::CfnIndex::ParametersProperty, nil) (defaults to: nil)

    Additional parameters for the k-NN algorithm.

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

    The distance function used for k-NN search.



665
666
667
668
669
670
671
672
673
674
# File 'open_search_serverless/cfn_index.rb', line 665

def initialize(name:, engine: nil, parameters: nil, space_type: nil)
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @engine = engine
  Jsii::Type.check_type(@engine, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "engine") unless @engine.nil?
  @parameters = parameters.is_a?(Hash) ? ::AWSCDK::OpenSearchServerless::CfnIndex::ParametersProperty.new(**parameters.transform_keys(&:to_sym)) : parameters
  Jsii::Type.check_type(@parameters, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19vcGVuc2VhcmNoc2VydmVybGVzcy5DZm5JbmRleC5QYXJhbWV0ZXJzUHJvcGVydHkifV19fQ==")), "parameters") unless @parameters.nil?
  @space_type = space_type
  Jsii::Type.check_type(@space_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "spaceType") unless @space_type.nil?
end

Instance Attribute Details

#engineString? (readonly)

The k-NN search engine to use.



685
686
687
# File 'open_search_serverless/cfn_index.rb', line 685

def engine
  @engine
end

#nameString (readonly)

The algorithm name for k-NN search.



680
681
682
# File 'open_search_serverless/cfn_index.rb', line 680

def name
  @name
end

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

Additional parameters for the k-NN algorithm.



690
691
692
# File 'open_search_serverless/cfn_index.rb', line 690

def parameters
  @parameters
end

#space_typeString? (readonly)

The distance function used for k-NN search.



695
696
697
# File 'open_search_serverless/cfn_index.rb', line 695

def space_type
  @space_type
end

Class Method Details

.jsii_propertiesObject



697
698
699
700
701
702
703
704
# File 'open_search_serverless/cfn_index.rb', line 697

def self.jsii_properties
  {
    :name => "name",
    :engine => "engine",
    :parameters => "parameters",
    :space_type => "spaceType",
  }
end

Instance Method Details

#to_jsiiObject



706
707
708
709
710
711
712
713
714
715
# File 'open_search_serverless/cfn_index.rb', line 706

def to_jsii
  result = {}
  result.merge!({
    "name" => @name,
    "engine" => @engine,
    "parameters" => @parameters,
    "spaceType" => @space_type,
  })
  result.compact
end