Sha256: 3ddd097038ee6062d7f6fee81e37abb357937aa61516793b9ae8f915a4a280f1

Contents?: true

Size: 1.2 KB

Versions: 2

Compression:

Stored size: 1.2 KB

Contents

require 'open-uri'
require 'zip'

namespace :abstractor do
  namespace :setup do
    desc 'Load abstractor system tables'
    task :system => :environment do
      Abstractor::Setup.system
    end

    desc "Setup Stanford CoreNLP library in lib/stanford-core-nlp directory"
    task :stanford_core_nlp => :environment do
      directory = "#{Rails.root}/lib/stanford-core-nlp/"
      Dir.mkdir(directory) unless File.exists?(directory)
      puts 'Please be patient...This could take a while.'
      file = "#{Rails.root}/lib/stanford-core-nlp/stanford-core-nlp-minimal.zip"
      open(file, 'wb') do |fo|
        fo.print open('http://louismullie.com/treat/stanford-core-nlp-minimal.zip').read
      end

      file = "#{Rails.root}/lib/stanford-core-nlp/stanford-core-nlp-minimal.zip"
      destination = "#{Rails.root}/lib/stanford-core-nlp/"
      puts 'Unzipping...'
      unzip_file(file, destination)
    end
  end

  private
    def unzip_file (file, destination)
      Zip::File.open(file) { |zip_file|
       zip_file.each { |f|
         f_path=File.join(destination, f.name)
         FileUtils.mkdir_p(File.dirname(f_path))
         zip_file.extract(f, f_path) unless File.exist?(f_path)
       }
      }
    end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
abstractor-1.0.11 lib/tasks/abstractor_tasks.rake
abstractor-1.0.10 lib/tasks/abstractor_tasks.rake