class AutotaskApi::Condition

Attributes

expressions[R]
operator[R]

Public Class Methods

from_hash(condition = {}) click to toggle source
# File lib/autotask_api/query.rb, line 57
def self.from_hash(condition = {})
  expressions = condition[:expressions].map do |expression|
    expression.has_key?(:expressions) ? Condition.from_hash(expression) : Expression.from_hash(expression)
  end

  new expressions, condition[:operator] || 'AND'
end
new(expressions, operator = 'AND') click to toggle source
# File lib/autotask_api/query.rb, line 46
def initialize(expressions, operator = 'AND')
  @expressions = expressions.is_a?(Array) ? expressions : [expressions]
  @operator = operator
end

Public Instance Methods

remove_expression_by_field(field) click to toggle source
# File lib/autotask_api/query.rb, line 65
def remove_expression_by_field(field)
  expressions.reject! do |expression|
    expression.is_a?(Condition) ? expression.remove_expression_by_field(field) : expression.field == field
  end
end
to_xml(xml) click to toggle source
# File lib/autotask_api/query.rb, line 51
def to_xml(xml)
  xml.condition do
    expressions.each { |expression| expression.to_xml(xml) }
  end
end