redis-unique-queue 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +7 -0
  3. data/lib/redis/unique/queue.rb +11 -1
  4. metadata +3 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 181098abab429ba302f5a12778224c7ff43f0493
4
- data.tar.gz: a0b5caa4aa030dd2c72df554732dd1a38f58e1f3
3
+ metadata.gz: 1867ecea5f091c8c97a23fe2d86855af9c3eb998
4
+ data.tar.gz: 79aeb98518dab7b97b2a2d76b5eb481f3d9793d1
5
5
  SHA512:
6
- metadata.gz: 42a07228f69c9427f49961331074a56cfa21f2c7904f21e378a5447013ace30834e24cda82144293183eccf1bf86e953f41bfb719fef4aada77f41781ed58131
7
- data.tar.gz: efe3f5304aae408515bda9c2fd2dc8f47e7db41c71d56754581aca0e49bc0302e8074a47ee11a26873b4deb78d4ad56e4aef6b6fda604b33dd6ac6e8c544812c
6
+ metadata.gz: 5a63803810044b9b22277f76078eebff08b45e7b63c60ef9ea2c9c47e1ca83485ad8db9354747b66e45b1a10cc5cb68891852ce0fbc3cc683c1c01a4fbf8f4d0
7
+ data.tar.gz: 876038229a35f59e35ea46ea1d805e1699fd0d2d6b8b14d7e157025e71659de8130b51242e27af0a552ed6c1daa2b96cdbcf971dc4c9f0a767c1117d5937d9a1
data/README.md CHANGED
@@ -84,6 +84,13 @@ You can read the first item in the queue.
84
84
  q.front
85
85
  ```
86
86
 
87
+ You can read the last item in the queue.
88
+
89
+ ```ruby
90
+ q.back
91
+ ```
92
+
93
+
87
94
  You can see if an item exists in the queue.
88
95
 
89
96
  ```ruby
@@ -5,14 +5,20 @@ class Redis
5
5
  class Queue
6
6
  attr_reader :name
7
7
 
8
- VERSION = "1.0.0"
8
+ VERSION = "1.0.1"
9
+
10
+ class InvalidNameException < StandardError; end;
11
+ class InvalidRedisConfigException < StandardError; end;
9
12
 
10
13
  def initialize(name, redis_or_options = {})
14
+ raise InvalidNameException.new unless name.kind_of?(String) && name.size > 0
11
15
  @name = name
12
16
  @redis = if redis_or_options.kind_of? Redis
13
17
  redis_or_options
14
18
  elsif redis_or_options.kind_of? Hash
15
19
  Redis.new redis_or_options
20
+ else
21
+ raise InvalidRedisConfigException.new
16
22
  end
17
23
  end
18
24
 
@@ -51,6 +57,10 @@ class Redis
51
57
  @redis.zrange(name, 0, 0).first
52
58
  end
53
59
 
60
+ def back
61
+ @redis.zrevrange(name, 0, 0).first
62
+ end
63
+
54
64
  def remove data
55
65
  @redis.zrem name, data
56
66
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redis-unique-queue
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Misha Conway
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-06 00:00:00.000000000 Z
11
+ date: 2017-01-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -86,9 +86,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
86
86
  version: '0'
87
87
  requirements: []
88
88
  rubyforge_project:
89
- rubygems_version: 2.4.5
89
+ rubygems_version: 2.6.7
90
90
  signing_key:
91
91
  specification_version: 4
92
92
  summary: A unique queue with atomic operations implemented in Redis
93
93
  test_files: []
94
- has_rdoc: