Class: Bundler::Alive::StatusResult

Inherits:
Object
  • Object
show all
Defined in:
lib/bundler/alive/status_result.rb

Overview

Represents Result of Status

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(collection: StatusCollection.new, error_messages: [], rate_limit_exceeded: false) ⇒ StatusResult

Creates a new StatusResult instance

Parameters:

  • :collection (StatusCollection|nil)
  • :error_messages (Array|nil)
  • :rate_limit_exceeded (Boolean|nil)


20
21
22
23
24
25
26
# File 'lib/bundler/alive/status_result.rb', line 20

def initialize(collection: StatusCollection.new, error_messages: [], rate_limit_exceeded: false)
  @collection = collection
  @error_messages = error_messages
  @rate_limit_exceeded = rate_limit_exceeded

  freeze
end

Instance Attribute Details

#collectionObject (readonly)

Returns the value of attribute collection.



9
10
11
# File 'lib/bundler/alive/status_result.rb', line 9

def collection
  @collection
end

#error_messagesObject (readonly)

Returns the value of attribute error_messages.



9
10
11
# File 'lib/bundler/alive/status_result.rb', line 9

def error_messages
  @error_messages
end

#rate_limit_exceededObject (readonly)

Returns the value of attribute rate_limit_exceeded.



9
10
11
# File 'lib/bundler/alive/status_result.rb', line 9

def rate_limit_exceeded
  @rate_limit_exceeded
end

Instance Method Details

#merge(result) ⇒ StatusResult

Merge StatusResult, then returns new one

Parameters:

Returns:



35
36
37
38
39
40
41
42
# File 'lib/bundler/alive/status_result.rb', line 35

def merge(result)
  merged_collection = collection.merge(result.collection)
  merged_error_messages = error_messages + result.error_messages
  merged_rate_limit_exceeded = rate_limit_exceeded || result.rate_limit_exceeded
  self.class.new(collection: merged_collection,
                 error_messages: merged_error_messages,
                 rate_limit_exceeded: merged_rate_limit_exceeded)
end