spsclient_m2m 0.2.1 → 0.3.0
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
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/lib/spsclient_m2m.rb +45 -63
- metadata +13 -13
- metadata.gz.sig +0 -0
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 86bde5a369f2d808d30a1f8934ea12edd55352ff
         | 
| 4 | 
            +
              data.tar.gz: fcea0d03dcdede5e2a60e95382c5a10f23864cee
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: ea430829a9fb735dcb8575ee5fa3be1e00645491042895f4a2086d4304c6d331b448f9a69f4bd542690f946f2b69e0a54c1e7f4c021ae6ff3ed927769e4592b2
         | 
| 7 | 
            +
              data.tar.gz: 26980140de874d9090eca6b9564913d97a97077b47b1080798ab43caced0d0ed29fd0b3cdd44be3f58eb347ba3badda04b3c8d615fae76991032e7429975cb19
         | 
    
        checksums.yaml.gz.sig
    CHANGED
    
    | Binary file | 
    
        data.tar.gz.sig
    CHANGED
    
    | Binary file | 
    
        data/lib/spsclient_m2m.rb
    CHANGED
    
    | @@ -6,106 +6,88 @@ | |
| 6 6 | 
             
            require 'logger'
         | 
| 7 7 | 
             
            require 'polyrex'
         | 
| 8 8 | 
             
            require 'spstrigger_execute'
         | 
| 9 | 
            -
            require ' | 
| 9 | 
            +
            require 'sps-sub'    
         | 
| 10 10 |  | 
| 11 11 |  | 
| 12 12 | 
             
            class SPSClientM2M
         | 
| 13 13 |  | 
| 14 | 
            -
              def initialize(rsc, reg,  | 
| 15 | 
            -
             | 
| 14 | 
            +
              def initialize(rsc, reg, keywords, px_url, logfile: nil, \
         | 
| 15 | 
            +
                                         sps_host: 'sps', sps_port: '59000', topic: '#')
         | 
| 16 16 |  | 
| 17 17 | 
             
                @rsc = rsc
         | 
| 18 18 | 
             
                @log = Logger.new(logfile,'daily') if logfile
         | 
| 19 19 |  | 
| 20 | 
            -
                @sps_address = "%s:%s" % [ | 
| 20 | 
            +
                @sps_address = "%s:%s" % [sps_host, sps_port]
         | 
| 21 | 
            +
                @topic = topic
         | 
| 22 | 
            +
                
         | 
| 23 | 
            +
                @sps = SPSSub.new host: sps_host, port: sps_port
         | 
| 21 24 |  | 
| 22 25 | 
             
                px = Polyrex.new px_url
         | 
| 23 26 |  | 
| 24 | 
            -
                @ste = SPSTriggerExecute.new  | 
| 27 | 
            +
                @ste = SPSTriggerExecute.new keywords, reg, px, logfile: 'ste.log'
         | 
| 25 28 |  | 
| 26 29 | 
             
              end
         | 
| 27 30 |  | 
| 28 31 | 
             
              def run()
         | 
| 29 | 
            -
             | 
| 32 | 
            +
             
         | 
| 30 33 | 
             
                rsc = @rsc
         | 
| 31 34 | 
             
                ste = @ste
         | 
| 32 | 
            -
                sps_address = @sps_address
         | 
| 33 35 |  | 
| 34 | 
            -
                 | 
| 35 | 
            -
             | 
| 36 | 
            -
                  ws = WebSocket::EventMachine::Client.connect(:uri => 'ws://' + sps_address)
         | 
| 37 | 
            -
             | 
| 38 | 
            -
                  ws.onopen do
         | 
| 39 | 
            -
                    puts "Client connected"
         | 
| 40 | 
            -
                  end
         | 
| 41 | 
            -
             | 
| 42 | 
            -
                  ws.onmessage do |msg, type|
         | 
| 36 | 
            +
                @sps.subscribe(topic: @topic) do |raw_message, topic|
         | 
| 43 37 |  | 
| 44 | 
            -
             | 
| 45 | 
            -
             | 
| 46 | 
            -
                    puts "[%s] SPS M2M kywrd lstnr INFO %s: %s" % \
         | 
| 47 | 
            -
                                    [Time.now.strftime("%D %H:%M"), topic, raw_message]
         | 
| 38 | 
            +
                  puts "[%s] SPS M2M kywrd lstnr INFO %s: %s" % \
         | 
| 39 | 
            +
                                  [Time.now.strftime("%D %H:%M"), topic, raw_message]
         | 
| 48 40 |  | 
| 49 | 
            -
             | 
| 50 | 
            -
             | 
| 41 | 
            +
                  a = ste.mae topic, raw_message
         | 
| 42 | 
            +
                  log 'a: ' + a.inspect
         | 
| 51 43 |  | 
| 52 | 
            -
             | 
| 53 | 
            -
             | 
| 44 | 
            +
                  # obj is the DRb object, r is the result from find_match, 
         | 
| 45 | 
            +
                  # a is the Dynarex lookup array
         | 
| 54 46 |  | 
| 55 | 
            -
             | 
| 56 | 
            -
             | 
| 57 | 
            -
             | 
| 47 | 
            +
                  if a.length > 0 then
         | 
| 48 | 
            +
                    
         | 
| 49 | 
            +
                    h = {
         | 
| 50 | 
            +
                    
         | 
| 51 | 
            +
                      rse: ->(x, rsc){
         | 
| 58 52 |  | 
| 59 | 
            -
                         | 
| 53 | 
            +
                        job = x.shift[/\/\/job:(.*)/,1]                  
         | 
| 54 | 
            +
                        package_path = x.shift 
         | 
| 55 | 
            +
                        package = package_path[/([^\/]+)\.rsf$/,1]
         | 
| 60 56 |  | 
| 61 | 
            -
             | 
| 62 | 
            -
             | 
| 63 | 
            -
             | 
| 64 | 
            -
             | 
| 65 | 
            -
             | 
| 66 | 
            -
             | 
| 67 | 
            -
             | 
| 68 | 
            -
             | 
| 69 | 
            -
             | 
| 70 | 
            -
             | 
| 71 | 
            -
             | 
| 72 | 
            -
                    end
         | 
| 57 | 
            +
                        log "job: %s path: %s package: %s" % [job, package_path, package]
         | 
| 58 | 
            +
                        log 'foo: ' + rsc.r.hello
         | 
| 59 | 
            +
                        rsc.run_job package, job, {}, args=x, package_path: package_path
         | 
| 60 | 
            +
                      }, 
         | 
| 61 | 
            +
                      sps: ->(x, rsc){ @sps.notice x },
         | 
| 62 | 
            +
                      ste: ->(x, rsc){ log 'before ste run'; ste.run x }
         | 
| 63 | 
            +
                    }
         | 
| 64 | 
            +
             | 
| 65 | 
            +
                  end
         | 
| 66 | 
            +
             | 
| 67 | 
            +
                  EM.defer do          
         | 
| 73 68 |  | 
| 74 | 
            -
                     | 
| 69 | 
            +
                    a.each do |type, x| 
         | 
| 75 70 |  | 
| 76 | 
            -
                       | 
| 71 | 
            +
                      Thread.new do
         | 
| 77 72 |  | 
| 78 73 | 
             
                        begin
         | 
| 79 | 
            -
                          h[type].call x
         | 
| 74 | 
            +
                          h[type].call x, rsc
         | 
| 80 75 | 
             
                        rescue
         | 
| 81 76 | 
             
                          warning =  'SPSClientM2M warning: ' + ($!).inspect
         | 
| 82 77 | 
             
                          puts warning
         | 
| 83 78 | 
             
                          log warning
         | 
| 84 79 | 
             
                        end
         | 
| 85 80 |  | 
| 86 | 
            -
                      end
         | 
| 81 | 
            +
                      end # /thread
         | 
| 87 82 |  | 
| 88 | 
            -
                    end
         | 
| 89 | 
            -
             | 
| 90 | 
            -
             | 
| 91 | 
            -
                  ws.onclose do
         | 
| 92 | 
            -
                    puts "Client disconnected"
         | 
| 93 | 
            -
                  end
         | 
| 94 | 
            -
             | 
| 95 | 
            -
                  EventMachine.next_tick do
         | 
| 96 | 
            -
                    ws.send 'subscribe to topic: #'
         | 
| 97 | 
            -
                    ws.send 'rse_info: spsclient_m2m connected'
         | 
| 98 | 
            -
                  end
         | 
| 99 | 
            -
                  
         | 
| 100 | 
            -
                  EventMachine.error_handler{ |e|
         | 
| 101 | 
            -
                    puts "Error raised during event loop: #{e.message}"
         | 
| 83 | 
            +
                    end # /each
         | 
| 84 | 
            +
                    
         | 
| 85 | 
            +
                  end      
         | 
| 102 86 |  | 
| 103 | 
            -
             | 
| 104 | 
            -
             | 
| 105 | 
            -
                end
         | 
| 106 | 
            -
              
         | 
| 87 | 
            +
                end        
         | 
| 88 | 
            +
                
         | 
| 107 89 | 
             
              end
         | 
| 108 | 
            -
             | 
| 90 | 
            +
             | 
| 109 91 | 
             
              private
         | 
| 110 92 |  | 
| 111 93 | 
             
              def log(s)
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: spsclient_m2m
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.3.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - James Robertson
         | 
| @@ -31,7 +31,7 @@ cert_chain: | |
| 31 31 | 
             
              9PUm89FQvfRnzWxLuS4+ZXMo8Zo4MQHDdOuNAQpSDGVy1GIHrNU04foP5Bd86hc0
         | 
| 32 32 | 
             
              78GKZWkTxeiOTA==
         | 
| 33 33 | 
             
              -----END CERTIFICATE-----
         | 
| 34 | 
            -
            date:  | 
| 34 | 
            +
            date: 2017-04-16 00:00:00.000000000 Z
         | 
| 35 35 | 
             
            dependencies:
         | 
| 36 36 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 37 37 | 
             
              name: polyrex
         | 
| @@ -39,20 +39,20 @@ dependencies: | |
| 39 39 | 
             
                requirements:
         | 
| 40 40 | 
             
                - - "~>"
         | 
| 41 41 | 
             
                  - !ruby/object:Gem::Version
         | 
| 42 | 
            -
                    version: '1. | 
| 42 | 
            +
                    version: '1.1'
         | 
| 43 43 | 
             
                - - ">="
         | 
| 44 44 | 
             
                  - !ruby/object:Gem::Version
         | 
| 45 | 
            -
                    version: 1.1. | 
| 45 | 
            +
                    version: 1.1.12
         | 
| 46 46 | 
             
              type: :runtime
         | 
| 47 47 | 
             
              prerelease: false
         | 
| 48 48 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 49 49 | 
             
                requirements:
         | 
| 50 50 | 
             
                - - "~>"
         | 
| 51 51 | 
             
                  - !ruby/object:Gem::Version
         | 
| 52 | 
            -
                    version: '1. | 
| 52 | 
            +
                    version: '1.1'
         | 
| 53 53 | 
             
                - - ">="
         | 
| 54 54 | 
             
                  - !ruby/object:Gem::Version
         | 
| 55 | 
            -
                    version: 1.1. | 
| 55 | 
            +
                    version: 1.1.12
         | 
| 56 56 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 57 57 | 
             
              name: spstrigger_execute
         | 
| 58 58 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -74,27 +74,27 @@ dependencies: | |
| 74 74 | 
             
                  - !ruby/object:Gem::Version
         | 
| 75 75 | 
             
                    version: 0.4.6
         | 
| 76 76 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 77 | 
            -
              name:  | 
| 77 | 
            +
              name: sps-sub
         | 
| 78 78 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 79 79 | 
             
                requirements:
         | 
| 80 80 | 
             
                - - "~>"
         | 
| 81 81 | 
             
                  - !ruby/object:Gem::Version
         | 
| 82 | 
            -
                    version: ' | 
| 82 | 
            +
                    version: '0.3'
         | 
| 83 83 | 
             
                - - ">="
         | 
| 84 84 | 
             
                  - !ruby/object:Gem::Version
         | 
| 85 | 
            -
                    version:  | 
| 85 | 
            +
                    version: 0.3.4
         | 
| 86 86 | 
             
              type: :runtime
         | 
| 87 87 | 
             
              prerelease: false
         | 
| 88 88 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 89 89 | 
             
                requirements:
         | 
| 90 90 | 
             
                - - "~>"
         | 
| 91 91 | 
             
                  - !ruby/object:Gem::Version
         | 
| 92 | 
            -
                    version: ' | 
| 92 | 
            +
                    version: '0.3'
         | 
| 93 93 | 
             
                - - ">="
         | 
| 94 94 | 
             
                  - !ruby/object:Gem::Version
         | 
| 95 | 
            -
                    version:  | 
| 95 | 
            +
                    version: 0.3.4
         | 
| 96 96 | 
             
            description: 
         | 
| 97 | 
            -
            email: james@ | 
| 97 | 
            +
            email: james@jamesrobertson.eu
         | 
| 98 98 | 
             
            executables: []
         | 
| 99 99 | 
             
            extensions: []
         | 
| 100 100 | 
             
            extra_rdoc_files: []
         | 
| @@ -120,7 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 120 120 | 
             
                  version: '0'
         | 
| 121 121 | 
             
            requirements: []
         | 
| 122 122 | 
             
            rubyforge_project: 
         | 
| 123 | 
            -
            rubygems_version: 2. | 
| 123 | 
            +
            rubygems_version: 2.6.8
         | 
| 124 124 | 
             
            signing_key: 
         | 
| 125 125 | 
             
            specification_version: 4
         | 
| 126 126 | 
             
            summary: The SPSClient_M2M gem is designed to run as a service with the RSF_Services
         | 
    
        metadata.gz.sig
    CHANGED
    
    | Binary file |