Class: SimpleMapnik::Api

Inherits:
Object
  • Object
show all
Defined in:
lib/simple_mapnik/api.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(output_dir = './') ⇒ Api

Returns a new instance of Api.



9
10
11
# File 'lib/simple_mapnik/api.rb', line 9

def initialize(output_dir = './')
  @output_dir = output_dir
end

Instance Attribute Details

#libObject



25
26
27
# File 'lib/simple_mapnik/api.rb', line 25

def lib
  @lib ||= "libmapnik_c.#{::FFI::Platform::LIBSUFFIX}"
end

#output_dirObject

Returns the value of attribute output_dir.



6
7
8
# File 'lib/simple_mapnik/api.rb', line 6

def output_dir
  @output_dir
end

#src_directory_nameObject



33
34
35
# File 'lib/simple_mapnik/api.rb', line 33

def src_directory_name
  @src_directory_name ||= 'mapnik-c-api-0.0.2'
end

#urlObject



29
30
31
# File 'lib/simple_mapnik/api.rb', line 29

def url
  @url ||= 'https://github.com/geoconcerns/mapnik-c-api/archive/v0.0.2.zip'
end

Instance Method Details

#check_and_installObject



13
14
15
16
# File 'lib/simple_mapnik/api.rb', line 13

def check_and_install
  lib_exist = File.exist? File.expand_path(File.join(output_dir, lib))
  install unless lib_exist
end

#installObject



18
19
20
21
22
23
# File 'lib/simple_mapnik/api.rb', line 18

def install
  download
  unzip
  build
  clean
end