gitlab-org--gitlab-foss/lib/gitlab/git/wiki_page.rb

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

47 lines
1.2 KiB
Ruby
Raw Normal View History

# frozen_string_literal: true
2017-10-03 16:58:33 +00:00
module Gitlab
module Git
class WikiPage
attr_reader :url_path, :title, :format, :path, :version, :raw_data, :name, :historical, :formatted_data
2017-10-03 16:58:33 +00:00
class << self
# Abstracts away Gitlab::GitalyClient::WikiPage
def from_gitaly_wiki_page(gitaly_page, version)
new(
url_path: gitaly_page.url_path,
title: gitaly_page.title,
format: gitaly_page.format,
path: gitaly_page.path,
raw_data: gitaly_page.raw_data,
name: gitaly_page.name,
historical: gitaly_page.historical?,
version: version
)
end
end
2017-10-03 16:58:33 +00:00
def initialize(hash)
@url_path = hash[:url_path]
@title = hash[:title]
@format = hash[:format]
@path = hash[:path]
@raw_data = hash[:raw_data]
@name = hash[:name]
@historical = hash[:historical]
@version = hash[:version]
2017-10-03 16:58:33 +00:00
end
def historical?
@historical
end
def text_data
return @text_data if defined?(@text_data)
@text_data = @raw_data && Gitlab::EncodingHelper.encode!(@raw_data.dup)
end
end
end
end