class Subledger::Domain::Identity
Attributes
email[RW]
Public Class Methods
active_klass()
click to toggle source
# File lib/subledger/domain/identity.rb, line 49 def self.active_klass ActiveIdentity end
archived_klass()
click to toggle source
# File lib/subledger/domain/identity.rb, line 45 def self.archived_klass ArchivedIdentity end
create(args)
click to toggle source
# File lib/subledger/domain/identity.rb, line 53 def self.create args validate_creatability args identity = args[:client].send active_klass.collection_name, args args[:store].create_identity identity end
new(args)
click to toggle source
# File lib/subledger/domain/identity.rb, line 69 def initialize args describable args identifiable args storable args versionable args @email = args[:email] end
patch_keys()
click to toggle source
# File lib/subledger/domain/identity.rb, line 33 def self.patch_keys [ :id, :email, :description, :reference, :version ] end
post_keys()
click to toggle source
# File lib/subledger/domain/identity.rb, line 29 def self.post_keys [ :id, :email, :description, :reference ] end
root_klass()
click to toggle source
# File lib/subledger/domain/identity.rb, line 37 def self.root_klass Identity end
sub_klasses()
click to toggle source
# File lib/subledger/domain/identity.rb, line 41 def self.sub_klasses [ archived_klass, active_klass ] end
Private Class Methods
raise_unless_creatable(args)
click to toggle source
# File lib/subledger/domain/identity.rb, line 135 def self.raise_unless_creatable args unless ValidateEmail.mx_valid? args[:email] raise IdentityError, ':email is required and must have an MX record for the domain' end end
Public Instance Methods
create()
click to toggle source
# File lib/subledger/domain/identity.rb, line 61 def create identity, key = self.class.create self.attributes initialize identity.attributes return self, key end