gator-as3-robotlegs 0.0.2.pre → 0.0.3.pre

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.
Files changed (44) hide show
  1. data/.rakeTasks +1 -1
  2. data/Gemfile +3 -3
  3. data/Gemfile.lock +2 -4
  4. data/README.rdoc +51 -2
  5. data/Rakefile +4 -4
  6. data/VERSION +1 -1
  7. data/gator-as3-robotlegs.gemspec +111 -0
  8. data/gator-as3-robotlegs.tmproj +48 -0
  9. data/lib/gator/as3/robotlegs/generators.rb +1 -0
  10. data/lib/gator/as3/robotlegs/generators/command.rb +7 -38
  11. data/lib/gator/as3/robotlegs/generators/context.rb +15 -42
  12. data/lib/gator/as3/robotlegs/generators/generator.rb +31 -0
  13. data/lib/gator/as3/robotlegs/generators/mediator.rb +13 -40
  14. data/lib/gator/as3/robotlegs/generators/model.rb +16 -42
  15. data/lib/gator/as3/robotlegs/generators/service.rb +9 -35
  16. data/lib/gator/as3/robotlegs/generators/test/asunit4/collection.rb +0 -2
  17. data/lib/gator/as3/robotlegs/generators/test/asunit4/command.rb +12 -40
  18. data/lib/gator/as3/robotlegs/generators/test/asunit4/mediator.rb +10 -39
  19. data/lib/gator/as3/robotlegs/generators/test/asunit4/view.rb +7 -35
  20. data/lib/gator/as3/robotlegs/generators/view.rb +7 -38
  21. data/lib/gator/as3/robotlegs/generators/view_with_mediator.rb +3 -8
  22. data/lib/gator/as3/robotlegs/{generators → templates/as3/robotlegs}/command.as.tt +0 -0
  23. data/lib/gator/as3/robotlegs/{generators → templates/as3/robotlegs}/context.as.tt +0 -0
  24. data/lib/gator/as3/robotlegs/{generators → templates/as3/robotlegs}/mediator.as.tt +0 -0
  25. data/lib/gator/as3/robotlegs/{generators → templates/as3/robotlegs}/model.as.tt +0 -0
  26. data/lib/gator/as3/robotlegs/{generators → templates/as3/robotlegs}/service.as.tt +0 -0
  27. data/lib/gator/as3/robotlegs/{generators → templates/as3/robotlegs}/test/asunit4/command.as.tt +1 -0
  28. data/lib/gator/as3/robotlegs/{generators → templates/as3/robotlegs}/test/asunit4/mediator.as.tt +5 -0
  29. data/lib/gator/as3/robotlegs/{generators → templates/as3/robotlegs}/test/asunit4/view.as.tt +0 -1
  30. data/lib/gator/as3/robotlegs/{generators → templates/as3/robotlegs}/view.as.tt +0 -0
  31. data/lib/gator/mxml/robotlegs/generators.rb +4 -0
  32. data/lib/gator/mxml/robotlegs/generators/application.rb +19 -0
  33. data/lib/gator/mxml/robotlegs/generators/collection.rb +21 -0
  34. data/lib/gator/mxml/robotlegs/generators/generator.rb +34 -0
  35. data/lib/gator/mxml/robotlegs/generators/module.rb +19 -0
  36. data/lib/gator/mxml/robotlegs/generators/module_application.rb +19 -0
  37. data/lib/gator/mxml/robotlegs/templates/mxml/application.mxml.tt +30 -0
  38. data/lib/gator/mxml/robotlegs/templates/mxml/module.mxml.tt +34 -0
  39. data/lib/gator/mxml/robotlegs/templates/mxml/module_application.mxml.tt +31 -0
  40. data/spec/generators/command_spec.rb +1 -1
  41. metadata +34 -36
  42. data/lib/gator/as3/robotlegs/generators/test/asunit4/runner.as.tt +0 -21
  43. data/lib/gator/as3/robotlegs/generators/test/asunit4/suite.as.tt +0 -8
  44. data/lib/gator/as3/robotlegs/generators/test/asunit4/suite.rb +0 -43
@@ -2,19 +2,14 @@ module Gator
2
2
  module AS3
3
3
  module RobotLegs
4
4
 
5
- class ViewWithMediatorGenerator < Task
6
- include Gator::Project
5
+ class ViewWithMediatorGenerator < Gator::Generator
7
6
 
8
7
  define :command => "view_with_mediator",
9
8
  :usage => "generate as3 rl view_with_mediator class CLASS_NAME", :description => "Creates RobotLegs View and Mediator classes."
10
9
 
11
- argument :classname
12
-
13
- class_option :test, :default => false
14
-
15
10
  def generate
16
- invoke resolve_subcommand(["robotlegs","mediator"],["as3","klass"]), [classname]
17
- invoke resolve_subcommand(["robotlegs","view"],["as3","klass"]), [classname]
11
+ invoke resolve_subcommand(["robotlegs","mediator"],["as3","klass"])
12
+ invoke resolve_subcommand(["robotlegs","view"],["as3","klass"])
18
13
  end
19
14
 
20
15
  end
@@ -1,6 +1,7 @@
1
1
  package <%= package_name %>
2
2
  {
3
3
  import asunit.asserts.*;
4
+ import flash.events.EventDispatcher;
4
5
 
5
6
  public class <%= class_name %>
6
7
  {
@@ -2,6 +2,10 @@ package <%= package_name %>
2
2
  {
3
3
  import asunit.asserts.*;
4
4
 
5
+ import flash.events.EventDispatcher;
6
+
7
+ import org.robotlegs.adapters.SwiftSuspendersInjector;
8
+
5
9
  import <%= view_package_name %>.<%= view_class_name %>;
6
10
 
7
11
  public class <%= class_name %>
@@ -13,6 +17,7 @@ package <%= package_name %>
13
17
  {
14
18
  instance=new <%= instance_name %>();
15
19
  instance.view=new <%= view_class_name %>();
20
+ instance.view.parentInjector=new SwiftSuspendersInjector();
16
21
  instance.setViewComponent(instance.view);
17
22
  instance.eventDispatcher=new EventDispatcher();
18
23
  instance.onRegister();
@@ -23,7 +23,6 @@ package <%= package_name %>
23
23
  {
24
24
  context.removeChild(instance);
25
25
  instance=null;
26
- context=null;
27
26
  }
28
27
 
29
28
  [Test]
@@ -0,0 +1,4 @@
1
+ require File.dirname(__FILE__) + '/generators/generator'
2
+ require File.dirname(__FILE__) + '/generators/collection'
3
+
4
+ Gator::MXML::GeneratorCollection.register_subcommand Gator::MXML::RobotLegs::GeneratorCollection
@@ -0,0 +1,19 @@
1
+ module Gator
2
+ module MXML
3
+ module RobotLegs
4
+ class ApplicationGenerator < Gator::AS3::KlassGenerator
5
+ include Gator::Project
6
+ include WithRobotLegsTemplates
7
+ include ActAsRobotLegsKlassGenerator
8
+ include ActAsMXMLKlassGenerator
9
+
10
+ define :command => "application", :short => "app",
11
+ :usage => "generate RobotLegs mxml application CLASS_NAME", :description => "Creates RobotLegs mxml application."
12
+
13
+ def template_file
14
+ "mxml/application.mxml.tt"
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,21 @@
1
+ require File.dirname(__FILE__) + '/application'
2
+ require File.dirname(__FILE__) + '/module'
3
+ require File.dirname(__FILE__) + '/module_application'
4
+
5
+ module Gator
6
+ module MXML
7
+ module RobotLegs
8
+
9
+ class GeneratorCollection < Gator::Command
10
+
11
+ define :command => "robotlegs", :short => "rl",
12
+ :usage => "generate RobotLegs mxml GENERATOR", :description => "RobotLegs generators for MXML."
13
+
14
+ register_subcommand Gator::MXML::RobotLegs::ApplicationGenerator
15
+ register_subcommand Gator::MXML::RobotLegs::ModuleGenerator
16
+ register_subcommand Gator::MXML::RobotLegs::ModuleApplicationGenerator
17
+
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,34 @@
1
+ module Gator
2
+ module MXML
3
+ module RobotLegs
4
+ module WithRobotLegsTemplates
5
+ def self.included(base)
6
+ base.extend(ClassMethods)
7
+ end
8
+
9
+ module ClassMethods
10
+ def template_root
11
+ File.dirname(__FILE__) + "/../templates"
12
+ end
13
+ end
14
+ end
15
+
16
+ module ActAsRobotLegsKlassGenerator
17
+ def generate_test_command
18
+ super.unshift "robotlegs"
19
+ end
20
+ end
21
+
22
+ module ActAsRobotLegsTestGenerator
23
+ def generate_klass_command
24
+ ["robotlegs", definition[:command]]
25
+ end
26
+
27
+ def update_suite
28
+ invoke resolve_subcommand(["test", "suite"])
29
+ end
30
+ end
31
+
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,19 @@
1
+ module Gator
2
+ module MXML
3
+ module RobotLegs
4
+ class ModuleGenerator < Gator::AS3::KlassGenerator
5
+ include Gator::Project
6
+ include WithRobotLegsTemplates
7
+ include ActAsRobotLegsKlassGenerator
8
+ include ActAsMXMLKlassGenerator
9
+
10
+ define :command => "module",
11
+ :usage => "generate RobotLegs mxml module CLASS_NAME", :description => "Creates RobotLegs mxml module."
12
+
13
+ def template_file
14
+ "mxml/module.mxml.tt"
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,19 @@
1
+ module Gator
2
+ module MXML
3
+ module RobotLegs
4
+ class ModuleApplicationGenerator < Gator::AS3::KlassGenerator
5
+ include Gator::Project
6
+ include WithRobotLegsTemplates
7
+ include ActAsRobotLegsKlassGenerator
8
+ include ActAsMXMLKlassGenerator
9
+
10
+ define :command => "module_application",
11
+ :usage => "generate RobotLegs mxml modular application CLASS_NAME", :description => "Creates RobotLegs mxml modular application."
12
+
13
+ def template_file
14
+ "mxml/module_application.mxml.tt"
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,30 @@
1
+ <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
2
+ xmlns:s="library://ns.adobe.com/flex/spark"
3
+ xmlns:mx="library://ns.adobe.com/flex/mx"
4
+ minWidth="800"
5
+ minHeight="600"
6
+ width="1024"
7
+ height="768"
8
+ backgroundColor="0xFFFFFF"
9
+ pageTitle="<%= class_name %>"
10
+ usePreloader="true"
11
+ applicationComplete="on<%= class_name %>Complete()">
12
+ <fx:Style>
13
+ @namespace s "library://ns.adobe.com/flex/spark";
14
+ </fx:Style>
15
+ <fx:Declarations>
16
+ <context:<%= class_name %>Context contextView="{this}" />
17
+ </fx:Declarations>
18
+ <s:layout>
19
+ <s:BasicLayout/>
20
+ </s:layout>
21
+ <fx:Script>
22
+ <![CDATA[
23
+ protected function on<%= class_name %>Complete():void
24
+ {
25
+ trace("<%= class_name %>.mxml :: on<%= class_name %>Complete()");
26
+ }
27
+ ]]>
28
+ </fx:Script>
29
+ </s:Application>
30
+
@@ -0,0 +1,34 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <s:Module xmlns:fx="http://ns.adobe.com/mxml/2009"
3
+ xmlns:s="library://ns.adobe.com/flex/spark"
4
+ implements="org.robotlegs.utilities.modular.core.IModule"
5
+ height="100%"
6
+ width="100%">
7
+ <s:layout>
8
+ <s:BasicLayout/>
9
+ </s:layout>
10
+ <fx:Script>
11
+ <![CDATA[
12
+ import mx.core.IVisualElementContainer;
13
+
14
+ import org.robotlegs.core.IInjector;
15
+ import org.robotlegs.utilities.modular.core.IModuleContext;
16
+
17
+ protected var context:IModuleContext;
18
+
19
+ [Inject]
20
+ public function set parentInjector(value:IInjector):void
21
+ {
22
+ context=new <%= class_name %>(this, value);
23
+ }
24
+
25
+ public function dispose():void
26
+ {
27
+ if(parent&&parent.contains(this))
28
+ IVisualElementContainer(parent).removeElement(this);
29
+ context.dispose();
30
+ context=null;
31
+ }
32
+ ]]>
33
+ </fx:Script>
34
+ </s:Module>
@@ -0,0 +1,31 @@
1
+ <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
2
+ xmlns:s="library://ns.adobe.com/flex/spark"
3
+ xmlns:mx="library://ns.adobe.com/flex/mx"
4
+ minWidth="800"
5
+ minHeight="600"
6
+ width="1024"
7
+ height="768"
8
+ backgroundColor="0xFFFFFF"
9
+ pageTitle="<%= class_name %>"
10
+ usePreloader="true"
11
+ applicationComplete="on<%= class_name %>Complete()">
12
+ <fx:Style>
13
+ @namespace s "library://ns.adobe.com/flex/spark";
14
+ </fx:Style>
15
+ <fx:Declarations>
16
+ <context:<%= class_name %>Context contextView="{<%= class_name.gsub(/\B[A-Z]/, '_\&').downcase %>_view}" />
17
+ </fx:Declarations>
18
+ <s:layout>
19
+ <s:BasicLayout/>
20
+ </s:layout>
21
+ <fx:Script>
22
+ <![CDATA[
23
+ protected function on<%= class_name %>Complete():void
24
+ {
25
+ trace("<%= class_name %>.mxml :: on<%= class_name %>Complete()");
26
+ }
27
+ ]]>
28
+ </fx:Script>
29
+ <views:<%= class_name %>View id="<%= class_name.gsub(/\B[A-Z]/, '_\&').downcase %>_view" />
30
+ </s:Application>
31
+
@@ -5,7 +5,7 @@ describe Gator::AS3::RobotLegs::CommandGenerator do
5
5
  clean
6
6
  gator('dummy.FooFunk')
7
7
  end
8
-
8
+
9
9
  it 'should create the expected files' do
10
10
  file('dummy/FooFunk.as').should exist
11
11
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: gator-as3-robotlegs
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease: 6
5
- version: 0.0.2.pre
5
+ version: 0.0.3.pre
6
6
  platform: ruby
7
7
  authors:
8
8
  - devboy
@@ -11,7 +11,7 @@ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
13
 
14
- date: 2011-08-16 00:00:00 +01:00
14
+ date: 2011-09-01 00:00:00 +01:00
15
15
  default_executable:
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
@@ -21,7 +21,7 @@ dependencies:
21
21
  requirements:
22
22
  - - ~>
23
23
  - !ruby/object:Gem::Version
24
- version: 0.0.20.pre
24
+ version: 0.0.21.pre
25
25
  type: :runtime
26
26
  prerelease: false
27
27
  version_requirements: *id001
@@ -69,20 +69,9 @@ dependencies:
69
69
  type: :development
70
70
  prerelease: false
71
71
  version_requirements: *id005
72
- - !ruby/object:Gem::Dependency
73
- name: rcov
74
- requirement: &id006 !ruby/object:Gem::Requirement
75
- none: false
76
- requirements:
77
- - - ">="
78
- - !ruby/object:Gem::Version
79
- version: "0"
80
- type: :development
81
- prerelease: false
82
- version_requirements: *id006
83
72
  - !ruby/object:Gem::Dependency
84
73
  name: rspec
85
- requirement: &id007 !ruby/object:Gem::Requirement
74
+ requirement: &id006 !ruby/object:Gem::Requirement
86
75
  none: false
87
76
  requirements:
88
77
  - - ~>
@@ -90,10 +79,10 @@ dependencies:
90
79
  version: 2.3.0
91
80
  type: :development
92
81
  prerelease: false
93
- version_requirements: *id007
82
+ version_requirements: *id006
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: ci_reporter
96
- requirement: &id008 !ruby/object:Gem::Requirement
85
+ requirement: &id007 !ruby/object:Gem::Requirement
97
86
  none: false
98
87
  requirements:
99
88
  - - ~>
@@ -101,21 +90,21 @@ dependencies:
101
90
  version: 1.6.5
102
91
  type: :development
103
92
  prerelease: false
104
- version_requirements: *id008
93
+ version_requirements: *id007
105
94
  - !ruby/object:Gem::Dependency
106
95
  name: gator
107
- requirement: &id009 !ruby/object:Gem::Requirement
96
+ requirement: &id008 !ruby/object:Gem::Requirement
108
97
  none: false
109
98
  requirements:
110
99
  - - ~>
111
100
  - !ruby/object:Gem::Version
112
- version: 0.0.20.pre
101
+ version: 0.0.21.pre
113
102
  type: :development
114
103
  prerelease: false
115
- version_requirements: *id009
104
+ version_requirements: *id008
116
105
  - !ruby/object:Gem::Dependency
117
106
  name: gator-as3
118
- requirement: &id010 !ruby/object:Gem::Requirement
107
+ requirement: &id009 !ruby/object:Gem::Requirement
119
108
  none: false
120
109
  requirements:
121
110
  - - ~>
@@ -123,7 +112,7 @@ dependencies:
123
112
  version: 0.0.7.pre
124
113
  type: :development
125
114
  prerelease: false
126
- version_requirements: *id010
115
+ version_requirements: *id009
127
116
  description: Gator Generators for RobotLegs
128
117
  email: simon@newtriks.com
129
118
  executables: []
@@ -142,32 +131,41 @@ files:
142
131
  - README.rdoc
143
132
  - Rakefile
144
133
  - VERSION
134
+ - gator-as3-robotlegs.gemspec
135
+ - gator-as3-robotlegs.tmproj
145
136
  - lib/gator/as3/robotlegs/generators.rb
146
137
  - lib/gator/as3/robotlegs/generators/collection.rb
147
- - lib/gator/as3/robotlegs/generators/command.as.tt
148
138
  - lib/gator/as3/robotlegs/generators/command.rb
149
- - lib/gator/as3/robotlegs/generators/context.as.tt
150
139
  - lib/gator/as3/robotlegs/generators/context.rb
151
- - lib/gator/as3/robotlegs/generators/mediator.as.tt
140
+ - lib/gator/as3/robotlegs/generators/generator.rb
152
141
  - lib/gator/as3/robotlegs/generators/mediator.rb
153
- - lib/gator/as3/robotlegs/generators/model.as.tt
154
142
  - lib/gator/as3/robotlegs/generators/model.rb
155
- - lib/gator/as3/robotlegs/generators/service.as.tt
156
143
  - lib/gator/as3/robotlegs/generators/service.rb
157
144
  - lib/gator/as3/robotlegs/generators/test/asunit4.rb
158
145
  - lib/gator/as3/robotlegs/generators/test/asunit4/collection.rb
159
- - lib/gator/as3/robotlegs/generators/test/asunit4/command.as.tt
160
146
  - lib/gator/as3/robotlegs/generators/test/asunit4/command.rb
161
- - lib/gator/as3/robotlegs/generators/test/asunit4/mediator.as.tt
162
147
  - lib/gator/as3/robotlegs/generators/test/asunit4/mediator.rb
163
- - lib/gator/as3/robotlegs/generators/test/asunit4/runner.as.tt
164
- - lib/gator/as3/robotlegs/generators/test/asunit4/suite.as.tt
165
- - lib/gator/as3/robotlegs/generators/test/asunit4/suite.rb
166
- - lib/gator/as3/robotlegs/generators/test/asunit4/view.as.tt
167
148
  - lib/gator/as3/robotlegs/generators/test/asunit4/view.rb
168
- - lib/gator/as3/robotlegs/generators/view.as.tt
169
149
  - lib/gator/as3/robotlegs/generators/view.rb
170
150
  - lib/gator/as3/robotlegs/generators/view_with_mediator.rb
151
+ - lib/gator/as3/robotlegs/templates/as3/robotlegs/command.as.tt
152
+ - lib/gator/as3/robotlegs/templates/as3/robotlegs/context.as.tt
153
+ - lib/gator/as3/robotlegs/templates/as3/robotlegs/mediator.as.tt
154
+ - lib/gator/as3/robotlegs/templates/as3/robotlegs/model.as.tt
155
+ - lib/gator/as3/robotlegs/templates/as3/robotlegs/service.as.tt
156
+ - lib/gator/as3/robotlegs/templates/as3/robotlegs/test/asunit4/command.as.tt
157
+ - lib/gator/as3/robotlegs/templates/as3/robotlegs/test/asunit4/mediator.as.tt
158
+ - lib/gator/as3/robotlegs/templates/as3/robotlegs/test/asunit4/view.as.tt
159
+ - lib/gator/as3/robotlegs/templates/as3/robotlegs/view.as.tt
160
+ - lib/gator/mxml/robotlegs/generators.rb
161
+ - lib/gator/mxml/robotlegs/generators/application.rb
162
+ - lib/gator/mxml/robotlegs/generators/collection.rb
163
+ - lib/gator/mxml/robotlegs/generators/generator.rb
164
+ - lib/gator/mxml/robotlegs/generators/module.rb
165
+ - lib/gator/mxml/robotlegs/generators/module_application.rb
166
+ - lib/gator/mxml/robotlegs/templates/mxml/application.mxml.tt
167
+ - lib/gator/mxml/robotlegs/templates/mxml/module.mxml.tt
168
+ - lib/gator/mxml/robotlegs/templates/mxml/module_application.mxml.tt
171
169
  - spec/gator.rb
172
170
  - spec/generators/collection_spec.rb
173
171
  - spec/generators/command_spec.rb
@@ -187,7 +185,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
187
185
  requirements:
188
186
  - - ">="
189
187
  - !ruby/object:Gem::Version
190
- hash: -690288780553481882
188
+ hash: 2083420594624080525
191
189
  segments:
192
190
  - 0
193
191
  version: "0"