wovnrb 0.1.39 → 0.1.40

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: 4b5e9cdc92a69314068f8137ea70ce474ea9b471
4
- data.tar.gz: 470a31b936dbd76a3a1c3a533a37591bc8dbb2d7
3
+ metadata.gz: cffb646cb8c14f99701296e7b22d0738bc4d24b3
4
+ data.tar.gz: b7267db819993721d41b82eda2c7fd801e69a2e3
5
5
  SHA512:
6
- metadata.gz: 184c301826c51a1ccdd9493ea7ff000b84d24ad29d0a2642af3c07606dbd4431a420e5778218f3351216e418eb94128d2f1868bba90cbc14b96ea8c24fc3bda7
7
- data.tar.gz: 64dc9c7978f99cc1e869cc58f004cb34fc899e5b05523e5d5d68dfe908d584c5ecf133235f11ac48d2ce2994695e0ae26af68e35ad5c62cc3fb5b5a3406f2c00
6
+ metadata.gz: 8a41c51227b2ec14e127ad60991096a45bab558ee70934a59ea29f8d3479b8a0885e64d2ef6a55830eba29623b22eb6a18b1b335721dfa3091488d6abfaeaf2d
7
+ data.tar.gz: 43ec97320cbf1f2f483d81f3b30ea14afe14a61b399e34e44ce5d632b79a7be7d208999f90ed8f271a29e7e131535380cc6a00e07a037db8d4eaa7f778f21ff2
data/lib/wovnrb/store.rb CHANGED
@@ -1,5 +1,7 @@
1
1
  require 'redis'
2
2
  require 'net/http'
3
+ require 'socket'
4
+ require 'cgi'
3
5
  require 'Logger' unless defined?(Logger)
4
6
 
5
7
  module Wovnrb
@@ -124,21 +126,31 @@ module Wovnrb
124
126
  # @param url [String] The url to get the values for
125
127
  # @return [Hash] The values Hash for the passed in url
126
128
  def get_values(url)
127
- redis_key = 'WOVN:BACKEND:STORAGE:' + url.gsub(/\/$/, '') + ':' + settings['user_token']
129
+ url = url.gsub(/\/$/, '')
130
+ redis_key = 'WOVN:BACKEND:STORAGE:' + url + ':' + settings['user_token']
128
131
  cli = Redis.new(host: settings['backend_host'], port: settings['backend_port'])
129
132
  begin
130
133
  vals = cli.get(redis_key) || '{}'
134
+ vals = JSON.parse(vals)
131
135
  rescue
132
136
  logger = Logger.new('../error.log')
133
137
  logger.error("Redis GET request failed with the following parameters:\nhost: #{settings['backend_host']}\nport: #{settings['backend_port']}\nkey: #{redis_key}")
134
138
  vals = {}
135
139
  end
140
+ if vals['expired'] || vals.empty?
141
+ host = 'j.wovn.io'
142
+ post_data = "{\"user_token\":\"#{settings['user_token']}\", \"url\":\"#{CGI.escape(url)}\"}"
143
+ headers = "Host: #{host}\r\nContent-Type: application/json;charset=UTF-8\r\nContent-Length: #{post_data.bytesize}\r\nConnection: close\r\n\r\n"
144
+ s = TCPSocket.new(host, 80)
145
+ s.puts "POST /pages/cache_backend HTTP/1.1\r\n#{headers}#{post_data}"
146
+ s.close
147
+ end
136
148
  # handle this on the widget
137
149
  #if vals.empty?
138
150
  # uri = URI.parse('http://api.wovn.io/v0/page/add')
139
151
  # Net::HTTP.post_form(uri, :user_token => user_token, :secret_key => @settings['secret_key'], :url => url)
140
152
  #end
141
- JSON.parse(vals)
153
+ vals
142
154
  end
143
155
 
144
156
  end
@@ -1,3 +1,3 @@
1
1
  module Wovnrb
2
- VERSION = "0.1.39"
2
+ VERSION = "0.1.40"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wovnrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.39
4
+ version: 0.1.40
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Sandford
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-08-31 00:00:00.000000000 Z
12
+ date: 2015-09-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: nokogumbo