Class: IssueCollection

Inherits:
Array
  • Object
show all
Defined in:
lib/jirametrics/issue_collection.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeIssueCollection

Returns a new instance of IssueCollection.



12
13
14
15
# File 'lib/jirametrics/issue_collection.rb', line 12

def initialize
  super
  @hidden = []
end

Instance Attribute Details

#hiddenObject (readonly)

Returns the value of attribute hidden.



4
5
6
# File 'lib/jirametrics/issue_collection.rb', line 4

def hidden
  @hidden
end

Class Method Details

.[](*issues) ⇒ Object



6
7
8
9
10
# File 'lib/jirametrics/issue_collection.rb', line 6

def self.[] *issues
  collection = new
  issues.each { |i| collection << i }
  collection
end

Instance Method Details

#cloneObject



30
31
32
# File 'lib/jirametrics/issue_collection.rb', line 30

def clone
  raise 'baboom'
end

#find_by_key(key:, include_hidden: false) ⇒ Object



24
25
26
27
28
29
# File 'lib/jirametrics/issue_collection.rb', line 24

def find_by_key key:, include_hidden: false
  block = ->(issue) { issue.key == key }
  issue = find(&block)
  issue = hidden.find(&block) if issue.nil? && include_hidden
  issue
end

#reject!(&block) ⇒ Object



17
18
19
20
21
22
# File 'lib/jirametrics/issue_collection.rb', line 17

def reject! &block
  select(&block).each do |issue|
    @hidden << issue
  end
  super
end