Class: Lifter::Payloads::MultipartPayload

Inherits:
Object
  • Object
show all
Defined in:
lib/lifter/payloads/multipart_payload.rb

Defined Under Namespace

Classes: CurrentPart

Instance Method Summary collapse

Constructor Details

#initialize(connection, file_manager, multipart_boundary) ⇒ MultipartPayload

Returns a new instance of MultipartPayload.



6
7
8
9
10
11
12
13
14
15
16
# File 'lib/lifter/payloads/multipart_payload.rb', line 6

def initialize(connection, file_manager, multipart_boundary)
  @connection = connection
  @file_manager = file_manager
  @reader = MultipartParser::Reader.new(multipart_boundary)

  @current_part = nil

  @params = {}

  setup_callbacks
end

Instance Method Details

#<<(data) ⇒ Object



18
19
20
# File 'lib/lifter/payloads/multipart_payload.rb', line 18

def <<(data)
  @reader.write(data)
end

#cancelObject



22
23
24
25
26
27
28
29
30
# File 'lib/lifter/payloads/multipart_payload.rb', line 22

def cancel
  return if !current_part?

  if current_part.type == :file
    @file_manager.cancel_file(@current_part.id)
  end

  @current_part = nil
end

#current_part?Boolean

Returns:

  • (Boolean)


32
33
34
# File 'lib/lifter/payloads/multipart_payload.rb', line 32

def current_part?
  !@current_part.nil?
end