Class: Pione::Agent::InputGenerator::StreamGeneratorMethod
- Inherits:
-
GeneratorMethod
- Object
- GeneratorMethod
- Pione::Agent::InputGenerator::StreamGeneratorMethod
- Defined in:
- lib/pione/agent/input-generator.rb
Overview
StreamGeneratorMethod handles stream inputs.
Instance Method Summary collapse
- #generate ⇒ Object
-
#init ⇒ Object
Initializes the generator.
-
#initialize(ts_server, dir_path) ⇒ StreamGeneratorMethod
constructor
A new instance of StreamGeneratorMethod.
- #stream? ⇒ Boolean private
Methods inherited from GeneratorMethod
Constructor Details
#initialize(ts_server, dir_path) ⇒ StreamGeneratorMethod
Returns a new instance of StreamGeneratorMethod.
58 59 60 61 62 63 64 |
# File 'lib/pione/agent/input-generator.rb', line 58 def initialize(ts_server, dir_path) raise TypeError.new(dir_path) unless dir_path.kind_of?(URI) or dir_path.nil? super(ts_server) @dir_path = dir_path @table = Hash.new init end |
Instance Method Details
#generate ⇒ Object
66 67 68 69 70 71 72 73 74 |
# File 'lib/pione/agent/input-generator.rb', line 66 def generate item = @gen.next if generate_new_file?(item.basename, item.mtime) @table[item.basename] = item.mtime return InputData.new(item.basename, item.uri, item.mtime) else return nil end end |
#init ⇒ Object
Initializes the generator. This method is called when root rule is requested in stream mode.
79 80 81 82 83 84 85 |
# File 'lib/pione/agent/input-generator.rb', line 79 def init if @dir_path @gen = Resource[@dir_path].entries.to_enum else @gen = [].each end end |
#stream? ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
88 89 90 |
# File 'lib/pione/agent/input-generator.rb', line 88 def stream? return true end |