hay 0.0.1.pre.alpha.1 → 0.0.1.pre.alpha.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +8 -0
- data/lib/hay/route.rb +9 -4
- data/lib/hay/task/resolver.rb +2 -0
- data/lib/hay/task.rb +8 -3
- data/lib/hay/version.rb +1 -1
- data/lib/hay.rb +1 -0
- data/test/integration/hay_test.rb +2 -2
- data/test/unit/hay/route_test.rb +21 -2
- data/test/unit/hay/task/template/hydrator_test.rb +0 -1
- data/test/unit/hay/task/template_test.rb +0 -1
- data/test/unit/hay/task_test.rb +15 -0
- metadata +2 -6
- data/lib/hay/task/hydrator/registry.rb +0 -21
- data/lib/hay/task/registry.rb +0 -16
- data/lib/hay/task/resolver/registry.rb +0 -11
- data/lib/hay/task/template/registry.rb +0 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a9c794c99eccbceb6466355ecacacced1f774bcd
|
4
|
+
data.tar.gz: fc59b1ccf3f3bfe92743703ee5e87aad1e9b773d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5c8309fbe23dd1dd55cf34fb5b9c64ccb6d686dbdb82288ee78b113732ab9075db034b92650416ade710e1177852038f6c99b1e2ea7fc5d76935ff9abd03fd20
|
7
|
+
data.tar.gz: 88805f8356452b4103555f1a4f0d5932a17dd550281920df128b7d5ec25a8ba0861e9b103d5581b5d05ec24f788e9b3607c3bb4bc00500b00e5fd0eccf8dd228
|
data/README.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
[![Build Status](https://travis-ci.org/azanar/hay.svg)](https://travis-ci.org/azanar/hay)
|
2
|
+
[![Dependency Status](http://img.shields.io/gemnasium/azanar/hay.svg)](https://gemnasium.com/azanar/hay)
|
3
|
+
[![Coverage Status](http://img.shields.io/coveralls/azanar/hay.svg)](https://coveralls.io/r/azanar/hay)
|
4
|
+
[![Code Climate](http://img.shields.io/codeclimate/github/azanar/hay.svg)](https://codeclimate.com/github/azanar/hay)
|
5
|
+
[![Gem Version](http://img.shields.io/gem/v/hay.svg)](https://rubygems.org/gems/hay)
|
6
|
+
[![License](http://img.shields.io/:license-mit-blue.svg)](http://azanar.mit-license.org)
|
7
|
+
[![Badges](http://img.shields.io/:badges-7/7-ff6799.svg)](https://github.com/badges/badgerbadgerbadger)
|
8
|
+
|
1
9
|
Hay
|
2
10
|
=======
|
3
11
|
A workflow definition framework.
|
data/lib/hay/route.rb
CHANGED
@@ -1,13 +1,18 @@
|
|
1
1
|
module Hay
|
2
2
|
module Route
|
3
|
+
module Autowired
|
4
|
+
def self.included(route)
|
5
|
+
route.class_exec do
|
6
|
+
include Hay::Route
|
7
|
+
end
|
8
|
+
Hay::Routes.register(route)
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
3
12
|
class << self
|
4
13
|
def queue_name
|
5
14
|
raise NotImplementedException
|
6
15
|
end
|
7
|
-
|
8
|
-
def included(route)
|
9
|
-
Hay::Routes.register(route)
|
10
|
-
end
|
11
16
|
end
|
12
17
|
|
13
18
|
def initialize(agent)
|
data/lib/hay/task/resolver.rb
CHANGED
@@ -4,6 +4,8 @@ require 'hay/task/exception/unknown_template_error'
|
|
4
4
|
|
5
5
|
module Hay
|
6
6
|
module Task
|
7
|
+
# A Resolver is responsible for figuring out how to transform an arbitrary
|
8
|
+
# input parameter into something digestable by Hay.
|
7
9
|
module Resolver
|
8
10
|
def self.new(params)
|
9
11
|
resolver_class = Hay::Task::Resolvers.punch(params)
|
data/lib/hay/task.rb
CHANGED
@@ -13,9 +13,14 @@ module Hay
|
|
13
13
|
# dehydrate.
|
14
14
|
#
|
15
15
|
module Task
|
16
|
-
|
17
|
-
|
18
|
-
|
16
|
+
module Autowired
|
17
|
+
def self.included(base)
|
18
|
+
base.instance_exec do
|
19
|
+
include Hay::Task
|
20
|
+
end
|
21
|
+
Hay::Tasks.register(base)
|
22
|
+
Hay::Task::Hydrators.register(base, Hay::Task::Hydrator)
|
23
|
+
end
|
19
24
|
end
|
20
25
|
|
21
26
|
def task_name
|
data/lib/hay/version.rb
CHANGED
data/lib/hay.rb
CHANGED
@@ -18,7 +18,7 @@ class HayTest < Test::Unit::TestCase
|
|
18
18
|
module MockTask
|
19
19
|
def self.included(base)
|
20
20
|
base.instance_exec do
|
21
|
-
include Hay::Task
|
21
|
+
include Hay::Task::Autowired
|
22
22
|
end
|
23
23
|
end
|
24
24
|
|
@@ -142,7 +142,7 @@ class HayTest < Test::Unit::TestCase
|
|
142
142
|
[RemoteTask]
|
143
143
|
end
|
144
144
|
|
145
|
-
include Hay::Route
|
145
|
+
include Hay::Route::Autowired
|
146
146
|
|
147
147
|
end
|
148
148
|
|
data/test/unit/hay/route_test.rb
CHANGED
@@ -2,12 +2,31 @@ require File.expand_path('../../test_helper', __FILE__)
|
|
2
2
|
|
3
3
|
require 'hay/route'
|
4
4
|
|
5
|
-
class Hay::
|
6
|
-
|
5
|
+
class Hay::Route::AutowiredTest < Test::Unit::TestCase
|
6
|
+
test "autowiring" do
|
7
7
|
dummy_route_klass = Class.new
|
8
8
|
|
9
9
|
Hay::Routes.expects(:register).with(dummy_route_klass)
|
10
10
|
|
11
|
+
dummy_route_klass.class_exec do
|
12
|
+
include Hay::Route::Autowired
|
13
|
+
|
14
|
+
def tasks=(tasks)
|
15
|
+
@tasks = tasks
|
16
|
+
end
|
17
|
+
|
18
|
+
def tasks
|
19
|
+
@tasks
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
assert dummy_route_klass.include?(Hay::Route)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
class Hay::RouteTest < Test::Unit::TestCase
|
27
|
+
setup do
|
28
|
+
dummy_route_klass = Class.new
|
29
|
+
|
11
30
|
dummy_route_klass.class_exec do
|
12
31
|
include Hay::Route
|
13
32
|
|
data/test/unit/hay/task_test.rb
CHANGED
@@ -3,4 +3,19 @@ require File.expand_path('../../test_helper', __FILE__)
|
|
3
3
|
require 'hay/task'
|
4
4
|
|
5
5
|
class Hay::TaskTest < Test::Unit::TestCase
|
6
|
+
test "autowiring" do
|
7
|
+
dummy_task_klass = Class.new
|
8
|
+
|
9
|
+
Hay::Tasks.expects(:register).with(dummy_task_klass)
|
10
|
+
|
11
|
+
dummy_task_klass.class_exec do
|
12
|
+
def self.task_name
|
13
|
+
"dummy_task"
|
14
|
+
end
|
15
|
+
|
16
|
+
include Hay::Task::Autowired
|
17
|
+
end
|
18
|
+
|
19
|
+
assert dummy_task_klass.include?(Hay::Task)
|
20
|
+
end
|
6
21
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hay
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.1.pre.alpha.
|
4
|
+
version: 0.0.1.pre.alpha.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ed Carrel
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-10-
|
11
|
+
date: 2014-10-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: punchout
|
@@ -123,19 +123,15 @@ files:
|
|
123
123
|
- lib/hay/task/exception/unknown_template_error.rb
|
124
124
|
- lib/hay/task/flow.rb
|
125
125
|
- lib/hay/task/hydrator.rb
|
126
|
-
- lib/hay/task/hydrator/registry.rb
|
127
126
|
- lib/hay/task/hydrators.rb
|
128
|
-
- lib/hay/task/registry.rb
|
129
127
|
- lib/hay/task/resolver.rb
|
130
128
|
- lib/hay/task/resolver/hash.rb
|
131
|
-
- lib/hay/task/resolver/registry.rb
|
132
129
|
- lib/hay/task/resolver/task.rb
|
133
130
|
- lib/hay/task/resolvers.rb
|
134
131
|
- lib/hay/task/resulter.rb
|
135
132
|
- lib/hay/task/template.rb
|
136
133
|
- lib/hay/task/template/hash.rb
|
137
134
|
- lib/hay/task/template/hydrator.rb
|
138
|
-
- lib/hay/task/template/registry.rb
|
139
135
|
- lib/hay/task/template/task.rb
|
140
136
|
- lib/hay/task/templates.rb
|
141
137
|
- lib/hay/tasks.rb
|
@@ -1,21 +0,0 @@
|
|
1
|
-
module Hay
|
2
|
-
module Task
|
3
|
-
class Factory
|
4
|
-
module Registry
|
5
|
-
@@factories = {}
|
6
|
-
|
7
|
-
def self.register(task_class)
|
8
|
-
@@factories[task_class.task_name] = Hay::Task::Factory.new(task_class)
|
9
|
-
end
|
10
|
-
|
11
|
-
def self.factory_by_task_class(task_class)
|
12
|
-
@@factories[task_class.task_name]
|
13
|
-
end
|
14
|
-
|
15
|
-
def self.factory_by_task_name(task_name)
|
16
|
-
@@factories[task_name]
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
data/lib/hay/task/registry.rb
DELETED
@@ -1,16 +0,0 @@
|
|
1
|
-
#require 'hay/task/factory'
|
2
|
-
|
3
|
-
module Hay
|
4
|
-
module Task
|
5
|
-
##
|
6
|
-
# A registry for any tasks which the system knows how to create.
|
7
|
-
#
|
8
|
-
module Registry
|
9
|
-
def self.register(task)
|
10
|
-
Hay.logger.info "Registering #{task} for #{task.task_name}"
|
11
|
-
|
12
|
-
#Hay::Task::Factory::Registry.register(task)
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
module Hay
|
2
|
-
module Task
|
3
|
-
module Template
|
4
|
-
module Registry
|
5
|
-
@@template_maps = {}
|
6
|
-
|
7
|
-
def self.register(task_class, template)
|
8
|
-
Hay.logger.info "Registering template #{template} for #{task_class}"
|
9
|
-
@@template_maps[task_class] = template
|
10
|
-
end
|
11
|
-
|
12
|
-
def self.template_for(task_class)
|
13
|
-
@@template_maps[task_class]
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|