flapjack 0.6.47 → 0.6.48

Sign up to get free protection for your applications and to get access to all the features.
@@ -9,7 +9,9 @@ module Flapjack
9
9
 
10
10
  class Entity
11
11
 
12
- attr_accessor :name, :id, :tags
12
+ attr_accessor :name, :id
13
+
14
+ TAG_PREFIX = 'entity_tag'
13
15
 
14
16
  def self.all(options = {})
15
17
  raise "Redis connection not set" unless redis = options[:redis]
@@ -107,18 +109,22 @@ module Flapjack
107
109
  checks.length
108
110
  end
109
111
 
112
+ def tags
113
+ @tags ||= load_tags
114
+ end
115
+
110
116
  def add_tags(*enum)
111
117
  enum.each do |t|
112
- Flapjack::Data::Tag.create("#{@tag_prefix}:#{t}", [@id], :redis => @redis)
113
- @tags.add(t)
118
+ Flapjack::Data::Tag.create("#{TAG_PREFIX}:#{t}", [@id], :redis => @redis)
119
+ tags.add(t)
114
120
  end
115
121
  end
116
122
 
117
123
  def delete_tags(*enum)
118
124
  enum.each do |t|
119
- tag = Flapjack::Data::Tag.find("#{@tag_prefix}:#{t}", :redis => @redis)
125
+ tag = Flapjack::Data::Tag.find("#{TAG_PREFIX}:#{t}", :redis => @redis)
120
126
  tag.delete(@id)
121
- @tags.delete(t)
127
+ tags.delete(t)
122
128
  end
123
129
  end
124
130
 
@@ -131,16 +137,16 @@ module Flapjack
131
137
  raise "Entity name not set" unless @name = options[:name]
132
138
  @id = options[:id]
133
139
  @logger = options[:logger]
140
+ end
134
141
 
135
- @tag_prefix = 'entity_tag'
136
- @tags = ::Set.new
137
- tag_data = @redis.keys("#{@tag_prefix}:*").inject([]) do |memo, entity_tag|
142
+ def load_tags
143
+ entity_tags = ::Set.new
144
+ tag_data = @redis.keys("#{TAG_PREFIX}:*").inject([]) do |memo, entity_tag|
138
145
  tag = Flapjack::Data::Tag.find(entity_tag, :redis => @redis)
139
- memo << entity_tag.sub(%r(^#{@tag_prefix}:), '') if tag.include?(@id.to_s)
146
+ memo << entity_tag.sub(/^#{TAG_PREFIX}:/, '') if tag.include?(@id.to_s)
140
147
  memo
141
148
  end
142
- @tags.merge(tag_data)
143
-
149
+ entity_tags.merge(tag_data)
144
150
  end
145
151
 
146
152
  end
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  module Flapjack
4
- VERSION = "0.6.47"
4
+ VERSION = "0.6.48"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flapjack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.47
4
+ version: 0.6.48
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2012-11-21 00:00:00.000000000 Z
14
+ date: 2012-11-23 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: daemons