web 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -3,16 +3,18 @@ module Web
3
3
  class MemoryCache
4
4
 
5
5
  def initialize
6
+ @expirations = {}
6
7
  @hash = {}
7
8
  end
8
9
 
9
10
  def get(key)
10
- @hash[key]
11
+ expires = @expirations[key]
12
+ @hash[key] if expires.nil? || Time.now < expires
11
13
  end
12
14
 
13
15
  def set(key, value, expires = nil)
14
- raise 'MemoryCache does not support key expiration' if expires
15
16
  @hash[key] = value
17
+ @expirations[key] = Time.now + expires if expires
16
18
  end
17
19
 
18
20
  end
data/lib/web/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Web
2
2
 
3
- VERSION = '0.0.2'
3
+ VERSION = '0.0.3'
4
4
 
5
5
  end
data/spec/spec_helper.rb CHANGED
@@ -1 +1,3 @@
1
1
  require File.dirname(__FILE__) + '/../lib/web'
2
+
3
+ REQUEST_URL = URI.parse 'http://google.com'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: web
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -14,7 +14,7 @@ default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rspec
17
- requirement: &2162217700 !ruby/object:Gem::Requirement
17
+ requirement: &2153441020 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,7 +22,7 @@ dependencies:
22
22
  version: '0'
23
23
  type: :development
24
24
  prerelease: false
25
- version_requirements: *2162217700
25
+ version_requirements: *2153441020
26
26
  description: web is a library for caching HTTP responses
27
27
  email: john.crepezzi@gmail.com
28
28
  executables: []