Class: Aggro::Transform::ID

Inherits:
Object
  • Object
show all
Defined in:
lib/aggro/transform/id.rb

Overview

Private: Transforms integer representations.

Constant Summary collapse

ID_REGEX =
/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/

Instance Method Summary collapse

Constructor Details

#initialize(generate: false) ⇒ ID



7
8
9
# File 'lib/aggro/transform/id.rb', line 7

def initialize(generate: false)
  @generate = generate
end

Instance Method Details

#deserialize(value) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/aggro/transform/id.rb', line 11

def deserialize(value)
  value = value.to_s

  return value if value.match(ID_REGEX)

  generate_id if should_generate_id?
end

#serialize(value) ⇒ Object



19
20
21
# File 'lib/aggro/transform/id.rb', line 19

def serialize(value)
  deserialize value
end