Module: Shrine::Plugins::PrettyLocation::InstanceMethods

Defined in:
lib/shrine/plugins/pretty_location.rb

Instance Method Summary collapse

Instance Method Details

#generate_location(io, context) ⇒ Object



15
16
17
# File 'lib/shrine/plugins/pretty_location.rb', line 15

def generate_location(io, context)
  pretty_location(io, context)
end

#pretty_location(io, name: nil, record: nil, version: nil, identifier: nil) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
# File 'lib/shrine/plugins/pretty_location.rb', line 19

def pretty_location(io, name: nil, record: nil, version: nil, identifier: nil, **)
  if record
    namespace    = record_namespace(record)
    identifier ||= record_identifier(record)
  end

  basename = basic_location(io)
  basename = "#{version}-#{basename}" if version

  [*namespace, *identifier, *name, basename].join("/")
end