Module: Twingly::URL::Hasher
- Defined in:
- lib/twingly/url/hasher.rb
Constant Summary collapse
- MD5_DIGEST =
Instantiate digest classes in a thread-safe manner This is important since we don’t know how people will use this gem (if they require it in a thread safe way)
Digest(:MD5)
- SHA256_DIGEST =
Digest(:SHA256)
Class Method Summary collapse
- .autopingdb_hash(url) ⇒ Object
- .blogstream_hash(url) ⇒ Object
- .documentdb_hash(url) ⇒ Object
- .pingloggerdb_hash(url) ⇒ Object
- .taskdb_hash(url) ⇒ Object
Class Method Details
.autopingdb_hash(url) ⇒ Object
28 29 30 |
# File 'lib/twingly/url/hasher.rb', line 28 def autopingdb_hash(url) SHA256_DIGEST.digest(url).unpack("q")[0] end |
.blogstream_hash(url) ⇒ Object
20 21 22 |
# File 'lib/twingly/url/hasher.rb', line 20 def blogstream_hash(url) MD5_DIGEST.hexdigest(url)[0..29].upcase end |
.documentdb_hash(url) ⇒ Object
24 25 26 |
# File 'lib/twingly/url/hasher.rb', line 24 def documentdb_hash(url) SHA256_DIGEST.digest(url).unpack("L!")[0] end |
.pingloggerdb_hash(url) ⇒ Object
32 33 34 |
# File 'lib/twingly/url/hasher.rb', line 32 def pingloggerdb_hash(url) SHA256_DIGEST.digest(url).unpack("Q")[0] end |
.taskdb_hash(url) ⇒ Object
16 17 18 |
# File 'lib/twingly/url/hasher.rb', line 16 def taskdb_hash(url) MD5_DIGEST.hexdigest(url)[0..29].upcase end |