Sha256: f717d80da62d35ae54ab47a1f979cb7da2987a5734bab5512ecd49d3aa0f10b0

Contents?: true

Size: 489 Bytes

Versions: 34

Compression:

Stored size: 489 Bytes

Contents

# encoding: UTF-8
module Firefly
  class CodeFactory
    include DataMapper::Resource

    property :id,    Serial
    property :count, Integer, :default => 0

    # Returns the next auto increment value and updates
    # the counter
    def self.next_code!
      code = nil

      Firefly::CodeFactory.transaction do
        c = Firefly::CodeFactory.first
        code = Firefly::Base62.encode(c.count + 1)
        c.update(:count => c.count + 1)
      end

      code
    end

  end
end

Version data entries

34 entries across 34 versions & 4 rubygems

Version Path
tmin-0.2.6 lib/tmin/code_factory.rb
tmin-0.2.5 lib/tmin/code_factory.rb
tmin-0.2.4 lib/tmin/code_factory.rb
tmin-0.2.3 lib/tmin/code_factory.rb
tmin-0.2.2 lib/tmin/code_factory.rb
tmin-0.2.1 lib/tmin/code_factory.rb
tmin-0.2.0 lib/tmin/code_factory.rb
tmin-0.1.9 lib/tmin/code_factory.rb
tmin-0.1.8 lib/tmin/code_factory.rb
tmin-0.1.7 lib/tmin/code_factory.rb
tmin-0.1.6 lib/tmin/code_factory.rb
tmin_test-0.0.5 lib/tmin/code_factory.rb
tmin_test-0.0.4 lib/tmin/code_factory.rb
tmin_test-0.0.3 lib/tmin/code_factory.rb
tmin_test-0.0.2 lib/tmin/code_factory.rb
tmin_test-0.0.1 lib/tmin/code_factory.rb
tmin-0.1.5 lib/tmin/code_factory.rb
tmin-0.1.4 lib/tmin/code_factory.rb
tmin-0.1.3 lib/tmin/code_factory.rb
tmin-0.1.2 lib/tmin/code_factory.rb