Module: BasicPresenter::Concern

Defined in:
lib/basic_presenter/concern.rb

Instance Method Summary collapse

Instance Method Details

#default_presenterObject



16
17
18
# File 'lib/basic_presenter/concern.rb', line 16

def default_presenter
  "#{self.class}Presenter".constantize
end

#presenterObject



5
6
7
8
9
10
11
12
13
14
# File 'lib/basic_presenter/concern.rb', line 5

def presenter
  if @presenter_class.nil?
    @old_presenter_class = self.presenter_class = presenter_class
    return @presenter = presenter_class.new(self)
  end
  return @presenter if presenter_class_not_changed?
  @presenter = presenter_class.new(self)
  @old_presenter_class = @presenter_class
  @presenter
end

#presenter_classObject



20
21
22
# File 'lib/basic_presenter/concern.rb', line 20

def presenter_class
  @presenter_class || default_presenter
end

#presenter_class=(vd) ⇒ Object



24
25
26
27
# File 'lib/basic_presenter/concern.rb', line 24

def presenter_class=(vd)
  @old_presenter_class = @presenter_class
  @presenter_class = vd
end

#presenter_class_changed?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'lib/basic_presenter/concern.rb', line 29

def presenter_class_changed?
  !(presenter_class_not_changed?)
end

#presenter_class_not_changed?Boolean

Returns:

  • (Boolean)


33
34
35
# File 'lib/basic_presenter/concern.rb', line 33

def presenter_class_not_changed?
  (@old_presenter_class == @presenter_class)
end