Class: LibFinder::LibWorker
- Inherits:
-
Object
- Object
- LibFinder::LibWorker
- Includes:
- HTTParty
- Defined in:
- lib/libFinder.rb
Class Method Summary collapse
- .get_dependencies(gems) ⇒ Object
- .get_os ⇒ Object
- .is_rails ⇒ Object
- .parse_gem_file ⇒ Object
- .sniff ⇒ Object
Class Method Details
.get_dependencies(gems) ⇒ Object
53 54 55 56 57 58 59 60 61 |
# File 'lib/libFinder.rb', line 53 def self.get_dependencies(gems) HTTParty.post("http://localhost:3000/find_dependencies", :body => {gems:gems, os_id:self.get_os }.to_json, :headers => { 'Content-Type' => 'application/json' } ) end |
.get_os ⇒ Object
63 64 65 66 67 68 69 70 71 |
# File 'lib/libFinder.rb', line 63 def self.get_os if (/linux/ =~ RbConfig::CONFIG["host_os"]) != nil return 1 #this is the id of the os that sits in the database end if (/darwin/ =~ RbConfig::CONFIG["host_os"]) != nil return 2 #this is the id of the os that sits in the database end end |
.is_rails ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/libFinder.rb', line 15 def self.is_rails base_path = Dir.pwd controllers = File.exist?(base_path+"/app/controllers") #check if the file has a controllers folder or not models = File.exist?(base_path+"/app/models") #check if the file has a models folder or not if controllers && models #if both are true then it is a rails app return true else puts "this is not a rails application file please change directory to a rails application file" return false end end |
.parse_gem_file ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/libFinder.rb', line 30 def self.parse_gem_file gems = [] File.readlines(Dir.pwd+"/Gemfile").each do |line| line_data = line.split if line_data[0] == "gem" if line_data.length >3 gem_info = {name: line_data[1].gsub(/[', ]/, '') ,version: line_data[3].gsub(/[']/,'') } gems.push(gem_info) elsif line_data.length ==3 gem_info = {name: line_data[1].gsub(/[', ]/, '') ,version: line_data[2].gsub(/[']/,'') } gems.push(gem_info) else gem_info = {name: line_data[1].gsub(/[' ]/, '')} gems.push(gem_info) end end end self.get_dependencies(gems) end |
.sniff ⇒ Object
8 9 10 11 12 13 |
# File 'lib/libFinder.rb', line 8 def self.sniff # a function to start the gem working used sniff cause i saw my dog doing so when searching for something :D if(self.is_rails) self.parse_gem_file end end |