class Deposit

Attributes

cache_pieces[RW]
repository[R]

Public Class Methods

instance() click to toggle source
# File lib/vendra/domain/models/entities/deposit/deposit.rb, line 3
def instance
  @instance ||= (find || create)
end
new(repository) click to toggle source
# File lib/vendra/domain/models/entities/deposit/deposit.rb, line 26
def initialize(repository)
  @repository = repository
end

Private Class Methods

create() click to toggle source
# File lib/vendra/domain/models/entities/deposit/deposit.rb, line 13
def create
  deposit = new(repository)
  deposit.cache_pieces = []
  repository.insert(deposit)
end
find() click to toggle source
# File lib/vendra/domain/models/entities/deposit/deposit.rb, line 9
def find
  repository.find
end
repository() click to toggle source
# File lib/vendra/domain/models/entities/deposit/deposit.rb, line 19
def repository
  @repository ||= Vendra.repositories[:deposit]
end

Public Instance Methods

insert(value) click to toggle source
# File lib/vendra/domain/models/entities/deposit/deposit.rb, line 30
def insert(value)
  cache_piece = CachePiece.new(value)
  cache_pieces << cache_piece
  update
end
update() click to toggle source
# File lib/vendra/domain/models/entities/deposit/deposit.rb, line 36
def update
  repository.update(self)
end