flapjack 0.6.47 → 0.6.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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