class SimpleNavigation::ConfigFile

Internal: Encapsulates the config file naming knowledge.

Attributes

prefix[R]

Public Class Methods

new(context) click to toggle source

Internal: Initializes a ConfigFile.

context - The navigation context for this ConfigFile.

# File lib/simple_navigation/config_file.rb, line 9
def initialize(context)
  @prefix = prefix_for_context(context)
end

Public Instance Methods

name() click to toggle source

Internal: Returns the name of the configuration file on disk.

Based on the the initialization context the outcome may differ.

Examples

ConfigFile.new.name           # => "navigation.rb"
ConfigFile.new(:default).name # => "navigation.rb"
ConfigFile.new(:other).name   # => "other_navigation.rb"

Returns a String representing the name of the configuration file on disk.

# File lib/simple_navigation/config_file.rb, line 24
def name
  @name ||= "#{prefix}navigation.rb"
end

Private Instance Methods

prefix_for_context(context) click to toggle source
# File lib/simple_navigation/config_file.rb, line 32
def prefix_for_context(context)
  context == :default ? '' : "#{context.to_s.underscore}_"
end