Class: Request

Inherits:
Object
  • Object
show all
Defined in:
lib/collamine/request.rb

Overview

Makes the request to CollaMine servers

Constant Summary collapse

COLLAMINE_DOWNLOAD_URL =
'http://172.31.22.135:9001/download/html/'
COLLAMINE_UPLOAD_URL =
'http://172.31.22.135:9001/upload/html/multipart/'

Class Method Summary collapse

Class Method Details

.try_collamine(url) ⇒ Object

Try downloading the content from CollaMine servers



12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/collamine/request.rb', line 12

def self.try_collamine(url)
  uri = URI.parse(COLLAMINE_DOWNLOAD_URL+CGI::escape(url.to_s))
  Net::HTTP.start(uri.host, uri.port) do |http|
    response = http.get(uri)
    case response
    when Net::HTTPSuccess then
      return nil if response.body == 'not found' rescue nil
      return response
    else nil
    end
  end
end

.upload_to_collamine(url, content, filename, crawltime) ⇒ Object

Upload the content to Collamine servers



27
28
29
30
31
32
33
34
35
36
# File 'lib/collamine/request.rb', line 27

def self.upload_to_collamine(url, content, filename, crawltime)
  post_request = Net::HTTP::Post::Multipart.new COLLAMINE_UPLOAD_URL,
                                                'domain'      => Domainatrix.parse(url).domain,
                                                'url'         => url,
                                                'crawltime'   => crawltime,
                                                'contributor' => 'belson',
                                                'document'    => UploadIO.new(StringIO.new(content.encode('UTF-8', 'ISO-8859-15')), 'text/html', filename)                                 
  response = Net::HTTP.start(URI.parse(COLLAMINE_UPLOAD_URL).host, URI.parse(COLLAMINE_UPLOAD_URL).port) { |http| http.request(post_request) }
  puts response.body
end