Class: CapistranoMulticonfigParallel::InputStream
- Inherits:
-
Object
- Object
- CapistranoMulticonfigParallel::InputStream
show all
- Defined in:
- lib/capistrano_multiconfig_parallel/extensions/input_stream.rb
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(real_stdin, actor, stringio) ⇒ InputStream
14
15
16
17
18
|
# File 'lib/capistrano_multiconfig_parallel/extensions/input_stream.rb', line 14
def initialize(real_stdin, actor, stringio)
self.real = real_stdin
self.actor = actor
self.stringio = stringio
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(name, *args, &block) ⇒ Object
30
31
32
|
# File 'lib/capistrano_multiconfig_parallel/extensions/input_stream.rb', line 30
def method_missing(name, *args, &block)
@real.send name, *args, &block
end
|
Instance Attribute Details
#actor ⇒ Object
Returns the value of attribute actor.
12
13
14
|
# File 'lib/capistrano_multiconfig_parallel/extensions/input_stream.rb', line 12
def actor
@actor
end
|
#real ⇒ Object
Returns the value of attribute real.
12
13
14
|
# File 'lib/capistrano_multiconfig_parallel/extensions/input_stream.rb', line 12
def real
@real
end
|
#stringio ⇒ Object
Returns the value of attribute stringio.
12
13
14
|
# File 'lib/capistrano_multiconfig_parallel/extensions/input_stream.rb', line 12
def stringio
@stringio
end
|
Class Method Details
.hook(actor, stringio) ⇒ Object
3
4
5
|
# File 'lib/capistrano_multiconfig_parallel/extensions/input_stream.rb', line 3
def self.hook(actor, stringio)
$stdin = new($stdin, actor, stringio)
end
|
.unhook ⇒ Object
7
8
9
10
|
# File 'lib/capistrano_multiconfig_parallel/extensions/input_stream.rb', line 7
def self.unhook
$stdin.finish if $stdin.is_a? CapistranoMulticonfigParallel::InputStream
$stdin = STDIN
end
|
Instance Method Details
#finish ⇒ Object
26
27
28
|
# File 'lib/capistrano_multiconfig_parallel/extensions/input_stream.rb', line 26
def finish
end
|
#gets(*args) ⇒ Object
20
21
22
23
24
|
# File 'lib/capistrano_multiconfig_parallel/extensions/input_stream.rb', line 20
def gets(*args)
@stringio.rewind
data = @stringio.read
@actor.user_prompt_needed?(data)
end
|