Class: SPF::Query::Mechanism

Inherits:
Object
  • Object
show all
Defined in:
lib/spf/query/mechanism.rb

Constant Summary collapse

QUALIFIERS =
{
  '+' => :pass,
  '-' => :fail,
  '~' => :soft_fail,
  '?' => :neuatral
}

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, options = {}) ⇒ Mechanism

Returns a new instance of Mechanism.



16
17
18
19
20
21
# File 'lib/spf/query/mechanism.rb', line 16

def initialize(name,options={})
  @name = name

  @value     = options[:value]
  @qualifier = options[:qualifier]
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



12
13
14
# File 'lib/spf/query/mechanism.rb', line 12

def name
  @name
end

#valueObject (readonly)

Returns the value of attribute value.



14
15
16
# File 'lib/spf/query/mechanism.rb', line 14

def value
  @value
end

Instance Method Details

#fail?Boolean

Returns:

  • (Boolean)


31
32
33
# File 'lib/spf/query/mechanism.rb', line 31

def fail?
  @qualifier == :fail
end

#neutral?Boolean

Returns:

  • (Boolean)


39
40
41
# File 'lib/spf/query/mechanism.rb', line 39

def neutral?
  @qualifier == :neutral
end

#pass?Boolean

Returns:

  • (Boolean)


27
28
29
# File 'lib/spf/query/mechanism.rb', line 27

def pass?
  @qualifier == :pass || @qualifier.nil?
end

#qualifierObject



23
24
25
# File 'lib/spf/query/mechanism.rb', line 23

def qualifier
  @qualifier || :pass
end

#soft_fail?Boolean

Returns:

  • (Boolean)


35
36
37
# File 'lib/spf/query/mechanism.rb', line 35

def soft_fail?
  @qualifier == :soft_fail
end

#to_sObject



43
44
45
46
47
48
# File 'lib/spf/query/mechanism.rb', line 43

def to_s
  str = "#{QUALIFIERS.invert[@qualifier]}#{@name}"
  str << ":#{@value}" if value

  return str
end