dimr 0.2.2 → 0.3.0.a

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 +34 -29
  3. data/lib/dimr/version.rb +1 -1
  4. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3800c60dd7a3e509fb324a931ca626fd7f754e72
4
- data.tar.gz: 5c7f95d9a580cc20eef38e2df55f31211fc29a72
3
+ metadata.gz: 3f078f646b468e0f0f7f78f05ad82fe07452cbf0
4
+ data.tar.gz: 8cde073015325986e3c6846e7a5aa7e188e85825
5
5
  SHA512:
6
- metadata.gz: 0629b55c0a2de16630b391699cfd22d752f88bc254a186c7c42d5d18241e87125d892143a68ba99cd184695cdcc09bc85f405bd6f6e57bd8093ca9f71b2cdc02
7
- data.tar.gz: c5272c8a375625917d199cf268305f763df3b6626e3b7f86d3c8b8a13dd09191f86744e29222660450aeb7fd69b3c764c97150a3260a55a7245a5af97290c3cf
6
+ metadata.gz: 7e43310607c1792fccff430fec2e4d6cb08a25b1ce7b26c7e99a9cf59379607c6c584e30543e161cced348c05e9509ae57d7236f42602c482f4322f29068dc46
7
+ data.tar.gz: fa5543686b8b613fa0c2ad3fbfe45b54550c424f500cc94a9a4ebdf3d992e0fe479c3eb02f3675dbbb8fd768b92e61f243ecf340b5081880ad36a01b38e56d57
@@ -1,44 +1,49 @@
1
1
  require "dimr/version"
2
+ require 'forwardable'
2
3
  require "dim"
3
4
 
4
5
  module Dimr
5
- class Container < Dim::Container
6
- def initialize(parent=nil, &block)
7
- super(parent)
8
- self.instance_eval(&block)
9
- end
6
+ extend Forwardable
10
7
 
11
- def run(runable_klass, dependencies, method = :run!)
12
- factory(runable_klass, dependencies, method)
13
- end
14
- alias :command :run
15
- alias :query :run
8
+ private
16
9
 
17
- def factory(runable_klass, dependencies, method = nil)
18
- Runner.new(runable_klass, dependencies, method)
19
- end
10
+ def run(runable_klass, dependencies, method = :run!)
11
+ factory(runable_klass, dependencies, method)
12
+ end
13
+ alias :command :run
14
+ alias :query :run
20
15
 
21
- class Runner
22
- attr_reader :runable_klass, :dependencies, :method
16
+ def factory(runable_klass, dependencies, method = nil)
17
+ Runner.new(runable_klass, dependencies, method)
18
+ end
23
19
 
24
- def initialize(runable_klass, dependencies, method = nil)
25
- @runable_klass, @dependencies, @method =
26
- runable_klass, dependencies, method
27
- end
20
+ def container
21
+ @container ||= Dim::Container.new
22
+ end
23
+
24
+ def_delegators :container, :register_env, :register, :method_missing
25
+
26
+ class Runner
27
+ attr_reader :runable_klass, :dependencies, :method
28
28
 
29
- def call(*args)
30
- runable = runable_klass.new(*args)
29
+ def initialize(runable_klass, dependencies, method = nil)
30
+ @runable_klass, @dependencies, @method =
31
+ runable_klass, dependencies, method
32
+ end
33
+
34
+ def call(*args)
35
+ runable = runable_klass.new(*args)
31
36
 
32
- dependencies.each do |key, value|
33
- runable.send("#{key}=", value)
34
- end if dependencies
37
+ dependencies.each do |key, value|
38
+ runable.send("#{key}=", value)
39
+ end if dependencies
35
40
 
36
- if method
37
- runable.public_send(method)
38
- else
39
- runable
40
- end
41
+ if method
42
+ runable.public_send(method)
43
+ else
44
+ runable
41
45
  end
42
46
  end
43
47
  end
48
+
44
49
  end
@@ -1,3 +1,3 @@
1
1
  module Dimr
2
- VERSION = "0.2.2"
2
+ VERSION = "0.3.0.a"
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.2.2
4
+ version: 0.3.0.a
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-08-10 00:00:00.000000000 Z
11
+ date: 2016-11-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dim
@@ -101,9 +101,9 @@ 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: '0'
106
+ version: 1.3.1
107
107
  requirements: []
108
108
  rubyforge_project:
109
109
  rubygems_version: 2.5.1