Module: Orchestrated
- Defined in:
- lib/generators/orchestrated/active_record_generator.rb,
lib/orchestrated/base.rb,
lib/orchestrated/object.rb,
lib/orchestrated/version.rb,
lib/orchestrated/completion.rb,
lib/orchestrated/dependency.rb,
lib/orchestrated/orchestration.rb,
lib/orchestrated/message_delivery.rb
Overview
Extend the DelayedJobGenerator so that it creates an AR migration
Defined Under Namespace
Modules: InstanceMethods Classes: ActiveRecordGenerator, Complete, CompletionExpression, CompositeCompletion, FirstCompletion, Incomplete, LastCompletion, MessageDelivery, Orchestration, OrchestrationCompletion, OrchestrationCompletionShim, OrchestrationDependency, OrchestrationInterest, Proxy
Constant Summary collapse
- VERSION =
"0.0.7"
Class Method Summary collapse
- .belongs_to(clazz) ⇒ Object
-
.underscore(camel_cased_word) ⇒ Object
snarfed from Ruby On Rails.
Class Method Details
.belongs_to(clazz) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/orchestrated/base.rb', line 22 def belongs_to clazz # borrowed from Ick method_name = self.underscore(self.name.split('::')[-1]) unless clazz.method_defined?(method_name) clazz.class_eval " def #{method_name}(prerequisite=Complete.new) raise ArgumentError.new('orchestrate does not take a block') if block_given? raise ArgumentError.new(%[cannot use \#{prerequisite.class.name} as a prerequisite]) unless prerequisite.kind_of?(CompletionExpression) Proxy.new(prerequisite, self) end" end end |
.underscore(camel_cased_word) ⇒ Object
snarfed from Ruby On Rails
16 17 18 19 20 21 |
# File 'lib/orchestrated/base.rb', line 16 def underscore(camel_cased_word) camel_cased_word.to_s.gsub(/::/, '/'). gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2'). tr("-", "_"). downcase end |