Class: PublicUid::SetPublicUid
- Inherits:
-
Object
- Object
- PublicUid::SetPublicUid
- Defined in:
- lib/public_uid/set_public_uid.rb
Constant Summary collapse
- NewUidNotSetYet =
Class.new(StandardError)
- PublicUidColumnDoesNotExist =
Class.new(StandardError)
- NoPublicUidColumnSpecified =
Class.new(StandardError)
- NoRecordSpecified =
Class.new(StandardError)
Instance Attribute Summary collapse
-
#new_uid ⇒ Object
readonly
Returns the value of attribute new_uid.
Instance Method Summary collapse
- #generate(generator) ⇒ Object
-
#initialize(options) ⇒ SetPublicUid
constructor
A new instance of SetPublicUid.
- #set ⇒ Object
Constructor Details
#initialize(options) ⇒ SetPublicUid
Returns a new instance of SetPublicUid.
10 11 12 13 14 15 |
# File 'lib/public_uid/set_public_uid.rb', line 10 def initialize() @record = [:record] || raise(NoRecordSpecified) @column = [:column] || raise(NoPublicUidColumnSpecified) @klass = @record.class check_column_existance end |
Instance Attribute Details
#new_uid ⇒ Object (readonly)
Returns the value of attribute new_uid.
8 9 10 |
# File 'lib/public_uid/set_public_uid.rb', line 8 def new_uid @new_uid end |
Instance Method Details
#generate(generator) ⇒ Object
17 18 19 20 21 |
# File 'lib/public_uid/set_public_uid.rb', line 17 def generate(generator) begin @new_uid= generator.generate end while similar_uid_exist? end |
#set ⇒ Object
23 24 25 26 |
# File 'lib/public_uid/set_public_uid.rb', line 23 def set new_uid || raise(NewUidNotSetYet) @record.send("#{@column}=", new_uid ) end |