Class: LabClient::Wiki

Inherits:
Klass show all
Includes:
ClassHelpers
Defined in:
lib/labclient/wikis/wiki.rb

Overview

Inspect Helper

Instance Attribute Summary

Attributes inherited from Klass

#client

Attributes inherited from LabStruct

#response, #table

Instance Method Summary collapse

Methods included from ClassHelpers

#has?, #keys, #raw

Methods inherited from Klass

#api_methods, #collect_project_id, #collect_release_id, #collect_repository_id, date_time_attrs, #format_time?, #group_name, #help, #initialize, #klass, #quiet?, #success?, #to_json, #update_self, user_attrs, #valid_group_project_levels, #verbose

Methods included from Docs

#demo, #desc, #doc, docs, #example, #group_name, #help, json, #markdown, #navigation, #option, #result, #subtitle, #title

Methods included from CurlHelper

#curl

Methods included from Logger

#logger, logger, logger_setup

Methods inherited from LabStruct

#[], #[]=, #as_json, #client, #initialize, #key?, #keys, #method_missing, #respond_to_missing?, #slice, #success?, #to_h

Constructor Details

This class inherits a constructor from LabClient::Klass

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class LabClient::LabStruct

Instance Method Details

#deleteObject



25
26
27
28
# File 'lib/labclient/wikis/wiki.rb', line 25

def delete
  project_id = collect_project_id
  client.wikis.delete(project_id, slug)
end

#inspectObject



7
8
9
# File 'lib/labclient/wikis/wiki.rb', line 7

def inspect
  "#<Wiki slug: #{slug}>"
end

#projectObject



15
16
17
18
# File 'lib/labclient/wikis/wiki.rb', line 15

def project
  project_id = collect_project_id
  client.projects.show project_id
end

#update(query) ⇒ Object



20
21
22
23
# File 'lib/labclient/wikis/wiki.rb', line 20

def update(query)
  project_id = collect_project_id
  update_self client.wikis.update(project_id, slug, query)
end

#web_urlObject



11
12
13
# File 'lib/labclient/wikis/wiki.rb', line 11

def web_url
  "#{project.web_url}/-/wikis/#{slug}"
end