Class: Softlayer::Generator::Downloader

Inherits:
Object
  • Object
show all
Defined in:
lib/softlayer/generator/downloader.rb

Class Method Summary collapse

Class Method Details

.download_metadataObject



36
37
38
39
40
41
# File 'lib/softlayer/generator/downloader.rb', line 36

def self.
  unless File.exist?("./data/metadata.json")
     = open("https://api.softlayer.com/metadata/v3.1").read
    File.write("./data/metadata.json", )
  end
end

.download_servicesObject



13
14
15
16
17
18
# File 'lib/softlayer/generator/downloader.rb', line 13

def self.download_services
  return File.read('./data/.services_cache') if File.exist?('./data/.services_cache')
  page_content = open('http://sldn.softlayer.com/reference/services/SoftLayer_Brand').read
  File.write('./data/.services_cache', page_content)
  page_content
end

.download_wsdlObject



20
21
22
23
24
25
26
27
# File 'lib/softlayer/generator/downloader.rb', line 20

def self.download_wsdl
  get_services.each do |service|
    unless File.exist?("./data/#{service}.wsdl")
      wsdl_content = open("https://api.softlayer.com/soap/v3.1/SoftLayer_#{service}?wsdl").read
      File.write("./data/#{service}.wsdl", wsdl_content)
    end
  end
end

.download_xsdObject



29
30
31
32
33
34
# File 'lib/softlayer/generator/downloader.rb', line 29

def self.download_xsd
  unless File.exist?("./data/types.xsd")
    xsd_content = open("https://api.softlayer.com/soap/v3.1/SoftLayer_Account?xsd").read
    File.write("./data/types.xsd", xsd_content)
  end
end

.get_servicesObject



4
5
6
7
8
9
10
11
# File 'lib/softlayer/generator/downloader.rb', line 4

def self.get_services
  html_doc = Nokogiri::HTML(self.download_services)
  services = []
  html_doc.css("#block-views-new_Services-block_1 > div > div > div.view-content > div.views-row > div > span > a").each do |service|
    services << service.content
  end
  services
end