dimr 0.3.0.b → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/dimr.rb +22 -18
  3. data/lib/dimr/version.rb +1 -1
  4. metadata +5 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b775a395bf356eadeb572c3cf1aede60fb96c0f5
4
- data.tar.gz: 27c8c499c8ca1c0c004ebf20fbfff39ba563d5f1
3
+ metadata.gz: ea7203234096f1455c80117dfdc99a4f3103f9b2
4
+ data.tar.gz: 825a407f62f5e76f94d0de793102d4a984c7cb0c
5
5
  SHA512:
6
- metadata.gz: c59826f2b4f18e2639405d4b91bebfa2a5e3670bfe9b0cca07eb038e55b53f9c764dd50f5c180a62f3fccd1fc057839ef365e7f3b7c244978db237d3ddc833bc
7
- data.tar.gz: 0dbad85949a6ff65031008712e8d54b09d62d41f9e279e2de97c2cdc05796aedb4ebb87cc94b49ec0586d62bf2112310f13e0e96ebc12838f8b445a0cbb0c6fc
6
+ metadata.gz: 2ec307395dddc366fff7cfd8458c3229b062d2fa21ca09f74e00f5980a9f727600bf6902afd1c9c1acab65b9028895d21e72864a230019b4bf8ab13d00901662
7
+ data.tar.gz: e074fc07eec784ea8aa2390024ac464fc5fc94e280a91bba81b22ba3068b5ca36c7c9a53e1c5d3b4ae675a37786a64544205a28eb733a87d08610be08eab88d8
@@ -7,11 +7,11 @@ module Dimr
7
7
 
8
8
  private
9
9
 
10
- def run(runable_klass, dependencies, method = :run!)
11
- Factory.new(runable_klass, dependencies, method)
10
+ def runner(runable_klass, dependencies, method = :run!)
11
+ Runner.new( factory(runable_klass, dependencies) , method)
12
12
  end
13
- alias :command :run
14
- alias :query :run
13
+ alias :command :runner
14
+ alias :query :runner
15
15
 
16
16
  def factory(runable_klass, dependencies)
17
17
  Factory.new(runable_klass, dependencies)
@@ -24,25 +24,29 @@ module Dimr
24
24
  def_delegators :container, :register_env, :register, :method_missing
25
25
 
26
26
  class Factory
27
- attr_reader :runable_klass, :dependencies, :run_method
28
-
29
- def initialize(runable_klass, dependencies, run_method = nil)
30
- @runable_klass, @dependencies, @run_method =
31
- runable_klass, dependencies, run_method
27
+ def initialize(klass, dependencies)
28
+ @klass, @dependencies = klass, dependencies
32
29
  end
33
30
 
34
31
  def call(*args)
35
- runable = runable_klass.new(*args)
32
+ instance = @klass.new(*args)
33
+
34
+ @dependencies.each do |key, value|
35
+ instance.send("#{key}=", value)
36
+ end if @dependencies
36
37
 
37
- dependencies.each do |key, value|
38
- runable.send("#{key}=", value)
39
- end if dependencies
38
+ instance
39
+ end
40
+ end
40
41
 
41
- if run_method
42
- runable.public_send(run_method)
43
- else
44
- runable
45
- end
42
+ class Runner
43
+ def initialize(factory, run_method)
44
+ @run_method, @factory = run_method, factory
45
+ end
46
+
47
+ def call(*args)
48
+ runable = @factory.call(*args)
49
+ runable.public_send(@run_method)
46
50
  end
47
51
  end
48
52
 
@@ -1,3 +1,3 @@
1
1
  module Dimr
2
- VERSION = "0.3.0.b"
2
+ VERSION = "0.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dimr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0.b
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steve England
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-11-14 00:00:00.000000000 Z
11
+ date: 2017-05-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dim
@@ -101,12 +101,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
101
101
  version: '0'
102
102
  required_rubygems_version: !ruby/object:Gem::Requirement
103
103
  requirements:
104
- - - ">"
104
+ - - ">="
105
105
  - !ruby/object:Gem::Version
106
- version: 1.3.1
106
+ version: '0'
107
107
  requirements: []
108
108
  rubyforge_project:
109
- rubygems_version: 2.5.1
109
+ rubygems_version: 2.6.8
110
110
  signing_key:
111
111
  specification_version: 4
112
112
  summary: DIMr is a small extension to DIM.