Class: Gapic::Presenters::ResourcePresenter

Inherits:
Object
  • Object
show all
Defined in:
lib/gapic/presenters/resource_presenter.rb

Overview

A presenter for proto resources.

Defined Under Namespace

Classes: PatternPresenter

Instance Method Summary collapse

Constructor Details

#initialize(resource) ⇒ ResourcePresenter

Returns a new instance of ResourcePresenter.

Parameters:



27
28
29
30
31
32
33
34
# File 'lib/gapic/presenters/resource_presenter.rb', line 27

def initialize resource
  @resource = resource

  @patterns = resource.pattern.map { |pattern| PatternPresenter.new pattern }

  # Keep only patterns that can be used to create path helpers
  @patterns.filter!(&:useful_for_helpers?)
end

Instance Method Details

#dupObject



36
37
38
# File 'lib/gapic/presenters/resource_presenter.rb', line 36

def dup
  ResourcePresenter.new @resource
end

#nameObject



40
41
42
# File 'lib/gapic/presenters/resource_presenter.rb', line 40

def name
  @resource.type.split("/").delete_if(&:empty?).last
end

#path_helperObject



52
53
54
# File 'lib/gapic/presenters/resource_presenter.rb', line 52

def path_helper
  "#{ActiveSupport::Inflector.underscore name}_path"
end

#patternsObject



48
49
50
# File 'lib/gapic/presenters/resource_presenter.rb', line 48

def patterns
  @patterns
end

#typeObject



44
45
46
# File 'lib/gapic/presenters/resource_presenter.rb', line 44

def type
  @resource.type
end