Class: Xezat::CygclassManager

Inherits:
Object
  • Object
show all
Defined in:
lib/xezat/cygclasses.rb

Instance Method Summary collapse

Constructor Details

#initialize(cygclass_dir = '/usr/share/cygport/cygclass') ⇒ CygclassManager

Returns a new instance of CygclassManager.

Raises:

  • (ArgumentError)


3
4
5
6
7
8
9
10
11
12
13
14
# File 'lib/xezat/cygclasses.rb', line 3

def initialize(cygclass_dir = '/usr/share/cygport/cygclass')
  raise ArgumentError, "#{cygclass_dir} not found" unless Dir.exist?(cygclass_dir)
  @cygclasses = []
  @vcs_cygclasses = []
  Dir.glob(File.join(cygclass_dir, '*.cygclass')) do |filename|
    cygclass = File.basename(filename, '.cygclass')
    @cygclasses << cygclass.intern
    File.foreach(filename) do |line|
      @vcs_cygclasses << cygclass.intern if "readonly -f #{cygclass}_fetch" == line.strip
    end
  end
end

Instance Method Details

#include?(cygclass) ⇒ Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/xezat/cygclasses.rb', line 16

def include?(cygclass)
  @cygclasses.include?(cygclass)
end

#vcsObject



24
25
26
# File 'lib/xezat/cygclasses.rb', line 24

def vcs
  @vcs_cygclasses
end

#vcs?(cygclass) ⇒ Boolean

Returns:

  • (Boolean)


20
21
22
# File 'lib/xezat/cygclasses.rb', line 20

def vcs?(cygclass)
  @vcs_cygclasses.include?(cygclass)
end