Class: PSGC::RakeTask

Inherits:
Rake::TaskLib
  • Object
show all
Defined in:
lib/psgc/rake_task.rb

Instance Method Summary collapse

Constructor Details

#initialize(*args) {|_self| ... } ⇒ RakeTask

Returns a new instance of RakeTask.

Yields:

  • (_self)

Yield Parameters:



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/psgc/rake_task.rb', line 27

def initialize(*args)
  yield self if block_given?

  namespace :psgc do

    directory base_dir

    desc 'Fetch PSGC Web pages from www.ncsb.gov.ph'
    task :import => base_dir do
      reg = PSGC::Import::ImportRegions.new
      reg.fetch
    end

    desc 'Compute md5 hashes of files under web/'
    task :hashes => base_dir do
      puts 'CHECKSUMS = {'
      puts Dir.entries(base_dir).map {|f|
        unless f.start_with?('.')
          p = File.join(base_dir, f)
          if File.file?(p) && File.size(p) > 0
            hash = Digest::MD5.file(File.join(base_dir, f)).hexdigest
            "  '#{f}' => '#{hash}'"
          end
        end
      }.compact.join(",\n")
      puts '}'
    end
  end
end

Instance Method Details

#base_dirObject



11
12
13
# File 'lib/psgc/rake_task.rb', line 11

def base_dir
  PSGC::Import::Base.dir
end

#base_dir=(dir) ⇒ Object



15
16
17
# File 'lib/psgc/rake_task.rb', line 15

def base_dir=(dir)
  PSGC::Import::Base.dir = dir
end

#base_uriObject



19
20
21
# File 'lib/psgc/rake_task.rb', line 19

def base_uri
  PSGC::Import::Base.uri
end

#base_uri=(uri) ⇒ Object



23
24
25
# File 'lib/psgc/rake_task.rb', line 23

def base_uri=(uri)
  PSGC::Import::Base.uri = uri
end