Class: Riser::DRbServices

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/riser/services.rb

Instance Method Summary collapse

Constructor Details

#initialize(druby_process_num = 0, server_config: {}, client_config: {}) ⇒ DRbServices

Returns a new instance of DRbServices.



585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
# File 'lib/riser/services.rb', line 585

def initialize(druby_process_num=0, server_config: {}, client_config: {})
  @server_config = { UNIXFileMode: 0600 }.update(server_config)
  @client_config = { UNIXFileMode: 0600 }.update(client_config)
  if (druby_process_num > 0) then
    @server = DRbServiceServer.new
    @call = DRbServiceCall.new
    druby_process_num.times do
      drb_uri = Riser::TemporaryPath.make_drbunix_uri
      @server.add_druby_process(drb_uri, @server_config)
      @call.add_druby_call(drb_uri)
    end
  else
    @server, @call = LocalServiceServerClient.make_pair
  end
end

Instance Method Details

#add_any_process_service(name, front) ⇒ Object



601
602
603
604
605
# File 'lib/riser/services.rb', line 601

def add_any_process_service(name, front)
  @server.add_service(name, front)
  @call.add_any_process_service_with_type(name, front)
  nil
end

#add_single_process_service(name, front) ⇒ Object



607
608
609
610
611
# File 'lib/riser/services.rb', line 607

def add_single_process_service(name, front)
  @server.add_service(name, front)
  @call.add_single_process_service_with_type(name, front)
  nil
end

#add_sticky_process_service(name, front) ⇒ Object



613
614
615
616
617
# File 'lib/riser/services.rb', line 613

def add_sticky_process_service(name, front)
  @server.add_service(name, front)
  @call.add_sticky_process_service_with_type(name, front)
  nil
end

#start_client(*args, **kw_args) ⇒ Object



624
625
626
# File 'lib/riser/services.rb', line 624

def start_client(*args, **kw_args)
  @call.start(*args, **kw_args, config: @client_config)
end