extface 0.2.2 → 0.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/controllers/extface/handler_controller.rb +1 -1
- data/app/models/extface/driver.rb +18 -0
- data/lib/extface/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: 26e194d96503291176e30f033e6da0fd08c0c8d3
|
4
|
+
data.tar.gz: 1a5245753295ef5bdede712a3b1f3630a951d5ee
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 721dcf1ed4d2262cd581dc468bae1c149a1a9c8e0d7d19ae0ef08c065faea54e44b2698a7c349da443c47b2764e15ddc1273e02dd84fad37dddaa0217ba8464a
|
7
|
+
data.tar.gz: fb5a48ef620c50c217c5bab0b6f3c077fab1a7a8a7c5693ddcb2554bf80538f647b6fbfaacf20e4973813570bd3cdaf713e43415fb4867728d8cf5f00079c2df
|
@@ -33,7 +33,7 @@ module Extface
|
|
33
33
|
r.append device.uuid, request.body.read
|
34
34
|
@full_buffer = r.get device.uuid
|
35
35
|
end
|
36
|
-
if bytes_porcessed = device.driver.
|
36
|
+
if bytes_porcessed = device.driver.pre_handle(@full_buffer.b)
|
37
37
|
Extface.redis_block do |r|
|
38
38
|
r.set device.uuid, @full_buffer.b[bytes_porcessed..-1]
|
39
39
|
end
|
@@ -39,6 +39,11 @@ module Extface
|
|
39
39
|
return buffer.length # return number of bytes processed
|
40
40
|
end
|
41
41
|
|
42
|
+
def pre_handle(buffer)
|
43
|
+
logger.debug "<-- #{buffer.bytes.map{ |b| '%02X' % b }.join(' ')}" if development?
|
44
|
+
handle(buffer)
|
45
|
+
end
|
46
|
+
|
42
47
|
def push(buffer)
|
43
48
|
if @job
|
44
49
|
Timeout.timeout(Extface.device_timeout) do
|
@@ -46,6 +51,7 @@ module Extface
|
|
46
51
|
r.subscribe(@job.id) do |on| #blocking until delivered
|
47
52
|
on.subscribe do |channel, subscriptions|
|
48
53
|
@job.rpush buffer
|
54
|
+
logger.debug "--> #{buffer.bytes.map{ |b| '%02X' % b }.join(' ')}" if development?
|
49
55
|
end
|
50
56
|
on.message do |event, data|
|
51
57
|
r.unsubscribe
|
@@ -99,5 +105,17 @@ module Extface
|
|
99
105
|
def buffer_key
|
100
106
|
"#{device.uuid}:#{self.id}"
|
101
107
|
end
|
108
|
+
|
109
|
+
def logger
|
110
|
+
@logger ||= begin
|
111
|
+
dir = "#{Rails.root}/log/extface/#{device.id}"
|
112
|
+
FileUtils.mkdir_p(dir) unless File.directory?(dir)
|
113
|
+
Logger.new("#{dir}/#{self.class.name.demodulize.underscore}.log", 'daily')
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
def development?
|
118
|
+
self.class::DEVELOPMENT
|
119
|
+
end
|
102
120
|
end
|
103
121
|
end
|
data/lib/extface/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: extface
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Vangelov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-06-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|