Sha256: ae7de56f1c05be0a553fa8d573ffae1fce9cb8200a83e2bf2a0e7c4158fe126f

Contents?: true

Size: 950 Bytes

Versions: 11

Compression:

Stored size: 950 Bytes

Contents

require 'representable/json'
require 'ostruct'

module Consul
  module Model

    # Consul Member representation
    #
    # Reference: https://www.consul.io/docs/commands/members.html
    #
    class Member < OpenStruct
      module Representer
        include Representable::JSON
        include Representable::Hash
        include Representable::Hash::AllowSymbols

        property :name, as: :Name
        property :addr, as: :Addr
        property :port, as: :Port
        # TODO Ensure we map tags into a ruby hash and back
        property :tags, as: :Tags
        property :status, as: :Status
        property :protocol_min, as: :ProtocolMin
        property :protocol_max, as: :ProtocolMax
        property :protocol_cur, as: :ProtocolCur
        property :delegate_min, as: :DelegateMin
        property :delegate_max, as: :DelegateMax
        property :delegate_cur, as: :DelegateCur
      end
      extend Representer
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
consul-ruby-client-0.0.13 lib/consul/model/member.rb
consul-ruby-client-0.0.12 lib/consul/model/member.rb
consul-ruby-client-0.0.11 lib/consul/model/member.rb
consul-ruby-client-0.0.10 lib/consul/model/member.rb
consul-ruby-client-0.0.9 lib/consul/model/member.rb
consul-ruby-client-0.0.8 lib/consul/model/member.rb
consul-ruby-client-0.0.7 lib/consul/model/member.rb
consul-ruby-client-0.0.6 lib/consul/model/member.rb
consul-ruby-client-0.0.5 lib/consul/model/member.rb
consul-ruby-client-0.0.4 lib/consul/model/member.rb
consul-ruby-client-0.0.3 lib/consul/model/member.rb