Sha256: a71a5ef953f676ec96e6635ed5ce3106dd318f3c2d13d25dd194580db5ea30cc

Contents?: true

Size: 363 Bytes

Versions: 8

Compression:

Stored size: 363 Bytes

Contents

module PassiveRecord
  class SecureRandomIdentifier < Struct.new(:value)
    def self.generate(klass)
      new(generate_id_value_for(klass))
    end

    def self.generate_id_value_for(*)
      SecureRandom.uuid
    end

    def ==(other_id)
      self.value == other_id.value rescue self.value == other_id
    end

    def inspect
      value
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
passive_record-0.3.17 lib/passive_record/core/identifier.rb
passive_record-0.3.16 lib/passive_record/core/identifier.rb
passive_record-0.3.15 lib/passive_record/core/identifier.rb
passive_record-0.3.14 lib/passive_record/core/identifier.rb
passive_record-0.3.13 lib/passive_record/core/identifier.rb
passive_record-0.3.12 lib/passive_record/core/identifier.rb
passive_record-0.3.11 lib/passive_record/core/identifier.rb
passive_record-0.3.10 lib/passive_record/core/identifier.rb