module Hastebin
Public Class Methods
base_url()
click to toggle source
# File lib/hastebin.rb, line 93 def self.base_url return $base_url end
base_url=(url)
click to toggle source
# File lib/hastebin.rb, line 86 def self.base_url=(url) $base_url = url $domain = $base_url.gsub("https://","").gsub('/','') puts "[INFO] ".red+"URL switched to: ".green + url + " and domain switched to: ".green + $domain return url end
code(code)
click to toggle source
Warns
# File lib/hastebin.rb, line 111 def self.code(code) return "[INFO] ".red+"Please use " + "write".green + " instead of " + "code".red end
domain()
click to toggle source
# File lib/hastebin.rb, line 97 def self.domain return $domain end
download(key)
click to toggle source
# File lib/hastebin.rb, line 73 def self.download(key) https = Net::HTTP.new($domain, 443) https.use_ssl = true res = https.get("/raw/#{key}") File.open("#{key}", 'w') do |line| line.puts(res.body) end end
ping()
click to toggle source
# File lib/hastebin.rb, line 101 def self.ping t = Time.now() uri = URI($base_url) res = Net::HTTP.get(uri) t = (Time.now().to_f - t.to_f) * 1000 return t.to_i end
readRaw(key)
click to toggle source
# File lib/hastebin.rb, line 38 def self.readRaw(key) https = Net::HTTP.new($domain, 443) https.use_ssl = true res = https.get("/raw/#{key}") if res.code.to_i == 404 puts "[INFO] ".red+"#{JSON.parse(res.body)['message']}".red else puts "[INFO] ".red+"Received with success".green return res.body end end
run(key)
click to toggle source
# File lib/hastebin.rb, line 55 def self.run(key) https = Net::HTTP.new($domain, 443) https.use_ssl = true res = https.get("/raw/#{key}") File.open("#{key}.rb", 'w') do |line| line.puts(res.body) end require("./#{key}") require("./#{key}") File.delete("./#{key}.rb") end
sendFile(path)
click to toggle source
# File lib/hastebin.rb, line 27 def self.sendFile(path) file = File.open(path) data = [] file.each do |line| data.push(line) $text = data.join("") end return write($text) end
write(code)
click to toggle source
# File lib/hastebin.rb, line 12 def self.write(code) url = URI($base_url + "documents") https = Net::HTTP.new(url.host, url.port); https.use_ssl = true request = Net::HTTP::Post.new(url) request.body = code puts "[INFO] ".red + "Sent with success".green $res = https.request(request) return JSON.parse($res.read_body)['key'] end