Class: Raft::Goliath::HttpJsonRpcProvider
- Inherits:
-
RpcProvider
- Object
- RpcProvider
- Raft::Goliath::HttpJsonRpcProvider
- Defined in:
- lib/raft/goliath.rb
Overview
TODO: implement HttpJsonRpcProvider!
Instance Attribute Summary collapse
-
#url_generator ⇒ Object
readonly
Returns the value of attribute url_generator.
Instance Method Summary collapse
- #append_entries(request, cluster) ⇒ Object
- #append_entries_to_follower(request, node_id) ⇒ Object
- #command(request, node_id) ⇒ Object
-
#initialize(url_generator) ⇒ HttpJsonRpcProvider
constructor
A new instance of HttpJsonRpcProvider.
- #request_votes(request, cluster) ⇒ Object
Constructor Details
#initialize(url_generator) ⇒ HttpJsonRpcProvider
Returns a new instance of HttpJsonRpcProvider.
74 75 76 |
# File 'lib/raft/goliath.rb', line 74 def initialize(url_generator) @url_generator = url_generator end |
Instance Attribute Details
#url_generator ⇒ Object (readonly)
Returns the value of attribute url_generator.
72 73 74 |
# File 'lib/raft/goliath.rb', line 72 def url_generator @url_generator end |
Instance Method Details
#append_entries(request, cluster) ⇒ Object
85 86 87 |
# File 'lib/raft/goliath.rb', line 85 def append_entries(request, cluster) raise "Your RpcProvider subclass must implement #append_entries" end |
#append_entries_to_follower(request, node_id) ⇒ Object
89 90 91 |
# File 'lib/raft/goliath.rb', line 89 def append_entries_to_follower(request, node_id) raise "Your RpcProvider subclass must implement #append_entries_to_follower" end |
#command(request, node_id) ⇒ Object
93 94 95 |
# File 'lib/raft/goliath.rb', line 93 def command(request, node_id) raise "Your RpcProvider subclass must implement #command" end |
#request_votes(request, cluster) ⇒ Object
78 79 80 81 82 83 |
# File 'lib/raft/goliath.rb', line 78 def request_votes(request, cluster) #multi = EventMachine::Synchrony::Multi.new #cluster.node_ids.each do |node_id| # multi.add node_id, EventMachine::HttpRequest.new(url_generator.call(node_id)).apost #end end |