lock_and_cache 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4f956903ed9cadae938803806da303032e5770a3
4
- data.tar.gz: bcb67b572971fbc37311f14d998c3b97b29d3317
3
+ metadata.gz: 93e7bac8ff5246d258e7d92fcb0b7f6af1b85054
4
+ data.tar.gz: 642a47eef9d3eb08acbcaba89f7286ecd9f98c61
5
5
  SHA512:
6
- metadata.gz: 5f3788ca8c067748e1dd8f3e75fca7d5ba0d669c09eea78a703fdf4cb6314be2d0f30e40d9898a765678f683b935956d9072fe2f8478a3b59dbf6c00abef8c9e
7
- data.tar.gz: 54b68c613423afc0b56e7d17a98091c10ebd18b5614aa462489b14e4f573cc6abdf2fcd65aa8f5349b39b91ba6eb8f0d64ca91611f2f33e8c5b462dde5cd65bc
6
+ metadata.gz: 78177a3803b36f89eca2f9f8972f00caf186b0da784954249aaab8df2f2ef76d8d60ad8563e3bb32128ed8b6d67b1eeebd1e44f4e922bd1657dc8b7e80c86440
7
+ data.tar.gz: 15643bb1fb0225c948af1967bc769725788c4c869554f3d6cfbc3fc2a1295976f0f06d1fad6e1f551bd70a8b1328146b8962767efd1c401beb730421527bb24b
data/CHANGELOG CHANGED
@@ -1,3 +1,9 @@
1
+ 0.0.3 / 2014-12-12
2
+
3
+ * Enhancements
4
+
5
+ * Save a trip to the database if something is already cached
6
+
1
7
  0.0.2 / 2014-12-11
2
8
 
3
9
  * Bug fixes
@@ -13,6 +13,9 @@ module LockAndCache
13
13
 
14
14
  define_method method_id do |*args|
15
15
  lock_key = [self.class.name, method_id, HashDigest.digest3([as_cache_key]+args)].join('/')
16
+ if cache_method_cached?(method_id, args)
17
+ return send(method_id, *args) # which will be the cached version
18
+ end
16
19
  ActiveRecord::Base.with_advisory_lock(lock_key) do
17
20
  if cache_method_cached?(method_id, args)
18
21
  send method_id, *args # which will be the cached version
@@ -1,3 +1,3 @@
1
1
  module LockAndCache
2
- VERSION = "0.0.2"
2
+ VERSION = '0.0.3'
3
3
  end
@@ -1,6 +1,5 @@
1
1
  $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
2
  require 'lock_and_cache'
3
- require 'thread/pool'
4
3
 
5
4
  ActiveRecord::Base.establish_connection adapter: 'postgresql', database: 'lock_and_cache_test'
6
5
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lock_and_cache
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Seamus Abshere
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-11 00:00:00.000000000 Z
11
+ date: 2014-12-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord