Sha256: 68ba9fac2fd146f1b26c6b90e1d4d7b5a86f0370b06c647b65d388b015e60a75

Contents?: true

Size: 773 Bytes

Versions: 52

Compression:

Stored size: 773 Bytes

Contents

module Appfuel
  module Memory
    class Repository < Appfuel::Repository::Base

      class << self
        def container_class_type
          "#{super}.memory"
        end

        def create_mapper(maps = nil)
          Mapper.new(maps)
        end
      end

      attr_reader :items, :sequence
      def initialize
        @items    = {}
        @sequence = 0
      end


      def create(entity)
        id = sequence_id
        entity.id = id
        data = to_storage(entity)
        items[id] = data


        build(name: entity.domain_name, storage: data)
      end

      def build(name:, storage:, **inputs)
        super(type: :memory, name: name, storage: storage,  **inputs)
      end

      def sequence_id
        @sequence + 1
      end
    end
  end
end

Version data entries

52 entries across 52 versions & 1 rubygems

Version Path
appfuel-0.7.0 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.16 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.15 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.14 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.13 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.12 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.11 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.10 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.9 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.8 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.7 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.6 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.5 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.4 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.3 lib/appfuel/storage/memory/repository.rb
appfuel-0.6.1 lib/appfuel/storage/memory/repository.rb
appfuel-0.5.16 lib/appfuel/storage/memory/repository.rb
appfuel-0.5.15 lib/appfuel/storage/memory/repository.rb
appfuel-0.5.14 lib/appfuel/storage/memory/repository.rb
appfuel-0.5.13 lib/appfuel/storage/memory/repository.rb