Sha256: a300b75eea66c04db6970382982b3c0a301f6f3c013298d15edca19c1858c5b3

Contents?: true

Size: 673 Bytes

Versions: 4

Compression:

Stored size: 673 Bytes

Contents

# encoding: UTF-8

module Vines
  class Stream
    class Server
      class Ready < State
        def node(node)
          stanza = to_stanza(node)
          raise StreamErrors::UnsupportedStanzaType unless stanza
          to, from = %w[to from].map {|attr| JID.new(stanza[attr] || '') }
          raise StreamErrors::ImproperAddressing if [to, from].any? {|addr| (addr.domain || '').strip.empty? }
          raise StreamErrors::InvalidFrom unless from.domain == stream.remote_domain
          raise StreamErrors::HostUnknown unless to.domain == stream.domain
          stream.user = User.new(:jid => from)
          stanza.process
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
vines-0.2.1 lib/vines/stream/server/ready.rb
vines-0.2.0 lib/vines/stream/server/ready.rb
vines-0.1.1 lib/vines/stream/server/ready.rb
vines-0.1.0 lib/vines/stream/server/ready.rb