| Class | RDig::Document |
| In: |
lib/rdig/documents.rb
|
| Parent: | Object |
Document base class
| content | [R] | |
| content_type | [R] | |
| uri | [R] |
# File lib/rdig/documents.rb, line 12
12: def self.create(url, referrer_uri = nil)
13: # a referrer is a clear enough hint to create an HttpDocument
14: if referrer_uri && referrer_uri.scheme =~ /^https?$/i
15: return HttpDocument.new(:url => url, :referrer => referrer_uri)
16: end
17:
18: case url
19: when /^https?:\/\//i
20: HttpDocument.new(:url => url, :referrer => referrer_uri) if referrer_uri.nil?
21: when /^file:\/\//i
22: # files don't have referrers - the check for nil prevents us from being
23: # tricked into indexing local files by file:// links in the web site
24: # we index.
25: FileDocument.new(:url => url) if referrer_uri.nil?
26: end
27: end
url: url of this document, may be relative to the referring doc or host. referrer: uri of the document we retrieved this link from
# File lib/rdig/documents.rb, line 31
31: def initialize(args)
32: begin
33: @uri = URI.parse(args[:url])
34: rescue URI::InvalidURIError
35: raise "Cannot create document using invalid URL: #{args[:url]}"
36: end
37: end