Class: AMF::Serializer

Inherits:
Object
  • Object
show all
Defined in:
lib/amf/serializer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(headers, messages, amfVersion) ⇒ Serializer

Returns a new instance of Serializer.



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/amf/serializer.rb', line 6

def initialize( headers, messages, amfVersion )
  @headers      = headers
  @messages     = messages
  @amfVersion   = amfVersion
  @data         = String.new

  writeInt 0 # start if off right

  # start writing the headers
  writeInt @headers.count
  @headers.each do |header|
    resetReferences
    writeUTF header.target
    if header.required == true
      writeByte 1
    else
      writeByte 0
    end
    tmpdata = @data
    @data = String.new
    writeData header.data
    serializedHeader = @data
    @data = tmpdata
    writeLong serializedHeader.length
    @data += serializedHeader
  end

  # and write the data
  writeInt @messages.count
  @messages.each do |message|
    resetReferences
    writeUTF message.targetURL
    writeUTF message.responseURL
    tmpdata = @data
    @data = String.new
    writeData message.data
    serializedMessage = @data
    @data = tmpdata
    writeLong serializedMessage.length
    @data += serializedMessage
  end
end

Instance Attribute Details

#dataObject

Returns the value of attribute data.



4
5
6
# File 'lib/amf/serializer.rb', line 4

def data
  @data
end