class Timewizard::Versioner::Base

Represents the most basic of versioners. Raises errors if attempted to be used. @abstract @author Richard Harrah @since 0.2.4

Attributes

bumped_build_number[R]

bumped build number from parsed file @return [String] bumped build number

bumped_version_number[R]

bumped version number from parsed file @return [String] bumped version number

file[R]

file to parse @return [String] file that is going to be parsed

new_build_number[RW]

build number to write to parsed file @return [String] build number to write to the parsed file

new_version_number[RW]

version number to write to parsed file @return [String] version number to write to the parsed file

old_build_number[R]

build number held by parsed file @return [String] build number currently contained in the parsed file

old_version_number[R]

version number held by parsed file @return [String] version number currently contained in the parsed file

Public Class Methods

new(path_to_file) click to toggle source

Creates a new Versioner instance. @param [String] path_to_file path to file that contains version information @return [self] new Versioner instance

# File lib/timewizard/versioner.rb, line 48
def initialize(path_to_file)
  if path_to_file.nil?
    raise "passed in file cannot be nil"
  end
  @file = path_to_file
  @old_build_number = nil
  @old_version_number = nil
  @bumped_build_number = nil
  @bumped_version_number = nil
  @new_build_number = nil
  @new_version_number = nil
end

Public Instance Methods

read_build_numbers() click to toggle source

Reads the build numbers from {Timewizard::Versioner::Base.file}. @return [self] mutated versioner instance

# File lib/timewizard/versioner.rb, line 63
def read_build_numbers
  read_file
  find_build_numbers
  self
end
read_version_numbers() click to toggle source

Reads the version numbers from {Timewizard::Versioner::Base.file}. @return [self] mutated versioner instance

# File lib/timewizard/versioner.rb, line 71
def read_version_numbers
  read_file
  find_version_numbers
  self
end
write_build_numbers() click to toggle source

Writes the build numbers to {Timewizard::Versioner::Base.file}. @return [self] mutated versioner instance

# File lib/timewizard/versioner.rb, line 79
def write_build_numbers
  change_build_numbers
  write_file
  self
end
write_version_numbers() click to toggle source

Writes the version numbers to {Timewizard::Versioner::Base.file}. @return [self] mutated versioner instance

# File lib/timewizard/versioner.rb, line 87
def write_version_numbers
  change_version_numbers
  write_file
  self
end

Private Instance Methods

change_build_numbers() click to toggle source
# File lib/timewizard/versioner.rb, line 121
def change_build_numbers
  raise NotImplementedError
end
change_version_numbers() click to toggle source
# File lib/timewizard/versioner.rb, line 125
def change_version_numbers
  raise NotImplementedError
end
find_build_and_version_numbers() click to toggle source
# File lib/timewizard/versioner.rb, line 117
def find_build_and_version_numbers
  raise NotImplementedError
end
find_build_numbers() click to toggle source
# File lib/timewizard/versioner.rb, line 103
def find_build_numbers
  bn = find_build_and_version_numbers
  @old_build_number = bn[0]
  @new_build_number = bn[2]
  [@old_build_number, @new_build_number]
end
find_version_numbers() click to toggle source
# File lib/timewizard/versioner.rb, line 110
def find_version_numbers
  vn = find_build_and_version_numbers
  @old_version_number = vn[1]
  @new_version_number = vn[3]
  [@old_version_number, @new_version_number]
end
read_file() click to toggle source
# File lib/timewizard/versioner.rb, line 95
def read_file
  raise NotImplementedError
end
write_file() click to toggle source
# File lib/timewizard/versioner.rb, line 99
def write_file
  raise NotImplementedError
end