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.



690
691
692
693
# File 'lib/fluent/plugin/out_groonga.rb', line 690

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

Instance Method Details

#configure(conf) ⇒ Object



695
696
697
# File 'lib/fluent/plugin/out_groonga.rb', line 695

def configure(conf)
  super
end

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



711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
# File 'lib/fluent/plugin/out_groonga.rb', line 711

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



703
704
705
706
707
708
709
# File 'lib/fluent/plugin/out_groonga.rb', line 703

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

#startObject



699
700
701
# File 'lib/fluent/plugin/out_groonga.rb', line 699

def start
  run_groonga
end