Module: Elasticsearch::Model::Proxy::Base

Included in:
ClassMethodsProxy, InstanceMethodsProxy
Defined in:
lib/elasticsearch/model/proxy.rb

Overview

Common module for the proxy classes

Instance Attribute Summary collapse

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method_name, *arguments, &block) ⇒ Object

Delegate methods to ‘@target`



95
96
97
# File 'lib/elasticsearch/model/proxy.rb', line 95

def method_missing(method_name, *arguments, &block)
  target.respond_to?(method_name) ? target.__send__(method_name, *arguments, &block) : super
end

Instance Attribute Details

#targetObject (readonly)

Returns the value of attribute target.



87
88
89
# File 'lib/elasticsearch/model/proxy.rb', line 87

def target
  @target
end

Instance Method Details

#initialize(target) ⇒ Object



89
90
91
# File 'lib/elasticsearch/model/proxy.rb', line 89

def initialize(target)
  @target = target
end

#inspectObject



105
106
107
# File 'lib/elasticsearch/model/proxy.rb', line 105

def inspect
  "[PROXY] #{target.inspect}"
end

#respond_to?(method_name, include_private = false) ⇒ Boolean

Respond to methods from ‘@target`

Returns:

  • (Boolean)


101
102
103
# File 'lib/elasticsearch/model/proxy.rb', line 101

def respond_to?(method_name, include_private = false)
  target.respond_to?(method_name) || super
end