chirrin-chirrion 0.3.0 → 0.4.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e341870aee82b251ead9343bba2d1a9d7acca8fc
4
- data.tar.gz: 77fdcf0f6399842edf51b107742874d83e6bd4d0
3
+ metadata.gz: a7d615771a5015ef6935e40c7773efb0a64ded89
4
+ data.tar.gz: 4a2da52cf6a8bf8c5410e46aebca5efa43549360
5
5
  SHA512:
6
- metadata.gz: 69cc095c4f65d6195b523ec0643eafa4e692637fab6d3d7cdcff67f31ce1aac29d6ca8562226a3bb15fd1e533cae6f3f1eb86f846812761ce7e524eae1a38cc2
7
- data.tar.gz: 098f863e10d232b3d28e2a8cb6ffc849abb0971bc5b6e0d9a494fd2a16e21cf68e7d8898c6a8842167a8e9550cee547ae269a3e52f849681c26594f03ca2ada2
6
+ metadata.gz: 51b04eb5d49060f5ef61d45ea8215574b4ce22cf90c8efbfef7e43318a3823c4a69096ae80e657f119362d971449e7768e476d1c0d22f60deeaf1109d48da9f4
7
+ data.tar.gz: 56d633b46d57958df34f487626a2c9c589c75fe7cc859a34b8714a289f88f070b2cba4b84fcb4cf535f304bcf401bc8d3870a2671bb265bd37bcf0657ca21545
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  # Change Log
2
2
  All notable changes of the project you will find here.
3
3
 
4
+ ## [0.4.0] - 2015-06-19
5
+ ### Changed
6
+ - Redis adaprer: new method #list which returns all registered toggles
7
+ - ChirrinChirrion: new method #list which returns all registered toggles
8
+
4
9
  ## [0.3.0] - 2015-06-08
5
10
  ### Changed
6
11
  - Redis adaprer: methods #activate and #inactivate with beng because they raise exception
@@ -97,5 +97,14 @@ module ChirrinChirrion
97
97
  end
98
98
  end
99
99
 
100
+ # Returns a list of registered toggles
101
+ # The objects of the list respond to the following basic methods:
102
+ # - name
103
+ # - active
104
+ # - description
105
+ def self.list
106
+ database_adapter.list
107
+ end
108
+
100
109
  private_class_method :database_adapter
101
110
  end
@@ -1,3 +1,5 @@
1
+ require 'ostruct'
2
+
1
3
  module ChirrinChirrion
2
4
  module DatabaseAdapters
3
5
  class RedisAdapter
@@ -62,9 +64,8 @@ module ChirrinChirrion
62
64
  end
63
65
 
64
66
  def active?(toggle_name)
65
- toggle_info = redis_database.hget(TOGGLES_HASH_KEY, toggle_name)
67
+ toggle_info = get_toggle_info(toggle_name)
66
68
  return false unless toggle_info
67
- toggle_info = JSON.parse(toggle_info)
68
69
 
69
70
  toggle_info['active'].eql?(true)
70
71
  end
@@ -73,6 +74,16 @@ module ChirrinChirrion
73
74
  !active?(toggle_name)
74
75
  end
75
76
 
77
+ def list
78
+ toggles = redis_database.hgetall(TOGGLES_HASH_KEY)
79
+
80
+ toggles.map do |toggle_name, toggle_info|
81
+ toggle_details = JSON.parse(toggle_info).merge('name' => toggle_name)
82
+
83
+ OpenStruct.new(toggle_details)
84
+ end
85
+ end
86
+
76
87
  private
77
88
 
78
89
  def get_toggle_info(toggle_name)
@@ -1,3 +1,3 @@
1
1
  module ChirrinChirrion
2
- VERSION = "0.3.0"
2
+ VERSION = "0.4.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chirrin-chirrion
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bruno Vicenzo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-06-08 00:00:00.000000000 Z
11
+ date: 2015-06-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler