Skip to content
Snippets Groups Projects
Commit b73b1679 authored by Douwe Maan's avatar Douwe Maan
Browse files

Small code tweaks

parent 0b3ff9c8
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -60,6 +60,9 @@ class Blob < SimpleDelegator
size && truncated?
end
 
# Returns the size of the file that this blob represents. If this blob is an
# LFS pointer, this is the size of the file stored in LFS. Otherwise, this is
# the size of the blob itself.
def raw_size
if valid_lfs_pointer?
lfs_size
Loading
Loading
@@ -68,6 +71,10 @@ class Blob < SimpleDelegator
end
end
 
# Returns whether the file that this blob represents is binary. If this blob is
# an LFS pointer, we assume the file stored in LFS is binary, unless a
# text-based rich blob viewer matched on the file's extension. Otherwise, this
# depends on the type of the blob itself.
def raw_binary?
if valid_lfs_pointer?
if rich_viewer
Loading
Loading
@@ -107,7 +114,7 @@ class Blob < SimpleDelegator
def rich_viewer
return @rich_viewer if defined?(@rich_viewer)
 
@rich_viewer ||= rich_viewer_class&.new(self)
@rich_viewer = rich_viewer_class&.new(self)
end
 
def rendered_as_text?(ignore_errors: true)
Loading
Loading
@@ -135,19 +142,18 @@ class Blob < SimpleDelegator
end
end
 
def rich_viewers_classes
if valid_lfs_pointer?
RICH_VIEWERS
elsif binary?
RICH_VIEWERS.select(&:binary?)
else # text
RICH_VIEWERS.select(&:text?)
end
end
def rich_viewer_class
return if invalid_lfs_pointer? || empty?
 
rich_viewers_classes.find { |viewer_class| viewer_class.can_render?(self) }
classes =
if valid_lfs_pointer?
RICH_VIEWERS
elsif binary?
RICH_VIEWERS.select(&:binary?)
else # text
RICH_VIEWERS.select(&:text?)
end
classes.find { |viewer_class| viewer_class.can_render?(self) }
end
end
Loading
Loading
@@ -109,10 +109,6 @@ module Gitlab
@binary.nil? ? super : @binary == true
end
 
def empty?
!data || data == ''
end
def data
encode! @data
end
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment