class Coppertone::Modifier::Base

Base class including logic common to modifiers

Attributes

domain_spec[R]

Public Class Methods

new(attributes) click to toggle source
Calls superclass method Coppertone::Modifier::new
# File lib/coppertone/modifier/base.rb, line 7
def initialize(attributes)
  super(attributes)
  raise InvalidModifierError if attributes.blank?

  @domain_spec = Coppertone::DomainSpec.new(attributes)
rescue Coppertone::MacroStringParsingError
  raise Coppertone::InvalidModifierError
end

Public Instance Methods

==(other) click to toggle source
# File lib/coppertone/modifier/base.rb, line 32
def ==(other)
  return false unless other.instance_of? self.class

  domain_spec == other.domain_spec
end
context_dependent?() click to toggle source
# File lib/coppertone/modifier/base.rb, line 24
def context_dependent?
  domain_spec.context_dependent?
end
includes_ptr?() click to toggle source
# File lib/coppertone/modifier/base.rb, line 28
def includes_ptr?
  domain_spec.includes_ptr?
end
target_name_from_domain_spec(macro_context, request_context) click to toggle source
# File lib/coppertone/modifier/base.rb, line 16
def target_name_from_domain_spec(macro_context, request_context)
  if domain_spec
    domain =
      domain_spec.expand(macro_context, request_context)
  end
  Coppertone::Utils::DomainUtils.macro_expanded_domain(domain)
end