Utility class for handling whole stack of Studio Api
# File lib/studio_api/util.rb, line 31 def self.add_options request_str,options,first=true unless options.empty? options.each do |k,v| separator = first ? "?" : "&" first = false request_str << "#{separator}#{CGI.escape k.to_s}=#{CGI.escape v.to_s}" end end request_str end
Set connection for all StudioApi class, so then you can use it without explicit settings It is useful when program use only one studio credentials @example
connection = StudioApi::Connection.new ( "user", "password", "http://localhost/api") StudioApi::Util.configure_studio_connection connection appliances = StudioApi::Appliance.find :all
@param [StudioApi::Connection] connection which is used for communication with studio @return [Array<Class>] return set of classes which is set
# File lib/studio_api/util.rb, line 13 def self.configure_studio_connection connection classes = get_all_usable_class StudioApi classes.each {|c| c.studio_connection = connection} end
joins relative url for unix servers as URI.join require at least one absolute adress. Especially take care about only one slash otherwise studio returns 404. @param (Array<String>) args list of Strings to join @return (String) joined String
# File lib/studio_api/util.rb, line 23 def self.join_relative_url(*args) args.reduce do |base, append| base= base[0..-2] if base.end_with? "/" #remove ending slash in base append = append[1..-1] if append.start_with? "/" #remove leading slash in append "#{base}/#{append}" end end