Class: Adhearsion::Asterisk::CallControllerMethods::GenerateSilenceProxy
- Inherits:
-
Object
- Object
- Adhearsion::Asterisk::CallControllerMethods::GenerateSilenceProxy
show all
- Defined in:
- lib/adhearsion/asterisk/call_controller_methods.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
Returns a new instance of GenerateSilenceProxy.
427
428
429
|
# File 'lib/adhearsion/asterisk/call_controller_methods.rb', line 427
def initialize(target)
@_target = target
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(*args) ⇒ Object
431
432
433
434
435
|
# File 'lib/adhearsion/asterisk/call_controller_methods.rb', line 431
def method_missing(*args)
@_target.send(*args).tap do
@_target.generate_silence
end
end
|
Class Method Details
.proxy_for(target, &block) ⇒ Object
416
417
418
419
420
421
422
423
424
425
|
# File 'lib/adhearsion/asterisk/call_controller_methods.rb', line 416
def self.proxy_for(target, &block)
proxy = new(target)
ivs = target.instance_variables
ivs.each { |iv| proxy.instance_variable_set iv, target.instance_variable_get(iv) }
proxy.instance_eval(&block).tap do
ivs = proxy.instance_variables - [:@_target]
ivs.each { |iv| target.instance_variable_set iv, proxy.instance_variable_get(iv) }
end
end
|
Instance Method Details
#respond_to_missing?(*args) ⇒ Boolean
437
438
439
|
# File 'lib/adhearsion/asterisk/call_controller_methods.rb', line 437
def respond_to_missing?(*args)
@_target.respond_to?(*args)
end
|