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 +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
         |