Class: Fluent::Plugin::GroongaOutput::CommandClient

Inherits:
BaseClient
  • Object
show all
Includes:
Configurable
Defined in:
lib/fluent/plugin/out_groonga.rb

Instance Method Summary collapse

Constructor Details

#initialize(output_plugin) ⇒ CommandClient

Returns a new instance of CommandClient.



672
673
674
675
# File 'lib/fluent/plugin/out_groonga.rb', line 672

def initialize(output_plugin)
  super()
  @output_plugin = output_plugin
end

Instance Method Details

#configure(conf) ⇒ Object



677
678
679
# File 'lib/fluent/plugin/out_groonga.rb', line 677

def configure(conf)
  super
end

#execute(name, arguments = {}) ⇒ Object



693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
# File 'lib/fluent/plugin/out_groonga.rb', line 693

def execute(name, arguments={})
  command = build_command(name, arguments)
  body = nil
  if command.name == "load"
    body = command.arguments.delete(:values)
  end
  uri = command.to_uri_format
  @input.write("#{uri}\n")
  if body
    body.each_line do |line|
      @input.write("#{line}\n")
    end
  end
  @input.flush
  read_output(uri)
end

#shutdownObject



685
686
687
688
689
690
691
# File 'lib/fluent/plugin/out_groonga.rb', line 685

def shutdown
  @input.close
  read_output("shutdown")
  @output.close
  @error.close
  Process.waitpid(@pid)
end

#startObject



681
682
683
# File 'lib/fluent/plugin/out_groonga.rb', line 681

def start
  run_groonga
end