extface 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 072e5c6b5a572bdd5923665bc0c2b8ffdbfdf1b7
4
- data.tar.gz: debb2db3bbf533b53ad877885c8700a234e3dba8
3
+ metadata.gz: 26e194d96503291176e30f033e6da0fd08c0c8d3
4
+ data.tar.gz: 1a5245753295ef5bdede712a3b1f3630a951d5ee
5
5
  SHA512:
6
- metadata.gz: 9d14136598dab6955c64c02db5a84ac152ab278d7b648f3a64a9d9e5a2732c4e84f19150c17ae03e1e8d93e9ff163dca101f92d0720066362acfd2d53c452e13
7
- data.tar.gz: 23d3e25b9594ceeec6984f1072bd1adc86602bea2c401e7b3254786d1f980d5c7b363e21ed9e4b6f464774a7acf8c6ca517eeb4dfcfe3f5fa2945e6eb1a4b5c3
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.handle(@full_buffer.b)
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
@@ -1,3 +1,3 @@
1
1
  module Extface
2
- VERSION = "0.2.2"
2
+ VERSION = "0.2.3"
3
3
  end
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.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-05-30 00:00:00.000000000 Z
11
+ date: 2014-06-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails