By H. Wade Minter <minter@lunenburg.org>, Mike Mayo <mike.mayo@rackspace.com>, and Dan Prince <dan.prince@rackspace.com>
See COPYING for license information. Copyright © 2009, Rackspace US, Inc.
To begin reviewing the available methods and examples, peruse the README.rodc file, or begin by looking at documentation for the CloudServers::Connection class.
The CloudServers class is the base class. Not much of note aside from housekeeping happens here. To create a new CloudServers connection, use the CloudServers::Connection.new(:username => USERNAME, :api_key => API_KEY)
Constants that set limits on server creation
# File lib/cloudservers.rb, line 86 def self.paginate(options = {}) path_args = [] path_args.push(URI.encode("limit=#{options[:limit]}")) if options[:limit] path_args.push(URI.encode("offset=#{options[:offset]}")) if options[:offset] path_args.join("&") end
Helper method to recursively symbolize hash keys.
# File lib/cloudservers.rb, line 52 def self.symbolize_keys(obj) case obj when Array obj.inject([]){|res, val| res << case val when Hash, Array symbolize_keys(val) else val end res } when Hash obj.inject({}){|res, (key, val)| nkey = case key when String key.to_sym else key end nval = case val when Hash, Array symbolize_keys(val) else val end res[nkey] = nval res } else obj end end