struct Movie::Cluster::ProtocolMessage

Included Modules

Defined in:

movie/cluster/protocol.cr

Constructors

Instance Method Summary

Constructor Detail

def self.down_request(cluster_name : String, sender : UniqueAddress, target : UniqueAddress) : self #

[View source]
def self.gossip(cluster_name : String, sender : UniqueAddress, members : Array(Member), round : Int64, digest : String) : self #

[View source]
def self.gossip_ack(cluster_name : String, sender : UniqueAddress, round : Int64, digest : String) : self #

[View source]
def self.gossip_tick(cluster_name : String, sender : UniqueAddress) : self #

[View source]
def self.heartbeat(cluster_name : String, sender : UniqueAddress, sequence : Int64) : self #

[View source]
def self.heartbeat_ack(cluster_name : String, sender : UniqueAddress, sequence : Int64) : self #

[View source]
def self.heartbeat_tick(cluster_name : String, sender : UniqueAddress) : self #

[View source]
def self.join(cluster_name : String, sender : UniqueAddress, member : Member) : self #

[View source]
def self.join_rejected(cluster_name : String, sender : UniqueAddress, reason : String) : self #

[View source]
def self.join_tick(cluster_name : String, sender : UniqueAddress) : self #

[View source]
def self.leave_request(cluster_name : String, sender : UniqueAddress) : self #

[View source]
def self.new(kind : Kind, cluster_name : String, sender : UniqueAddress, member : Member | Nil = nil, members : Array(Member) = [] of Member, gossip_round : Int64 | Nil = nil, heartbeat_sequence : Int64 | Nil = nil, digest : String | Nil = nil, target : UniqueAddress | Nil = nil, protocol_version : Int32 = 1, minimum_protocol_version : Int32 = 1, app_version : String = "0.1.0", rejection_reason : String | Nil = nil) #

[View source]
def self.new(pull : JSON::PullParser) #

[View source]
def self.new(*, __pull_for_json_serializable pull : JSON::PullParser) #

[View source]
def self.welcome(cluster_name : String, sender : UniqueAddress, members : Array(Member)) : self #

[View source]

Instance Method Detail

def app_version : String #

[View source]
def cluster_name : String #

[View source]
def digest : String | Nil #

[View source]
def gossip_round : Int64 | Nil #

[View source]
def heartbeat_sequence : Int64 | Nil #

[View source]
def kind : Kind #

[View source]
def member : Member | Nil #

[View source]
def members : Array(Member) #

[View source]
def minimum_protocol_version : Int32 #

[View source]
def protocol_version : Int32 #

[View source]
def rejection_reason : String | Nil #

[View source]
def sender : UniqueAddress #

[View source]
def target : UniqueAddress | Nil #

[View source]
def with_compatibility(protocol_version : Int32, minimum_protocol_version : Int32, app_version : String) : self #

[View source]