Class: Taskr::Models::TaskAction

Inherits:
Base
  • Object
show all
Defined in:
lib/taskr/models.rb

Instance Method Summary collapse

Instance Method Details

#action_classObject



169
170
171
# File 'lib/taskr/models.rb', line 169

def action_class
  self[:action_class_name].constantize
end

#action_class=(class_name) ⇒ Object



161
162
163
164
165
166
167
# File 'lib/taskr/models.rb', line 161

def action_class=(class_name)
  if class_name.kind_of? Class
    self[:action_class_name] = class_name.to_s
  else
    self[:action_class_name] = class_name
  end
end

#to_sObject



188
189
190
# File 'lib/taskr/models.rb', line 188

def to_s
  "#{self.class.name.demodulize}(#{task_action})"
end

#to_xml(options = {}) ⇒ Object



173
174
175
176
177
178
179
180
181
182
183
184
185
186
# File 'lib/taskr/models.rb', line 173

def to_xml(options = {})
  options[:indent] ||= 2
  xml = options[:builder] ||= Builder::XmlMarkup.new(:indent => options[:indent])
  xml.instruct! unless options[:skip_instruct]
  xml.tag!('task-action', :type => self.class) do
    xml.tag!('id', {:type => 'integer'}, id)
    xml.tag!('action-class-name', action_class_name)
    xml.tag!('order', {:type => 'integer'}, order) unless order.blank?
    xml.tag!('task-id', {:type => 'integer'}, task_id)
    xml.tag!('action-parameters', {:type => 'array'}) do
      action_parameters.each {|ap| ap.to_xml(options)}
    end
  end
end