jruby-bloomfilter 1.0.2 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -1,5 +1,5 @@
1
1
  source :rubygems
2
2
 
3
- gem 'jets3t-rb', :git => 'git://github.com/gaiottino/jets3t-rb.git'
3
+ gem 'jets3t-rb'
4
4
  gem 'rspec'
5
5
 
data/Gemfile.lock CHANGED
@@ -1,13 +1,8 @@
1
- GIT
2
- remote: git://github.com/gaiottino/jets3t-rb.git
3
- revision: f7c77fa1d393bb3ebaf42d4d871071d3e9652328
4
- specs:
5
- jets3t-rb (1.0.0)
6
-
7
1
  GEM
8
2
  remote: http://rubygems.org/
9
3
  specs:
10
4
  diff-lcs (1.1.2)
5
+ jets3t-rb (1.0.1)
11
6
  rspec (2.5.0)
12
7
  rspec-core (~> 2.5.0)
13
8
  rspec-expectations (~> 2.5.0)
@@ -19,7 +14,8 @@ GEM
19
14
 
20
15
  PLATFORMS
21
16
  java
17
+ ruby
22
18
 
23
19
  DEPENDENCIES
24
- jets3t-rb!
20
+ jets3t-rb
25
21
  rspec
data/bloomfilter.gemspec CHANGED
@@ -6,7 +6,7 @@ Dir['ext/*.jar'].each { |jar| require jar }
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = 'jruby-bloomfilter'
9
- s.version = '1.0.2'
9
+ s.version = '1.0.4'
10
10
  s.platform = Gem::Platform::RUBY
11
11
  s.authors = ['Daniel Gaiottino']
12
12
  s.email = ['daniel@burtcorp.com']
@@ -15,7 +15,7 @@ Gem::Specification.new do |s|
15
15
  s.description = %q{JRuby wrapper (+ some extra functionality) to http://code.google.com/p/java-bloomfilter}
16
16
 
17
17
  s.rubyforge_project = 'jruby-bloomfilter'
18
- s.add_dependency 'jets3t-rb', '~> 1.0.0'
18
+ s.add_dependency 'jets3t-rb'
19
19
 
20
20
  s.files = `git ls-files`.split("\n")
21
21
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
data/lib/bloomfilter.rb CHANGED
@@ -6,6 +6,7 @@ require 'ext/java-bloomfilter-0.9.3'
6
6
  require_relative 'bloomfilter/serializer'
7
7
 
8
8
  module Jar
9
+ import java.util.concurrent.locks.ReentrantLock
9
10
  import com.skjegstad.utils.BloomFilter
10
11
  end
11
12
 
@@ -17,25 +18,35 @@ module Bloomfilter
17
18
  elsif options[:filter]
18
19
  @filter = options[:filter]
19
20
  end
21
+
22
+ @lock = Jar::ReentrantLock.new
20
23
  end
21
24
 
22
25
  def << (k)
26
+ lock
23
27
  @filter.add(k)
28
+ ensure
29
+ unlock
24
30
  end
25
31
 
26
- def add_if_absent(k)
27
- @filter.synchronized do
28
- @filter.add(k) unless @filter.contains(k)
29
- end
30
- end
31
-
32
32
  def include?(k)
33
+ lock
33
34
  @filter.contains(k)
35
+ ensure
36
+ unlock
34
37
  end
35
38
 
36
39
  def count
37
40
  @filter.count
38
41
  end
39
42
 
43
+ def lock
44
+ @lock.lock
45
+ end
46
+
47
+ def unlock
48
+ @lock.unlock
49
+ end
50
+
40
51
  end
41
52
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: jruby-bloomfilter
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 1.0.2
5
+ version: 1.0.4
6
6
  platform: ruby
7
7
  authors:
8
8
  - Daniel Gaiottino
@@ -18,9 +18,9 @@ dependencies:
18
18
  requirement: &id001 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
- - - ~>
21
+ - - ">="
22
22
  - !ruby/object:Gem::Version
23
- version: 1.0.0
23
+ version: "0"
24
24
  type: :runtime
25
25
  version_requirements: *id001
26
26
  description: JRuby wrapper (+ some extra functionality) to http://code.google.com/p/java-bloomfilter