Class: Filter

Inherits:
Object
  • Object
show all
Defined in:
lib/localio/filter.rb

Class Method Summary collapse

Class Method Details

.apply_filter(segments, only, except) ⇒ Object



2
3
4
5
6
7
8
# File 'lib/localio/filter.rb', line 2

def self.apply_filter(segments, only, except)

  segments = only segments, only[:keys] unless only.nil?
  segments = except segments, except[:keys] unless except.nil?

  segments
end

.except(segments, keys_filter) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/localio/filter.rb', line 28

def self.except segments, keys_filter
  filtered_segments = []
  segments.each do |segment|
    is_okay = true
    unless keys_filter.nil?
      result = /#{keys_filter}/ =~ segment.keyword
      is_okay = false unless result.nil?
    end

    filtered_segments << segment if is_okay
  end

  filtered_segments
end

.only(segments, keys_filter) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/localio/filter.rb', line 12

def self.only segments, keys_filter

  filtered_segments = []
  segments.each do |segment|
    is_okay = true
    unless keys_filter.nil?
      result = /#{keys_filter}/ =~ segment.keyword
      is_okay = false if result.nil?
    end

    filtered_segments << segment if is_okay
  end

  filtered_segments
end