sqs_buffer 0.1.1 → 0.2.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: 8b9961581faf8eb894494102e97386d9372648aa
4
- data.tar.gz: 0d2a9073874435274364f708b1723a916bc7f71f
3
+ metadata.gz: 09d48b0da6a9ebcacc7b66e622ad2db4f7805875
4
+ data.tar.gz: 477816130ce533730e0df9b9d4e8aa1946447613
5
5
  SHA512:
6
- metadata.gz: 3cfcdeab97b46d2c93a51a4d67570e200aaf77de19284b355221012c4a16dd5b7feb944587094f1c5a3a16af02bba5d028fc7fdb347f8dd7bfc9d99ff4287e72
7
- data.tar.gz: fccd1a060a5612614615598fbd981b539918a7ed4a30f8ecccb054d6139c392b5215e85d2a57ba48e1216f3a1b64364367308af27fb730af8c8ab6df18d6ec38
6
+ metadata.gz: fd7049feb27c902bb9aad53a583d08f10069e802f0953c03b499bcde42f46e3665d54206148a4e997427e916ad6515b3586ba7d2d2719bf64d949287c986272f
7
+ data.tar.gz: 420d61b1b9cd827b9d27918ba8cd7d763324f7e70f7b182efa8e789a91b03958484c08604ab8cd745853627fb4ca583710c97572e4a3685555644b4d43ff8be2
@@ -51,18 +51,23 @@ module SqsBuffer
51
51
  @running.make_false
52
52
  end
53
53
 
54
- def queue_full?
54
+ def buffer_full?
55
55
  @message_queue.length >= @max_queue_threshold.value
56
56
  end
57
57
 
58
- def queue_empty?
58
+ def buffer_empty?
59
59
  @message_queue.empty?
60
60
  end
61
61
 
62
- def queue_length
62
+ def buffer_length
63
63
  @message_queue.length
64
64
  end
65
65
 
66
+ def buffer
67
+ # Return a copy of the array events to guard against potential mutation
68
+ Marshal.load( Marshal.dump(@message_queue) )
69
+ end
70
+
66
71
  def shutting_down?
67
72
  @running.false? && worker_thread_alive?
68
73
  end
@@ -80,10 +85,7 @@ module SqsBuffer
80
85
  end
81
86
 
82
87
  def process_all_messages
83
- # This will be a collection of SQS messages
84
- # I am pretty sure this exposes the @message_queue to mutability
85
- # Maybe I should deep dup this?
86
- @process_block.value.call(@message_queue)
88
+ @process_block.value.call(buffer)
87
89
  delete_all_messages
88
90
  touch_process_time
89
91
  rescue StandardError => e
@@ -1,3 +1,3 @@
1
1
  module SqsBuffer
2
- VERSION = "0.1.1"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sqs_buffer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Thomas
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-01-26 00:00:00.000000000 Z
11
+ date: 2016-01-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement