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 +4 -4
- data/lib/wovnrb/store.rb +14 -2
- data/lib/wovnrb/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cffb646cb8c14f99701296e7b22d0738bc4d24b3
|
4
|
+
data.tar.gz: b7267db819993721d41b82eda2c7fd801e69a2e3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
-
|
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
|
-
|
153
|
+
vals
|
142
154
|
end
|
143
155
|
|
144
156
|
end
|
data/lib/wovnrb/version.rb
CHANGED
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.
|
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-
|
12
|
+
date: 2015-09-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: nokogumbo
|