class Misc::Script

Script represents used-defined input that can be used to compile and execute a script from the ScriptService based on the ScriptType.

Public Class Methods

new(id_or_code:, params: {}, type: Enums::ScriptTypes.inline, lang: 'painless', options: {}) click to toggle source

@param [String] id_or_code @param [Hash] params @param [Enums::ScriptTypes] type : Enums::ScriptTypes.(inline|stored),

defaults to Enums::ScriptTypes.inline

@param [String] lang @param [Hash] options

# File lib/misc/script.rb, line 15
def initialize(id_or_code:, params: {}, type: Enums::ScriptTypes.inline, lang: 'painless', options: {})
  @id_or_code = id_or_code
  @params = params
  @type = type
  @lang = lang
  @options = options
end

Public Instance Methods

id_or_code_expr() click to toggle source

@return [String]

# File lib/misc/script.rb, line 38
def id_or_code_expr
  @id_or_code
end
lang_expr() click to toggle source

@return [String]

# File lib/misc/script.rb, line 53
def lang_expr
  @lang
end
options_expr() click to toggle source

@return [Hash]

# File lib/misc/script.rb, line 58
def options_expr
  @options
end
params_expr() click to toggle source

@return [Hash]

# File lib/misc/script.rb, line 43
def params_expr
  @params
end
settings() click to toggle source

return [Hash]

# File lib/misc/script.rb, line 24
def settings
  settings = {}
  if @type.script_type == Enums::ScriptTypes.inline.script_type
    settings[:source] = @id_or_code
  else
    settings[:id] = @id_or_code
  end
  settings[:lang] = @lang if @lang.present?
  settings[:params] = @params if @params.present?
  settings[:options] = @options if @options.present?
  settings
end
type_expr() click to toggle source

@return [Enums::ScriptTypes]

# File lib/misc/script.rb, line 48
def type_expr
  @type
end